TAO_AV_Protocol_Object Class Reference

#include <Protocol_Factory.h>

Inheritance diagram for TAO_AV_Protocol_Object:

Inheritance graph
[legend]
Collaboration diagram for TAO_AV_Protocol_Object:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 TAO_AV_Protocol_Object (void)
 TAO_AV_Protocol_Object (TAO_AV_Callback *callback, TAO_AV_Transport *transport)
 constructor.
virtual ~TAO_AV_Protocol_Object (void)
 Destructor.
virtual int open (TAO_AV_Callback *callback, TAO_AV_Transport *transport)
virtual int handle_input (void)=0
virtual int handle_control_input (ACE_Message_Block *control_frame, const ACE_Addr &peer_address)
 Called on a control object.
virtual int set_policies (const TAO_AV_PolicyList &policy_list)
 set/get policies.
virtual TAO_AV_PolicyList get_policies (void)
virtual int start (void)
 start/stop the flow.
virtual int stop (void)
virtual int send_frame (ACE_Message_Block *frame, TAO_AV_frame_info *frame_info=0)=0
 send a data frame.
virtual int send_frame (const iovec *iov, int iovcnt, TAO_AV_frame_info *frame_info=0)=0
 send a frame in iovecs.
virtual int send_frame (const char *buf, size_t len)=0
virtual void control_object (TAO_AV_Protocol_Object *object)
 end the stream.
virtual int destroy (void)=0
TAO_AV_Transporttransport (void)

Protected Attributes

TAO_AV_Transporttransport_
TAO_AV_PolicyList policy_list_
TAO_AV_Callbackcallback_

Detailed Description

Definition at line 29 of file Protocol_Factory.h.


Constructor & Destructor Documentation

TAO_AV_Protocol_Object::TAO_AV_Protocol_Object ( void   ) 

Definition at line 52 of file Protocol_Factory.cpp.

00053   :transport_ (0),
00054    callback_ (0)
00055 {
00056   // no-op.
00057 }

TAO_AV_Protocol_Object::TAO_AV_Protocol_Object ( TAO_AV_Callback callback,
TAO_AV_Transport transport 
)

constructor.

Definition at line 59 of file Protocol_Factory.cpp.

00061   :transport_ (transport),
00062    callback_ (callback)
00063 {
00064   // no-op.
00065 }

TAO_AV_Protocol_Object::~TAO_AV_Protocol_Object ( void   )  [virtual]

Destructor.

Definition at line 76 of file Protocol_Factory.cpp.

00077 {
00078 }


Member Function Documentation

void TAO_AV_Protocol_Object::control_object ( TAO_AV_Protocol_Object object  )  [virtual]

end the stream.

Reimplemented in TAO_AV_RTP_Object.

Definition at line 118 of file Protocol_Factory.cpp.

Referenced by TAO_AV_Acceptor_Registry::open_default().

00119 {
00120   return;
00121 }

virtual int TAO_AV_Protocol_Object::destroy ( void   )  [pure virtual]

Implemented in TAO_AV_RTCP_Object, TAO_AV_RTP_Object, TAO_SFP_Object, TAO_AV_TCP_Object, and TAO_AV_UDP_Object.

Referenced by TAO_AV_RTP_Object::destroy().

TAO_AV_PolicyList TAO_AV_Protocol_Object::get_policies ( void   )  [virtual]

Definition at line 100 of file Protocol_Factory.cpp.

References policy_list_.

00101 {
00102   return this->policy_list_;
00103 }

int TAO_AV_Protocol_Object::handle_control_input ( ACE_Message_Block control_frame,
const ACE_Addr peer_address 
) [virtual]

Called on a control object.

Reimplemented in TAO_AV_RTCP_Object.

Definition at line 124 of file Protocol_Factory.cpp.

References ACE_DEBUG, LM_DEBUG, and TAO_debug_level.

Referenced by TAO_AV_RTP_Object::handle_input().

00126 {
00127   if (TAO_debug_level > 0)
00128     ACE_DEBUG ((LM_DEBUG,"TAO_AV_Protocol_Object::handle_control_input\n"));
00129   return 0;
00130 }

virtual int TAO_AV_Protocol_Object::handle_input ( void   )  [pure virtual]

Implemented in TAO_AV_RTCP_Object, TAO_AV_RTP_Object, TAO_SFP_Object, TAO_SFP_Producer_Object, TAO_SFP_Consumer_Object, TAO_AV_TCP_Object, and TAO_AV_UDP_Object.

Referenced by TAO_AV_UDP_Flow_Handler::handle_input(), TAO_AV_TCP_Flow_Handler::handle_input(), and TAO_AV_UDP_MCast_Flow_Handler::handle_input().

int TAO_AV_Protocol_Object::open ( TAO_AV_Callback callback,
TAO_AV_Transport transport 
) [virtual]

Definition at line 68 of file Protocol_Factory.cpp.

References callback_, transport(), and transport_.

Referenced by TAO_AV_UDP_Flow_Factory::make_protocol_object(), TAO_AV_TCP_Flow_Factory::make_protocol_object(), and TAO_AV_RTP_Flow_Factory::make_protocol_object().

00070 {
00071   this->callback_ = callback;
00072   this->transport_ = transport;
00073   return 0;
00074 }

virtual int TAO_AV_Protocol_Object::send_frame ( const char *  buf,
size_t  len 
) [pure virtual]

Implemented in TAO_AV_RTCP_Object, TAO_AV_RTP_Object, TAO_SFP_Object, TAO_AV_TCP_Object, and TAO_AV_UDP_Object.

virtual int TAO_AV_Protocol_Object::send_frame ( const iovec *  iov,
int  iovcnt,
TAO_AV_frame_info frame_info = 0 
) [pure virtual]

send a frame in iovecs.

Implemented in TAO_AV_RTCP_Object, TAO_AV_RTP_Object, TAO_SFP_Object, TAO_AV_TCP_Object, and TAO_AV_UDP_Object.

virtual int TAO_AV_Protocol_Object::send_frame ( ACE_Message_Block frame,
TAO_AV_frame_info frame_info = 0 
) [pure virtual]

send a data frame.

Implemented in TAO_AV_RTCP_Object, TAO_AV_RTP_Object, TAO_SFP_Object, TAO_AV_TCP_Object, and TAO_AV_UDP_Object.

Referenced by TAO_AV_RTCP_Callback::send_report().

int TAO_AV_Protocol_Object::set_policies ( const TAO_AV_PolicyList policy_list  )  [virtual]

set/get policies.

Reimplemented in TAO_AV_RTCP_Object, TAO_AV_RTP_Object, and TAO_SFP_Object.

Definition at line 93 of file Protocol_Factory.cpp.

References policy_list_.

00094 {
00095   this->policy_list_ = policy_list;
00096   return 0;
00097 }

int TAO_AV_Protocol_Object::start ( void   )  [virtual]

start/stop the flow.

Reimplemented in TAO_AV_RTCP_Object, and TAO_AV_RTP_Object.

Definition at line 81 of file Protocol_Factory.cpp.

References callback_, and TAO_AV_Callback::handle_start().

Referenced by TAO_AV_RTP_Object::start().

00082 {
00083   return this->callback_->handle_start ();
00084 }

int TAO_AV_Protocol_Object::stop ( void   )  [virtual]

Reimplemented in TAO_AV_RTCP_Object, and TAO_AV_RTP_Object.

Definition at line 87 of file Protocol_Factory.cpp.

References callback_, and TAO_AV_Callback::handle_stop().

Referenced by TAO_AV_RTP_Object::stop().

00088 {
00089   return this->callback_->handle_stop ();
00090 }

TAO_AV_Transport * TAO_AV_Protocol_Object::transport ( void   ) 

Definition at line 106 of file Protocol_Factory.cpp.

References transport_.

Referenced by open().

00107 {
00108   return this->transport_;
00109 }


Member Data Documentation

TAO_AV_Callback* TAO_AV_Protocol_Object::callback_ [protected]

Definition at line 77 of file Protocol_Factory.h.

Referenced by TAO_AV_UDP_Object::destroy(), TAO_AV_TCP_Object::destroy(), TAO_SFP_Object::destroy(), TAO_AV_RTP_Object::destroy(), TAO_AV_RTCP_Object::destroy(), TAO_AV_RTCP_Object::handle_control_input(), TAO_AV_RTCP_Object::handle_control_output(), TAO_AV_UDP_Object::handle_input(), TAO_AV_TCP_Object::handle_input(), TAO_SFP_Consumer_Object::handle_input(), TAO_AV_RTP_Object::handle_input(), TAO_AV_RTCP_Object::handle_input(), open(), TAO_AV_RTP_Object::start(), TAO_AV_RTCP_Object::start(), start(), TAO_AV_RTP_Object::stop(), TAO_AV_RTCP_Object::stop(), stop(), and TAO_AV_RTCP_Object::ts_offset().

TAO_AV_PolicyList TAO_AV_Protocol_Object::policy_list_ [protected]

Definition at line 76 of file Protocol_Factory.h.

Referenced by get_policies(), TAO_AV_RTP_Object::set_policies(), and set_policies().

TAO_AV_Transport* TAO_AV_Protocol_Object::transport_ [protected]

Definition at line 75 of file Protocol_Factory.h.

Referenced by TAO_AV_UDP_Object::handle_input(), TAO_AV_TCP_Object::handle_input(), TAO_SFP_Producer_Object::handle_input(), TAO_AV_RTP_Object::handle_input(), TAO_AV_RTCP_Object::handle_input(), open(), TAO_AV_UDP_Object::send_frame(), TAO_AV_TCP_Object::send_frame(), TAO_AV_RTP_Object::send_frame(), TAO_AV_RTCP_Object::send_frame(), and transport().


The documentation for this class was generated from the following files:
Generated on Tue Feb 2 17:48:02 2010 for TAO_AV by  doxygen 1.4.7