Kodi Documentation 22.0
Kodi is an open source media player and entertainment hub.
Loading...
Searching...
No Matches
Actor::Protocol Class Reference

#include <ActorProtocol.h>

Inheritance diagram for Actor::Protocol:
ActiveAE::CActiveAEControlProtocol ActiveAE::CActiveAEDataProtocol ActiveAE::CSinkControlProtocol ActiveAE::CSinkDataProtocol VAAPI::COutputControlProtocol VAAPI::COutputDataProtocol VDPAU::CMixerControlProtocol VDPAU::CMixerDataProtocol VDPAU::COutputControlProtocol VDPAU::COutputDataProtocol

Public Member Functions

 Protocol (std::string name, CEvent *inEvent, CEvent *outEvent)
 
 Protocol (std::string name)
 
 ~Protocol ()
 
MessageGetMessage ()
 
void ReturnMessage (Message *msg)
 
bool SendOutMessage (int signal, const void *data=nullptr, size_t size=0, Message *outMsg=nullptr)
 
bool SendOutMessage (int signal, CPayloadWrapBase *payload, Message *outMsg=nullptr)
 
bool SendInMessage (int signal, const void *data=nullptr, size_t size=0, Message *outMsg=nullptr)
 
bool SendInMessage (int signal, CPayloadWrapBase *payload, Message *outMsg=nullptr)
 
bool SendOutMessageSync (int signal, Message **retMsg, std::chrono::milliseconds timeout, const void *data=nullptr, size_t size=0)
 
bool SendOutMessageSync (int signal, Message **retMsg, std::chrono::milliseconds timeout, CPayloadWrapBase *payload)
 
bool ReceiveOutMessage (Message **msg)
 
bool ReceiveInMessage (Message **msg)
 
void Purge ()
 
void PurgeIn (int signal)
 
void PurgeOut (int signal)
 
void DeferIn (bool value)
 
void DeferOut (bool value)
 
void Lock ()
 
void Unlock ()
 

Public Attributes

std::string portName
 

Protected Attributes

CEventcontainerInEvent
 
CEventcontainerOutEvent
 
CCriticalSection criticalSection
 
std::queue< Message * > outMessages
 
std::queue< Message * > inMessages
 
std::queue< Message * > freeMessageQueue
 
bool inDefered = false
 
bool outDefered = false
 

Constructor & Destructor Documentation

◆ Protocol() [1/2]

Actor::Protocol::Protocol ( std::string name,
CEvent * inEvent,
CEvent * outEvent )
inline

◆ Protocol() [2/2]

Actor::Protocol::Protocol ( std::string name)
inline

◆ ~Protocol()

Protocol::~Protocol ( )

Member Function Documentation

◆ DeferIn()

void Actor::Protocol::DeferIn ( bool value)
inline

◆ DeferOut()

void Actor::Protocol::DeferOut ( bool value)
inline

◆ GetMessage()

Message * Protocol::GetMessage ( )

◆ Lock()

void Actor::Protocol::Lock ( )
inline

◆ Purge()

void Protocol::Purge ( )

◆ PurgeIn()

void Protocol::PurgeIn ( int signal)

◆ PurgeOut()

void Protocol::PurgeOut ( int signal)

◆ ReceiveInMessage()

bool Protocol::ReceiveInMessage ( Message ** msg)

◆ ReceiveOutMessage()

bool Protocol::ReceiveOutMessage ( Message ** msg)

◆ ReturnMessage()

void Protocol::ReturnMessage ( Message * msg)

◆ SendInMessage() [1/2]

bool Protocol::SendInMessage ( int signal,
const void * data = nullptr,
size_t size = 0,
Message * outMsg = nullptr )

◆ SendInMessage() [2/2]

bool Protocol::SendInMessage ( int signal,
CPayloadWrapBase * payload,
Message * outMsg = nullptr )

◆ SendOutMessage() [1/2]

bool Protocol::SendOutMessage ( int signal,
const void * data = nullptr,
size_t size = 0,
Message * outMsg = nullptr )

◆ SendOutMessage() [2/2]

bool Protocol::SendOutMessage ( int signal,
CPayloadWrapBase * payload,
Message * outMsg = nullptr )

◆ SendOutMessageSync() [1/2]

bool Protocol::SendOutMessageSync ( int signal,
Message ** retMsg,
std::chrono::milliseconds timeout,
const void * data = nullptr,
size_t size = 0 )

◆ SendOutMessageSync() [2/2]

bool Protocol::SendOutMessageSync ( int signal,
Message ** retMsg,
std::chrono::milliseconds timeout,
CPayloadWrapBase * payload )

◆ Unlock()

void Actor::Protocol::Unlock ( )
inline

Member Data Documentation

◆ containerInEvent

CEvent* Actor::Protocol::containerInEvent
protected

◆ containerOutEvent

CEvent * Actor::Protocol::containerOutEvent
protected

◆ criticalSection

CCriticalSection Actor::Protocol::criticalSection
protected

◆ freeMessageQueue

std::queue<Message*> Actor::Protocol::freeMessageQueue
protected

◆ inDefered

bool Actor::Protocol::inDefered = false
protected

◆ inMessages

std::queue<Message*> Actor::Protocol::inMessages
protected

◆ outDefered

bool Actor::Protocol::outDefered = false
protected

◆ outMessages

std::queue<Message*> Actor::Protocol::outMessages
protected

◆ portName

std::string Actor::Protocol::portName

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