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

SH::SHEndpointSpec Class Reference

#include <SHEndpointSpec.h>

Inheritance diagram for SH::SHEndpointSpec:

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

Collaboration graph
[legend]
List of all members.

Public Member Functions

void initSettings (const SHEndpointSpec::Settings &settings)
virtual bool isSink () const
virtual bool isSource () const
virtual bool supportInterfacePull () const
virtual bool supportInterfacePush () const
virtual bool supportMultipleInstances () const
virtual bool supportArbitraryInstances () const
virtual size_t getMaxSupportedInstances () const
virtual bool supportDynamicConnection () const
virtual bool supportDynamicDisconnection () const

Detailed Description

SHEndpointSpec

The class EndpointSpec is an abstract base class that describes a stream handler's potential end points. A specific EndpointSpec is instantiated by the stream handler when it is requested by a caller, and the caller is responsible for deleting this spec. The spec is guaranteed to be correct at instantiation time; due to asynchronous behaviour of the caller, it may be invalid when the caller intends to make use of the contained information. The stream handlers must account for outdated specs used by a caller for subsequent operations.


Member Function Documentation

virtual size_t SH::SHEndpointSpec::getMaxSupportedInstances  )  const [virtual]
 

Returns the number of instances of this kind of endpoint. Returns 0 if supportArbitraryInstances() is true. Returns 1 if supportMultipleInstances() is false. Otherwise, the number of supported endpoints, which may change between retrieval of this data and actual creation of an endpoint.

Reimplemented in SH::RTPSourceEndpoint.

void SH::SHEndpointSpec::initSettings const SHEndpointSpec::Settings settings  ) 
 

The settings list that is provided to the constructor as a parameter can ease the implementation for the simple stream handler endpoints that have relatively inflexible settings.

virtual bool SH::SHEndpointSpec::isSink  )  const [virtual]
 

True if this endpoint spec describes sink endpoints. False if it describes source endpoints.

virtual bool SH::SHEndpointSpec::isSource  )  const [virtual]
 

True if this endpoint spec describes source endpoints. False if it describes sink endpoints.

virtual bool SH::SHEndpointSpec::supportArbitraryInstances  )  const [virtual]
 

True if the number of endpoints of this endpoint spec is not limited in any way.

virtual bool SH::SHEndpointSpec::supportDynamicConnection  )  const [virtual]
 

True if this kind of endpoint can be linked into stream graphs that are already active. Stream handlers' endpoints must support this feature if they are routing stream handlers in frequently changing graphs such as the RTP caching scenario.

virtual bool SH::SHEndpointSpec::supportDynamicDisconnection  )  const [virtual]
 

True if this kind of endpoint can be removed from stream graphs that are already active.

virtual bool SH::SHEndpointSpec::supportInterfacePull  )  const [virtual]
 

True if this describes a source endpoint, which can operate in passive or through mode.

virtual bool SH::SHEndpointSpec::supportInterfacePush  )  const [virtual]
 

True if this describes a sink endpoint, which can operate in passive or through mode.

virtual bool SH::SHEndpointSpec::supportMultipleInstances  )  const [virtual]
 

True if multiple endpoints of this endpoint spec can be instantiated by a single stream handler, e.g. in a multicast or filter stream handler, but also by the RTP stream handler, which may report new connections to the graph manager.


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