Kanzi Connect  3.9.9
Kanzi Connect C++ API
kanzi::connect::StreamServiceClient Class Reference

#include <stream_service_client.hpp>

Inheritance diagram for kanzi::connect::StreamServiceClient:
kanzi::connect::AbstractServiceClient

Classes

class  NewBlobCallbackObserver
 
class  NewBlobSubscription
 
class  ReceiveEncoderParameterCallbackObserver
 
class  ReceiveEncoderParameterSubscription
 
class  ReceiveStreamInfoCallbackObserver
 
class  ReceiveStreamInfoSubscription
 
class  SubscribeBlobsCompleteSubscription
 
class  SubscriptionResultCallbackObserver
 
class  SubscriptionResultSubscription
 

Public Types

typedef std::function< void(const kanzi::string &streamId, const kanzi::string &blob, const int &flags)> NewBlobCallbackFunction
 
typedef kanzi::vector< kanzi::shared_ptr< NewBlobSubscription > > NewBlobSubscriptionContainer
 
typedef std::function< void(const kanzi::string &streamId, const kanzi::string &parameterName, const kanzi::string &parameterValue)> ReceiveEncoderParameterCallbackFunction
 
typedef kanzi::vector< kanzi::shared_ptr< ReceiveEncoderParameterSubscription > > ReceiveEncoderParameterSubscriptionContainer
 
typedef std::function< void(const StreamInfo &streamInfo)> ReceiveStreamInfoCallbackFunction
 
typedef kanzi::vector< kanzi::shared_ptr< ReceiveStreamInfoSubscription > > ReceiveStreamInfoSubscriptionContainer
 
typedef kanzi::shared_ptr< void > StreamSubscriptionToken
 
typedef std::function< void(bool, int32_t)> SubscribeBlobsCompleteFunction
 
typedef std::function< void(const kanzi::string &streamId, const bool &subscribed)> SubscriptionResultCallbackFunction
 
typedef kanzi::vector< kanzi::shared_ptr< SubscriptionResultSubscription > > SubscriptionResultSubscriptionContainer
 
- Public Types inherited from kanzi::connect::AbstractServiceClient
typedef function< void(void)> SessionRunningFunction
 
typedef shared_ptr< void > SessionRunningSubscriptionToken
 
typedef function< void(void)> SessionStoppedFunction
 

Public Member Functions

StreamSubscriptionToken addNewBlobSubscription (NewBlobCallbackFunction function)
 
StreamSubscriptionToken addNewBlobSubscriptionEx (NewBlobCallbackObserver *observer)
 
StreamSubscriptionToken addReceiveEncoderParameterSubscription (ReceiveEncoderParameterCallbackFunction function)
 
StreamSubscriptionToken addReceiveEncoderParameterSubscriptionEx (ReceiveEncoderParameterCallbackObserver *observer)
 
StreamSubscriptionToken addReceiveStreamInfoSubscription (ReceiveStreamInfoCallbackFunction function)
 
StreamSubscriptionToken addReceiveStreamInfoSubscriptionEx (ReceiveStreamInfoCallbackObserver *observer)
 
StreamSubscriptionToken addSubscribeBlobsCompleteSubscription (SubscribeBlobsCompleteFunction function)
 
StreamSubscriptionToken addSubscriptionResultSubscription (SubscriptionResultCallbackFunction function)
 
StreamSubscriptionToken addSubscriptionResultSubscriptionEx (SubscriptionResultCallbackObserver *observer)
 
virtual kanzi::string getIdentifier () const override
 Returns the type of the service. More...
 
void notifyNewBlob (const kanzi::string &streamId, const kanzi::string &blob, const int &flags)
 
void notifyReceiveEncoderParameter (const kanzi::string &streamId, const kanzi::string &parameterName, const kanzi::string &parameterValue)
 
void notifyReceiveStreamInfo (const StreamInfo &streamInfo)
 
void notifySubscribeBlobsComplete (kanzi::connect::RPCResult< bool > &result)
 
void notifySubscribeBlobsCompleteNotExecuted ()
 
void notifySubscriptionResult (const kanzi::string &streamId, const bool &subscribed)
 
void onNewBlob (const kanzi::string &streamId, const kanzi::string &blob, const int &flags)
 
void onReceiveEncoderParameter (const kanzi::string &streamId, const kanzi::string &parameterName, const kanzi::string &parameterValue)
 
void onReceiveStreamInfo (const StreamInfo &streamInfo)
 
void onSubscriptionResult (const kanzi::string &streamId, const bool &subscribed)
 
void removeNewBlobSubscription (StreamSubscriptionToken token)
 
void removeReceiveEncoderParameterSubscription (StreamSubscriptionToken token)
 
void removeReceiveStreamInfoSubscription (StreamSubscriptionToken token)
 
void removeSubscribeBlobsCompleteSubscription (StreamSubscriptionToken token)
 
void removeSubscription (const kanzi::string &streamId)
 
void removeSubscriptionResultSubscription (StreamSubscriptionToken token)
 
void requestEncoderParameter (const kanzi::string &streamId, const kanzi::string &parameterName)
 
void requestStreamInfo (const kanzi::string &streamId)
 
void restartEncoder (const kanzi::string &streamId)
 
void setEncoderParameter (const kanzi::string &streamId, const kanzi::string &parameterName, const kanzi::string &parameterValue)
 
void setStreamContent (const kanzi::string &streamId, const kanzi::string &contentDescription)
 
 StreamServiceClient (ClientSharedPtr client, const kanzi::string &type=StreamServiceClient::Type())
 
kanzi::connect::RPCResult< bool > subscribeBlobs (const kanzi::string &streamId)
 
virtual ~StreamServiceClient () override
 
- Public Member Functions inherited from kanzi::connect::AbstractServiceClient
 AbstractServiceClient ()
 Constructor. More...
 
AbstractSession::MessageSubscriptionToken addMessageSubscription (const string &messageType, AbstractSession::MessageReceivedFunction function)
 
SessionRunningSubscriptionToken addSessionRunningSubscription (SessionRunningFunction function)
 
SessionRunningSubscriptionToken addSessionStoppedSubscription (SessionStoppedFunction function)
 
optional< int > getActiveSessionIdentifier ()
 
optional< const AbstractSession::ServiceAttributesgetServiceAttributes ()
 
virtual void onSessionRunning ()
 
virtual void onSessionStopped ()
 
void removeMessageSubscription (const string &messageType, AbstractSession::MessageSubscriptionToken token)
 
void removeSessionRunningSubscription (SessionRunningSubscriptionToken token)
 
void removeSessionStoppedSubscription (SessionRunningSubscriptionToken token)
 
void setEnabledState (bool newEnabledState)
 Enable/disable the service by allowing or blocking traffic between client and server. More...
 
bool transmit (const MessagePackage &message)
 
virtual void work ()
 Carry out asynchronous work bound to Kanzi Connect client main thread. More...
 
virtual ~AbstractServiceClient ()
 Destructor. More...
 

Static Public Member Functions

static StreamServiceClientSharedPtr create (ClientSharedPtr client, const kanzi::string &type=StreamServiceClient::Type())
 Creation function. More...
 
static kanzi::string Type ()
 Type accessors. More...
 

Public Attributes

NewBlobSubscriptionContainer m_newBlobSubscriptions
 
ReceiveEncoderParameterSubscriptionContainer m_receiveEncoderParameterSubscriptions
 
ReceiveStreamInfoSubscriptionContainer m_receiveStreamInfoSubscriptions
 
kanzi::vector< kanzi::shared_ptr< SubscribeBlobsCompleteSubscription > > m_subscribeBlobsCompletionCallbacks
 
SubscriptionResultSubscriptionContainer m_subscriptionResultSubscriptions
 

Friends

class StreamSessionObserver
 

Additional Inherited Members

- Protected Types inherited from kanzi::connect::AbstractServiceClient
enum  SessionState { INITIALIZED = 0, RUNNING = 1, STOPPED = 2 }
 
- Protected Attributes inherited from kanzi::connect::AbstractServiceClient
SessionState m_sessionState
 

Member Typedef Documentation

◆ NewBlobCallbackFunction

typedef std::function<void(const kanzi::string& streamId, const kanzi::string& blob, const int& flags)> kanzi::connect::StreamServiceClient::NewBlobCallbackFunction

◆ NewBlobSubscriptionContainer

◆ ReceiveEncoderParameterCallbackFunction

typedef std::function<void(const kanzi::string& streamId, const kanzi::string& parameterName, const kanzi::string& parameterValue)> kanzi::connect::StreamServiceClient::ReceiveEncoderParameterCallbackFunction

◆ ReceiveEncoderParameterSubscriptionContainer

◆ ReceiveStreamInfoCallbackFunction

◆ ReceiveStreamInfoSubscriptionContainer

◆ StreamSubscriptionToken

◆ SubscribeBlobsCompleteFunction

typedef std::function<void(bool, int32_t)> kanzi::connect::StreamServiceClient::SubscribeBlobsCompleteFunction

◆ SubscriptionResultCallbackFunction

typedef std::function<void(const kanzi::string& streamId, const bool& subscribed)> kanzi::connect::StreamServiceClient::SubscriptionResultCallbackFunction

◆ SubscriptionResultSubscriptionContainer

Constructor & Destructor Documentation

◆ StreamServiceClient()

kanzi::connect::StreamServiceClient::StreamServiceClient ( ClientSharedPtr  client,
const kanzi::string &  type = StreamServiceClient::Type() 
)

◆ ~StreamServiceClient()

virtual kanzi::connect::StreamServiceClient::~StreamServiceClient ( )
overridevirtual

Member Function Documentation

◆ addNewBlobSubscription()

StreamSubscriptionToken kanzi::connect::StreamServiceClient::addNewBlobSubscription ( NewBlobCallbackFunction  function)

◆ addNewBlobSubscriptionEx()

StreamSubscriptionToken kanzi::connect::StreamServiceClient::addNewBlobSubscriptionEx ( NewBlobCallbackObserver observer)

◆ addReceiveEncoderParameterSubscription()

StreamSubscriptionToken kanzi::connect::StreamServiceClient::addReceiveEncoderParameterSubscription ( ReceiveEncoderParameterCallbackFunction  function)

◆ addReceiveEncoderParameterSubscriptionEx()

StreamSubscriptionToken kanzi::connect::StreamServiceClient::addReceiveEncoderParameterSubscriptionEx ( ReceiveEncoderParameterCallbackObserver observer)

◆ addReceiveStreamInfoSubscription()

StreamSubscriptionToken kanzi::connect::StreamServiceClient::addReceiveStreamInfoSubscription ( ReceiveStreamInfoCallbackFunction  function)

◆ addReceiveStreamInfoSubscriptionEx()

StreamSubscriptionToken kanzi::connect::StreamServiceClient::addReceiveStreamInfoSubscriptionEx ( ReceiveStreamInfoCallbackObserver observer)

◆ addSubscribeBlobsCompleteSubscription()

StreamSubscriptionToken kanzi::connect::StreamServiceClient::addSubscribeBlobsCompleteSubscription ( SubscribeBlobsCompleteFunction  function)

◆ addSubscriptionResultSubscription()

StreamSubscriptionToken kanzi::connect::StreamServiceClient::addSubscriptionResultSubscription ( SubscriptionResultCallbackFunction  function)

◆ addSubscriptionResultSubscriptionEx()

StreamSubscriptionToken kanzi::connect::StreamServiceClient::addSubscriptionResultSubscriptionEx ( SubscriptionResultCallbackObserver observer)

◆ create()

static StreamServiceClientSharedPtr kanzi::connect::StreamServiceClient::create ( ClientSharedPtr  client,
const kanzi::string &  type = StreamServiceClient::Type() 
)
inlinestatic

Creation function.

◆ getIdentifier()

virtual kanzi::string kanzi::connect::StreamServiceClient::getIdentifier ( ) const
overridevirtual

Returns the type of the service.

Returns
Identifier of the service, as a string.

Implements kanzi::connect::AbstractServiceClient.

◆ notifyNewBlob()

void kanzi::connect::StreamServiceClient::notifyNewBlob ( const kanzi::string &  streamId,
const kanzi::string &  blob,
const int &  flags 
)

◆ notifyReceiveEncoderParameter()

void kanzi::connect::StreamServiceClient::notifyReceiveEncoderParameter ( const kanzi::string &  streamId,
const kanzi::string &  parameterName,
const kanzi::string &  parameterValue 
)

◆ notifyReceiveStreamInfo()

void kanzi::connect::StreamServiceClient::notifyReceiveStreamInfo ( const StreamInfo streamInfo)

◆ notifySubscribeBlobsComplete()

void kanzi::connect::StreamServiceClient::notifySubscribeBlobsComplete ( kanzi::connect::RPCResult< bool > &  result)

◆ notifySubscribeBlobsCompleteNotExecuted()

void kanzi::connect::StreamServiceClient::notifySubscribeBlobsCompleteNotExecuted ( )

◆ notifySubscriptionResult()

void kanzi::connect::StreamServiceClient::notifySubscriptionResult ( const kanzi::string &  streamId,
const bool &  subscribed 
)

◆ onNewBlob()

void kanzi::connect::StreamServiceClient::onNewBlob ( const kanzi::string &  streamId,
const kanzi::string &  blob,
const int &  flags 
)

◆ onReceiveEncoderParameter()

void kanzi::connect::StreamServiceClient::onReceiveEncoderParameter ( const kanzi::string &  streamId,
const kanzi::string &  parameterName,
const kanzi::string &  parameterValue 
)

◆ onReceiveStreamInfo()

void kanzi::connect::StreamServiceClient::onReceiveStreamInfo ( const StreamInfo streamInfo)

◆ onSubscriptionResult()

void kanzi::connect::StreamServiceClient::onSubscriptionResult ( const kanzi::string &  streamId,
const bool &  subscribed 
)

◆ removeNewBlobSubscription()

void kanzi::connect::StreamServiceClient::removeNewBlobSubscription ( StreamSubscriptionToken  token)

◆ removeReceiveEncoderParameterSubscription()

void kanzi::connect::StreamServiceClient::removeReceiveEncoderParameterSubscription ( StreamSubscriptionToken  token)

◆ removeReceiveStreamInfoSubscription()

void kanzi::connect::StreamServiceClient::removeReceiveStreamInfoSubscription ( StreamSubscriptionToken  token)

◆ removeSubscribeBlobsCompleteSubscription()

void kanzi::connect::StreamServiceClient::removeSubscribeBlobsCompleteSubscription ( StreamSubscriptionToken  token)

◆ removeSubscription()

void kanzi::connect::StreamServiceClient::removeSubscription ( const kanzi::string &  streamId)

◆ removeSubscriptionResultSubscription()

void kanzi::connect::StreamServiceClient::removeSubscriptionResultSubscription ( StreamSubscriptionToken  token)

◆ requestEncoderParameter()

void kanzi::connect::StreamServiceClient::requestEncoderParameter ( const kanzi::string &  streamId,
const kanzi::string &  parameterName 
)

◆ requestStreamInfo()

void kanzi::connect::StreamServiceClient::requestStreamInfo ( const kanzi::string &  streamId)

◆ restartEncoder()

void kanzi::connect::StreamServiceClient::restartEncoder ( const kanzi::string &  streamId)

◆ setEncoderParameter()

void kanzi::connect::StreamServiceClient::setEncoderParameter ( const kanzi::string &  streamId,
const kanzi::string &  parameterName,
const kanzi::string &  parameterValue 
)

◆ setStreamContent()

void kanzi::connect::StreamServiceClient::setStreamContent ( const kanzi::string &  streamId,
const kanzi::string &  contentDescription 
)

◆ subscribeBlobs()

kanzi::connect::RPCResult<bool> kanzi::connect::StreamServiceClient::subscribeBlobs ( const kanzi::string &  streamId)

◆ Type()

static kanzi::string kanzi::connect::StreamServiceClient::Type ( )
inlinestatic

Type accessors.

Friends And Related Function Documentation

◆ StreamSessionObserver

friend class StreamSessionObserver
friend

Member Data Documentation

◆ m_newBlobSubscriptions

NewBlobSubscriptionContainer kanzi::connect::StreamServiceClient::m_newBlobSubscriptions

◆ m_receiveEncoderParameterSubscriptions

ReceiveEncoderParameterSubscriptionContainer kanzi::connect::StreamServiceClient::m_receiveEncoderParameterSubscriptions

◆ m_receiveStreamInfoSubscriptions

ReceiveStreamInfoSubscriptionContainer kanzi::connect::StreamServiceClient::m_receiveStreamInfoSubscriptions

◆ m_subscribeBlobsCompletionCallbacks

kanzi::vector<kanzi::shared_ptr<SubscribeBlobsCompleteSubscription> > kanzi::connect::StreamServiceClient::m_subscribeBlobsCompletionCallbacks

◆ m_subscriptionResultSubscriptions

SubscriptionResultSubscriptionContainer kanzi::connect::StreamServiceClient::m_subscriptionResultSubscriptions

The documentation for this class was generated from the following file: