Instrument Neutral Distributed Interface INDI 2.2.5
Public Member Functions | Static Public Member Functions | Friends | List of all members
Msg Class Reference

#include <Msg.hpp>

Public Member Functions

void queuingDone ()
 
 Msg (MsgQueue *from, XMLEle *root)
 
SerializedMsg * serialize (MsgQueue *from)
 

Static Public Member Functions

static Msg * fromXml (MsgQueue *from, XMLEle *root, std::list< int > &incomingSharedBuffers)
 

Friends

class SerializedMsg
 
class SerializedMsgWithSharedBuffer
 
class SerializedMsgWithoutSharedBuffer
 

Detailed Description

Definition at line 32 of file Msg.hpp.

Constructor & Destructor Documentation

◆ Msg()

Msg::Msg ( MsgQueue *  from,
XMLEle *  root 
)

Definition at line 31 of file Msg.cpp.

Member Function Documentation

◆ fromXml()

Msg * Msg::fromXml ( MsgQueue *  from,
XMLEle *  root,
std::list< int > &  incomingSharedBuffers 
)
static

Definition at line 175 of file Msg.cpp.

◆ queuingDone()

void Msg::queuingDone ( )

Definition at line 170 of file Msg.cpp.

◆ serialize()

SerializedMsg * Msg::serialize ( MsgQueue *  from)

Handle multiple cases:

  • inline => attached. Exceptional. The inline is already in memory within xml. It must be converted to shared buffer async. FIXME: The convertion should block the emitter.
  • attached => attached Default case. No convertion is required.
  • inline => inline Frequent on system not supporting attachment.
  • attached => inline Frequent. The convertion will be made during write. The convert/write must be offshored to a dedicated thread.

The returned AsyncTask will be ready once "to" can write the message

Definition at line 211 of file Msg.cpp.

Friends And Related Symbol Documentation

◆ SerializedMsg

friend class SerializedMsg
friend

Definition at line 34 of file Msg.hpp.

◆ SerializedMsgWithoutSharedBuffer

friend class SerializedMsgWithoutSharedBuffer
friend

Definition at line 36 of file Msg.hpp.

◆ SerializedMsgWithSharedBuffer

friend class SerializedMsgWithSharedBuffer
friend

Definition at line 35 of file Msg.hpp.


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