#include <SHPushPullSH.h>
Inheritance diagram for SH::PushPullSH:
Public Member Functions | |
SH_RC | enqueue (DataPtr item) |
SH_RC | dequeue (DataPtr &item) |
PushPullSH (SHGraphManager *mgr, u_int32_t runtimeId, MNSelector &sel, const char *debugName="PushPullSH") | |
virtual | ~PushPullSH () |
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 |
Public Attributes | |
SA_PUSH_PULL_LOW_MARK | _low_watermark |
SA_PUSH_PULL_HIGH_MARK | _high_watermark |
int32_t | _packet_count |
bool | _notify_low_watermark |
SA_PUSH_PULL_NONEBLOCKING_POP | _noneblockingPop |
SA_PUSH_PULL_INITIAL_FILL | _initial_fill_size |
bool | _initial_fill |
size_t | _empty_q_detected |
SA_RTP_INT_PAYLOAD_TYPE | _int_pt |
SA_FILE_NAME | _log_name |
Protected Member Functions | |
virtual void | pushReport (ReportPtr report, Direction d) |
Protected Attributes | |
SinkEndpoint * | _in_ep_a [1] |
SourceEndpoint * | _out_ep_a [1] |
PushPullSinkEndpoint | _inEP |
PushPullSourceEndpoint | _outEP |
|
|
|
|
|
|
|
|
|
Provide a list of valid sink endpoint specifications to the graph manager.
Implements SH::Status.
|
|
Provide a list of valid source endpoint specifications to the graph manager.
Implements SH::Status.
|
|
Reimplemented from SH::Base.
|
|
Indicate whether a sufficient number of endpoints are connected for the stream handler to be active. Note that this weird stream handler operates as soon as one side is connected. That allow asynchronous operations, slow handovers any other tricks. Implements SH::Status.
|
|
pushReport(r) can be called on source and sink endpoints, which will in turn call their owning stream handler for forwarding the report into the same general direction. The specific stream handler must overload this call if it wants to evaluate the reports, or if it has downstream or well as upstream endpoints. If the SH does not care about reports and has endpoints on only one side, it needs not overload this function. The reports are ignored and deleted in that case. Reimplemented from SH::Base.
|
|
Reimplemented from SH::Base.
|
|
Reimplemented from SH::Base.
|
|
Reimplemented from SH::Base.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|