#include <AVStreams_i.h>
Public Member Functions | |
| TAO_VDev (void) | |
| Default Constructor. | |
| virtual CORBA::Boolean | set_peer (AVStreams::StreamCtrl_ptr the_ctrl, AVStreams::VDev_ptr the_peer_dev, AVStreams::streamQoS &the_qos, const AVStreams::flowSpec &the_spec) |
| Called to tell the vdev who the streamctrl, peer vdev is. | |
| virtual CORBA::Boolean | set_Mcast_peer (AVStreams::StreamCtrl_ptr the_ctrl, AVStreams::MCastConfigIf_ptr a_mcastconfigif, AVStreams::streamQoS &the_qos, const AVStreams::flowSpec &the_spec) |
| Used to set the streamctrl and multicast device. | |
| virtual void | configure (const CosPropertyService::Property &the_config_mesg) |
| Called by the peer VDev to configure the device (catch all). | |
| virtual void | set_format (const char *flowName, const char *format_name) |
| Used to set a format on a flowname. | |
| virtual void | set_dev_params (const char *flowName, const CosPropertyService::Properties &new_params) |
| Used to set device parameters. | |
| virtual CORBA::Boolean | modify_QoS (AVStreams::streamQoS &the_qos, const AVStreams::flowSpec &the_spec) |
| Called to change QoS of the device. | |
Protected Member Functions | |
| virtual | ~TAO_VDev (void) |
| virtual CORBA::Boolean | set_media_ctrl (CORBA::Object_ptr media_ctrl) |
| hook called after set_peer is done to set the media ctrl of the peer vdev. | |
Protected Attributes | |
| AVStreams::StreamCtrl_var | streamctrl_ |
| My stream controller. | |
| AVStreams::VDev_var | peer_ |
| My peer. | |
| AVStreams::MCastConfigIf_var | mcast_peer_ |
| The multicast VDev peer. | |
Definition at line 640 of file AVStreams_i.h.
|
|
Default Constructor.
Definition at line 2719 of file AVStreams_i.cpp. References ACE_DEBUG, LM_DEBUG, and TAO_debug_level.
02720 {
02721 if (TAO_debug_level > 0) ACE_DEBUG ((LM_DEBUG,
02722 "(%P|%t) TAO_VDev::TAO_VDev: created\n"));
02723 }
|
|
|
Destructor for a servant should be protected or private. Use _remove_ref() to delete this servant. Definition at line 2887 of file AVStreams_i.cpp.
02888 {
02889 }
|
|
|
Called by the peer VDev to configure the device (catch all).
Definition at line 2793 of file AVStreams_i.cpp.
02794 {
02795 }
|
|
||||||||||||
|
Called to change QoS of the device.
Definition at line 2847 of file AVStreams_i.cpp. References ACE_DEBUG, TAO_FlowSpec_Entry::direction(), AVStreams::flowSpec, LM_DEBUG, TAO_Forward_FlowSpec_Entry::parse(), AVStreams::streamQoS, and TAO_debug_level.
02849 {
02850 if (TAO_debug_level > 0)
02851 ACE_DEBUG ((LM_DEBUG,
02852 "TAO_VDev::modify_QoS\n"));
02853
02854 if (flowspec.length () != 0)
02855 {
02856 TAO_Forward_FlowSpec_Entry entry;
02857 entry.parse (flowspec [0]);
02858 int direction = entry.direction ();
02859 if (direction == 0)
02860 {
02861 AVStreams::StreamEndPoint_A_ptr sep_a;
02862
02863 CORBA::Any_ptr streamendpoint_a_any =
02864 this->get_property_value ("Related_StreamEndpoint");
02865
02866 *streamendpoint_a_any >>= sep_a;
02867 if (sep_a != 0)
02868 {
02869 sep_a->modify_QoS (the_qos, flowspec);
02870 }
02871 else ACE_DEBUG ((LM_DEBUG,
02872 "Stream EndPoint Not Found\n"));
02873 }
02874 else
02875 {
02876 AVStreams::StreamEndPoint_B_ptr sep_b;
02877
02878 CORBA::Any_ptr streamendpoint_b_any =
02879 this->get_property_value ("Related_StreamEndpoint");
02880 *streamendpoint_b_any >>= sep_b;
02881 sep_b->modify_QoS (the_qos, flowspec);
02882 }
02883 }
02884 return 1;
02885 }
|
|
||||||||||||
|
Used to set device parameters.
Definition at line 2823 of file AVStreams_i.cpp. References ACE_ERROR, LM_ERROR, and ACE_OS::sprintf().
02825 {
02826 try
02827 {
02828 if (flowName == 0)
02829 ACE_ERROR ((LM_ERROR, "TAO_VDev::set_dev_params:flowName is null\n"));
02830 char devParams_property[BUFSIZ];
02831 ACE_OS::sprintf (devParams_property, "%s_devParams", flowName);
02832 CORBA::Any devParams;
02833 devParams <<= new_params;
02834 this->define_property (devParams_property,
02835 devParams);
02836 }
02837 catch (const CORBA::Exception& ex)
02838 {
02839 ex._tao_print_exception ("TAO_VDev::set_dev_params");
02840 return;
02841 }
02842 return;
02843 }
|
|
||||||||||||
|
Used to set a format on a flowname.
Definition at line 2799 of file AVStreams_i.cpp. References ACE_ERROR, LM_ERROR, and ACE_OS::sprintf().
02801 {
02802 try
02803 {
02804 if (flowName == 0 || format_name == 0)
02805 ACE_ERROR ((LM_ERROR, "TAO_VDev::set_format: flowName or format_name is null\n"));
02806 char format_property [BUFSIZ];
02807 ACE_OS::sprintf (format_property, "%s_currFormat", flowName);
02808 CORBA::Any format;
02809 format <<= format_name;
02810 this->define_property (format_property,
02811 format);
02812 }
02813 catch (const CORBA::Exception& ex)
02814 {
02815 ex._tao_print_exception ("TAO_VDev::set_format");
02816 return;
02817 }
02818 return;
02819 }
|
|
||||||||||||||||||||
|
Used to set the streamctrl and multicast device.
Definition at line 2782 of file AVStreams_i.cpp. References AVStreams::flowSpec, mcast_peer_, and AVStreams::streamQoS.
02786 {
02787 this->mcast_peer_ = AVStreams::MCastConfigIf::_duplicate (mcast_peer);
02788 return 1;
02789 }
|
|
|
hook called after set_peer is done to set the media ctrl of the peer vdev.
Definition at line 2770 of file AVStreams_i.cpp. References CORBA::release(). Referenced by set_peer().
02772 {
02773 // since the media ctrl is not stored or used, delete it.
02774
02775 CORBA::release( media_ctrl);
02776
02777 return 1;
02778 }
|
|
||||||||||||||||||||
|
Called to tell the vdev who the streamctrl, peer vdev is.
Definition at line 2728 of file AVStreams_i.cpp. References ACE_DEBUG, AVStreams::flowSpec, LM_DEBUG, set_media_ctrl(), AVStreams::streamQoS, and TAO_debug_level.
02732 {
02733 ACE_UNUSED_ARG (the_qos);
02734 ACE_UNUSED_ARG (the_spec);
02735
02736 CORBA::Boolean result = 0;
02737 try
02738 {
02739 if (TAO_debug_level > 0)
02740 ACE_DEBUG ((LM_DEBUG, "(%P|%t) TAO_VDev::set_peer: called\n"));
02741
02742
02743 CORBA::Any anyval;
02744 anyval <<= the_peer_dev;
02745 this->define_property ("Related_VDev",
02746 anyval);
02747
02748
02749 this->streamctrl_ = AVStreams::StreamCtrl::_duplicate (the_ctrl);
02750 this->peer_ = AVStreams::VDev::_duplicate (the_peer_dev);
02751
02752 CORBA::Any_var anyptr;
02753 anyptr = this->peer_->get_property_value ("Related_MediaCtrl");
02754
02755 CORBA::Object_ptr media_ctrl_obj = 0;
02756
02757 anyptr.in () >>= CORBA::Any::to_object(media_ctrl_obj);
02758
02759 result = this->set_media_ctrl (media_ctrl_obj);
02760 }
02761 catch (const CORBA::Exception& ex)
02762 {
02763 ex._tao_print_exception ("TAO_VDev::set_peer");
02764 return 0;
02765 }
02766 return result;
02767 }
|
|
|
The multicast VDev peer.
Definition at line 691 of file AVStreams_i.h. Referenced by set_Mcast_peer(). |
|
|
My peer.
Definition at line 688 of file AVStreams_i.h. |
|
|
My stream controller.
Definition at line 685 of file AVStreams_i.h. |
1.3.6