Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Class List | File List | Namespace Members | Class Members | File Members | Related Pages

SH::SendBlockSH Class Reference
[StreamHandlers]

#include <SendBlockSH.h>

Inheritance diagram for SH::SendBlockSH:

Inheritance graph
[legend]
Collaboration diagram for SH::SendBlockSH:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 SendBlockSH (SHGraphManager *mgr, u_int32_t runtimeId, MNSelector &sel)
virtual ~SendBlockSH ()
SH_RC getPos (long &pos)
virtual SH_RC initSH ()
virtual SH_RC uninitSH ()
virtual SH_RC startStreaming ()
virtual SH_RC stopStreaming ()
virtual SinkEndpoint ** getSinkSpecs ()
virtual SourceEndpoint ** getSourceSpecs ()
virtual bool isConnected () const
virtual u_int32 get_ssrc ()
SH_RC pause ()
bool isEndReached () const
void setEndIsReached ()
void send_timer_callback (void *timer, TimerCallBase *ptr)
void resend_timer_callback (void *timer, TimerCallBase *ptr)
void pushReport (ReportPtr report, Base::Direction d)
void rtpsink_pushReport (ReportPtr report, Base::Direction d)

Public Attributes

SA_RTP_MAX_PACKET_SIZE _max_packet_size
SA_RTP_RTP_PAYLOAD_TYPE _rtp_pt
SA_RTP_INT_PAYLOAD_TYPE _int_pt
SA_RTP_INT_RETRANS_TYPE _int_rt
SA_ACTIVE_DELAY _delay
SA_RTP_PLAYOUT_SCALE _playout_scale
SA_RTP_BANDWIDTH _bandwidth
SA_HAS_ORDERED_DATA _hasOrderedData
SA_RTP_SSRC _ssrc
SA_TCPF _tcpf
SA_CLIENT_MAX_BW _client_max_bw
SA_LCRTP_REPEAT_TIMES _repeat_times_attr
SA_FILE_NAME _filename
SA_FILESRC_START_POS _start_pos
SA_FILESRC_STOP_POS _stop_pos
SA_PUSH_PULL_INITIAL_FILL _initial_fill
SA_RTPSNK_RTP_SOCK_PORT _rtp_socket
SA_RTPSNK_RTCP_SOCK_PORT _rtcp_socket
SA_RTPSNK_CLIENT_NAME _client
SA_RTPSNK_CLIENT_PORT _port

Constructor & Destructor Documentation

SH::SendBlockSH::SendBlockSH SHGraphManager mgr,
u_int32_t  runtimeId,
MNSelector sel
 

virtual SH::SendBlockSH::~SendBlockSH  )  [virtual]
 


Member Function Documentation

virtual u_int32 SH::SendBlockSH::get_ssrc  )  [virtual]
 

SH_RC SH::SendBlockSH::getPos long &  pos  ) 
 

virtual SinkEndpoint** SH::SendBlockSH::getSinkSpecs  )  [virtual]
 

Provide a list of valid sink endpoint specifications to the graph manager.
getSinkPorts() is called by the graph manager and returns an array of pointers to EndpointSpec structures, or NULL if no endpoints in this direction are supported. It is typical that the length of such an array is 1, because several alternatives are specified by one EndpointSpec object, and the maximum number of identical Endpoints is a parameter of the EndpointSpec as well. The maximum number of endpoints may be dynamic, e.g. in an RTP source SH, new SSRCs or PTs will result in the provision of a new Endpoint. The array of endpoint specs is not NULL terminated, it is expected that the application knows the number of endpoints from numSinkSpecs().

Returns:
An array of endpoint specification.

Implements SH::Status.

virtual SourceEndpoint** SH::SendBlockSH::getSourceSpecs  )  [virtual]
 

Provide a list of valid source endpoint specifications to the graph manager.
getSourceSpecs() works like getSinkSpecs() but on the source endpoint specifications.

Returns:
An array of endpoint specification.

Implements SH::Status.

virtual SH_RC SH::SendBlockSH::initSH  )  [virtual]
 

initSH() initializes the stream handler, initializes the EndpointSpecs if necessary etc. Child classes should overload this function instead of using the constructor for initialization tasks, since virtual functions used in the process do not exist during the constructor call (unavailability of virtual functions is a restriction of the C++ standard). initSH() : Uninitialized -> Initialized * -> ( error, - )

Reimplemented from SH::Base.

virtual bool SH::SendBlockSH::isConnected  )  const [virtual]
 

Indicate whether a sufficient number of endpoints are connected for the stream handler to be active.
True if a sufficient number of endpoints is connected for the stream handler to operate in a graph. This should always be true when the stream handler is part of an active graph. This can be called on all stream handlers of a graph to determine whether it will activate successfully.

Implements SH::Status.

bool SH::SendBlockSH::isEndReached  )  const
 

SH_RC SH::SendBlockSH::pause  ) 
 

void SH::SendBlockSH::pushReport ReportPtr  report,
Base::Direction  d
 

void SH::SendBlockSH::resend_timer_callback void *  timer,
TimerCallBase ptr
 

void SH::SendBlockSH::rtpsink_pushReport ReportPtr  report,
Base::Direction  d
 

void SH::SendBlockSH::send_timer_callback void *  timer,
TimerCallBase ptr
 

void SH::SendBlockSH::setEndIsReached  ) 
 

virtual SH_RC SH::SendBlockSH::startStreaming  )  [virtual]
 

Activate the stream handler. Threads may start at this time. The data starts to flow through this stream handler. Initialized -> Running Running -> - * -> ( error, - )

Reimplemented from SH::Base.

virtual SH_RC SH::SendBlockSH::stopStreaming  )  [virtual]
 

Deactivate the stream handler. The data stops flowing through this stream handler. When this function returns, this stream handler's endpoints will not call pull() or push() on their peers any more. Running -> Initialized

Reimplemented from SH::Base.

virtual SH_RC SH::SendBlockSH::uninitSH  )  [virtual]
 

For symmetry only. Could be performed by the destructor as well. uninitSH() : Initialized -> Uninitialized

Reimplemented from SH::Base.


Member Data Documentation

SA_RTP_BANDWIDTH SH::SendBlockSH::_bandwidth
 

SA_RTPSNK_CLIENT_NAME SH::SendBlockSH::_client
 

SA_CLIENT_MAX_BW SH::SendBlockSH::_client_max_bw
 

SA_ACTIVE_DELAY SH::SendBlockSH::_delay
 

SA_FILE_NAME SH::SendBlockSH::_filename
 

SA_HAS_ORDERED_DATA SH::SendBlockSH::_hasOrderedData
 

SA_PUSH_PULL_INITIAL_FILL SH::SendBlockSH::_initial_fill
 

SA_RTP_INT_PAYLOAD_TYPE SH::SendBlockSH::_int_pt
 

SA_RTP_INT_RETRANS_TYPE SH::SendBlockSH::_int_rt
 

SA_RTP_MAX_PACKET_SIZE SH::SendBlockSH::_max_packet_size
 

SA_RTP_PLAYOUT_SCALE SH::SendBlockSH::_playout_scale
 

SA_RTPSNK_CLIENT_PORT SH::SendBlockSH::_port
 

SA_LCRTP_REPEAT_TIMES SH::SendBlockSH::_repeat_times_attr
 

SA_RTPSNK_RTCP_SOCK_PORT SH::SendBlockSH::_rtcp_socket
 

SA_RTP_RTP_PAYLOAD_TYPE SH::SendBlockSH::_rtp_pt
 

SA_RTPSNK_RTP_SOCK_PORT SH::SendBlockSH::_rtp_socket
 

SA_RTP_SSRC SH::SendBlockSH::_ssrc
 

SA_FILESRC_START_POS SH::SendBlockSH::_start_pos
 

SA_FILESRC_STOP_POS SH::SendBlockSH::_stop_pos
 

SA_TCPF SH::SendBlockSH::_tcpf
 


The documentation for this class was generated from the following file:
Generated on Sun Mar 6 13:36:33 2005 for Komssys by doxygen 1.3.8