Instrument Neutral Distributed Interface INDI 2.2.5
Public Member Functions | Protected Member Functions | Protected Attributes | Friends | List of all members
SerializedMsg Class Referenceabstract

#include <SerializedMsg.hpp>

Inheritance diagram for SerializedMsg:
SerializedMsgWithSharedBuffer SerializedMsgWithoutSharedBuffer

Public Member Functions

 SerializedMsg (Msg *parent)
 
virtual ~SerializedMsg ()
 
bool requestContent (const MsgChunckIterator &position)
 
bool getContent (MsgChunckIterator &position, void *&data, ssize_t &nsend, std::vector< int > &sharedBuffers)
 
void advance (MsgChunckIterator &position, ssize_t s)
 
void release (MsgQueue *from)
 
void addAwaiter (MsgQueue *awaiter)
 
ssize_t queueSize ()
 

Protected Member Functions

bool async_canceled ()
 
void async_updateRequirement (const SerializationRequirement &n)
 
void async_pushChunck (const MsgChunck &m)
 
void async_done ()
 
bool isAsyncRunning ()
 
void onDataReady ()
 
virtual bool generateContentAsync () const =0
 
virtual void generateContent ()=0
 
void collectRequirements (SerializationRequirement &req)
 
void abort ()
 
void blockReceiver (MsgQueue *toblock)
 

Protected Attributes

SerializationStatus asyncStatus
 
Msg * owner
 
MsgQueue * blockedProducer
 
std::set< MsgQueue * > awaiters
 
std::list< void * > ownBuffers
 

Friends

class Msg
 
class MsgChunckIterator
 

Detailed Description

Definition at line 35 of file SerializedMsg.hpp.

Constructor & Destructor Documentation

◆ SerializedMsg()

SerializedMsg::SerializedMsg ( Msg *  parent)

Definition at line 27 of file SerializedMsg.cpp.

◆ ~SerializedMsg()

SerializedMsg::~SerializedMsg ( )
virtual

Definition at line 44 of file SerializedMsg.cpp.

Member Function Documentation

◆ abort()

void SerializedMsg::abort ( )
protected

◆ addAwaiter()

void SerializedMsg::addAwaiter ( MsgQueue *  awaiter)

Definition at line 213 of file SerializedMsg.cpp.

◆ advance()

void SerializedMsg::advance ( MsgChunckIterator &  position,
ssize_t  s 
)

Definition at line 196 of file SerializedMsg.cpp.

◆ async_canceled()

bool SerializedMsg::async_canceled ( )
protected

Definition at line 52 of file SerializedMsg.cpp.

◆ async_done()

void SerializedMsg::async_done ( )
protected

Definition at line 77 of file SerializedMsg.cpp.

◆ async_pushChunck()

void SerializedMsg::async_pushChunck ( const MsgChunck &  m)
protected

Definition at line 69 of file SerializedMsg.cpp.

◆ async_updateRequirement()

void SerializedMsg::async_updateRequirement ( const SerializationRequirement &  n)
protected

Definition at line 58 of file SerializedMsg.cpp.

◆ blockReceiver()

void SerializedMsg::blockReceiver ( MsgQueue *  toblock)
protected

Definition at line 233 of file SerializedMsg.cpp.

◆ collectRequirements()

void SerializedMsg::collectRequirements ( SerializationRequirement &  req)
protected

Definition at line 227 of file SerializedMsg.cpp.

◆ generateContent()

virtual void SerializedMsg::generateContent ( )
protectedpure virtual

◆ generateContentAsync()

virtual bool SerializedMsg::generateContentAsync ( ) const
protectedpure virtual

◆ getContent()

bool SerializedMsg::getContent ( MsgChunckIterator &  position,
void *&  data,
ssize_t &  nsend,
std::vector< int > &  sharedBuffers 
)

Definition at line 160 of file SerializedMsg.cpp.

◆ isAsyncRunning()

bool SerializedMsg::isAsyncRunning ( )
protected

Definition at line 129 of file SerializedMsg.cpp.

◆ onDataReady()

void SerializedMsg::onDataReady ( )
protected

◆ queueSize()

ssize_t SerializedMsg::queueSize ( )

Definition at line 239 of file SerializedMsg.cpp.

◆ release()

void SerializedMsg::release ( MsgQueue *  from)

Definition at line 218 of file SerializedMsg.cpp.

◆ requestContent()

bool SerializedMsg::requestContent ( const MsgChunckIterator &  position)

Definition at line 137 of file SerializedMsg.cpp.

Friends And Related Symbol Documentation

◆ Msg

friend class Msg
friend

Definition at line 37 of file SerializedMsg.hpp.

◆ MsgChunckIterator

friend class MsgChunckIterator
friend

Definition at line 38 of file SerializedMsg.hpp.

Member Data Documentation

◆ asyncStatus

SerializationStatus SerializedMsg::asyncStatus
protected

Definition at line 65 of file SerializedMsg.hpp.

◆ awaiters

std::set<MsgQueue *> SerializedMsg::awaiters
protected

Definition at line 70 of file SerializedMsg.hpp.

◆ blockedProducer

MsgQueue* SerializedMsg::blockedProducer
protected

Definition at line 68 of file SerializedMsg.hpp.

◆ ownBuffers

std::list<void*> SerializedMsg::ownBuffers
protected

Definition at line 76 of file SerializedMsg.hpp.

◆ owner

Msg* SerializedMsg::owner
protected

Definition at line 66 of file SerializedMsg.hpp.


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