#include <AVStreams_i.h>
Collaboration diagram for TAO_MCastConfigIf:

Public Types | |
| enum | Peer_Interface { VDEV = 0, FLOWENDPOINT = 1 } |
Public Member Functions | |
| TAO_MCastConfigIf (void) | |
| Default constructor. | |
| ~TAO_MCastConfigIf (void) | |
| Dtor. | |
| virtual CORBA::Boolean | set_peer (CORBA::Object_ptr peer, AVStreams::streamQoS &the_qos, const AVStreams::flowSpec &the_spec) |
| virtual void | configure (const CosPropertyService::Property &a_configuration) |
| virtual void | set_initial_configuration (const CosPropertyService::Properties &initial) |
| virtual void | set_format (const char *flowName, const char *format_name) |
| virtual void | set_dev_params (const char *flowName, const CosPropertyService::Properties &new_params) |
Protected Member Functions | |
| int | in_flowSpec (const AVStreams::flowSpec &flow_spec, const char *flow_name) |
| checks whether the flowname is in the flow_spec. | |
Protected Attributes | |
| ACE_SOCK_Dgram_Mcast | sock_mcast_ |
| Multicast socket. | |
| CosPropertyService::Properties | initial_configuration_ |
| Initial configuration to be distributed to all B parties when they join. | |
| ACE_DLList< Peer_Info > | peer_list_ |
| ACE_DLList_Iterator< Peer_Info > | peer_list_iterator_ |
|
|
Definition at line 289 of file AVStreams_i.h.
00289 {VDEV = 0, FLOWENDPOINT=1};
|
|
|
Default constructor.
Definition at line 1265 of file AVStreams_i.cpp.
01266 :peer_list_iterator_ (peer_list_) 01267 { 01268 } |
|
|
Dtor.
Definition at line 1270 of file AVStreams_i.cpp.
01271 {
01272 //no-op
01273 }
|
|
|
Definition at line 1302 of file AVStreams_i.cpp. References ACE_DLList_Iterator< Peer_Info >::advance(), ACE_Double_Linked_List_Iterator< T >::first(), ACE_DLList_Iterator< Peer_Info >::next(), TAO_MCastConfigIf::Peer_Info::peer_, and peer_list_iterator_.
01303 {
01304 Peer_Info *info;
01305 try
01306 {
01307 for (this->peer_list_iterator_.first ();
01308 (info = this->peer_list_iterator_.next ()) != 0;
01309 this->peer_list_iterator_.advance ())
01310 {
01311 info->peer_->configure (a_configuration);
01312 }
01313 }
01314 catch (const CORBA::Exception& ex)
01315 {
01316 ex._tao_print_exception (
01317 "TAO_MCastConfigIf::set_configure");
01318 return;
01319 }
01320 }
|
|
||||||||||||
|
checks whether the flowname is in the flow_spec.
Definition at line 1382 of file AVStreams_i.cpp. References AVStreams::flowSpec, ACE_OS::strlen(), and ACE_OS::strncmp(). Referenced by set_dev_params(), and set_format().
01383 {
01384 size_t len = ACE_OS::strlen (flow_name);
01385 for (CORBA::ULong i = 0; i < flow_spec.length (); i++)
01386 if (ACE_OS::strncmp (flow_spec[i], flow_name, len) == 0)
01387 {
01388 return 1;
01389 }
01390 return 0;
01391 }
|
|
||||||||||||
|
Definition at line 1356 of file AVStreams_i.cpp. References ACE_DLList_Iterator< Peer_Info >::advance(), ACE_Double_Linked_List_Iterator< T >::first(), TAO_MCastConfigIf::Peer_Info::flow_spec_, in_flowSpec(), ACE_DLList_Iterator< Peer_Info >::next(), TAO_MCastConfigIf::Peer_Info::peer_, and peer_list_iterator_.
01358 {
01359 Peer_Info *info;
01360 try
01361 {
01362
01363 for (this->peer_list_iterator_.first ();
01364 (info = this->peer_list_iterator_.next ()) != 0;
01365 this->peer_list_iterator_.advance ())
01366 {
01367 if (this->in_flowSpec (info->flow_spec_, flowName))
01368 {
01369 info->peer_->set_dev_params (flowName, new_params);
01370 }
01371 }
01372 }
01373 catch (const CORBA::Exception& ex)
01374 {
01375 ex._tao_print_exception (
01376 "TAO_MCastConfigIf::set_dev_params");
01377 return;
01378 }
01379 }
|
|
||||||||||||
|
Definition at line 1331 of file AVStreams_i.cpp. References ACE_DLList_Iterator< Peer_Info >::advance(), ACE_Double_Linked_List_Iterator< T >::first(), TAO_MCastConfigIf::Peer_Info::flow_spec_, in_flowSpec(), ACE_DLList_Iterator< Peer_Info >::next(), TAO_MCastConfigIf::Peer_Info::peer_, and peer_list_iterator_.
01333 {
01334 Peer_Info *info;
01335 try
01336 {
01337 for (this->peer_list_iterator_.first ();
01338 (info = this->peer_list_iterator_.next ()) != 0;
01339 this->peer_list_iterator_.advance ())
01340 {
01341 if (this->in_flowSpec (info->flow_spec_, flowName))
01342 {
01343 info->peer_->set_format (flowName, format_name);
01344 }
01345 }
01346 }
01347 catch (const CORBA::Exception& ex)
01348 {
01349 ex._tao_print_exception ("TAO_MCastConfigIf::set_format");
01350 return;
01351 }
01352 }
|
|
|
Definition at line 1324 of file AVStreams_i.cpp. References initial_configuration_.
01325 {
01326 this->initial_configuration_ = initial;
01327 }
|
|
||||||||||||||||
|
Definition at line 1277 of file AVStreams_i.cpp. References ACE_NEW_RETURN, TAO_MCastConfigIf::Peer_Info::flow_spec_, AVStreams::flowSpec, ACE_DLList< Peer_Info >::insert_tail(), TAO_MCastConfigIf::Peer_Info::peer_, peer_list_, TAO_MCastConfigIf::Peer_Info::qos_, and AVStreams::streamQoS. Referenced by TAO_StreamCtrl::bind_devs().
01280 {
01281 try
01282 {
01283 Peer_Info *info;
01284 ACE_NEW_RETURN (info,
01285 Peer_Info,
01286 0);
01287 info->peer_ = AVStreams::VDev::_narrow (peer);
01288 info->qos_ = qos;
01289 info->flow_spec_ = flow_spec;
01290 this->peer_list_.insert_tail (info);
01291 }
01292 catch (const CORBA::Exception& ex)
01293 {
01294 ex._tao_print_exception ("TAO_MCastConfigIf::set_peer");
01295 return 0;
01296 }
01297 return 1;
01298 }
|
|
|
Initial configuration to be distributed to all B parties when they join.
Definition at line 328 of file AVStreams_i.h. Referenced by set_initial_configuration(). |
|
|
Definition at line 330 of file AVStreams_i.h. Referenced by set_peer(). |
|
|
Definition at line 331 of file AVStreams_i.h. Referenced by configure(), set_dev_params(), and set_format(). |
|
|
Multicast socket.
Definition at line 325 of file AVStreams_i.h. |
1.3.6