20 #ifndef RTC_CORBA_CDRMEMORYSTREAM_H
21 #define RTC_CORBA_CDRMEMORYSTREAM_H
24 #include <rtm/idl/DataPort_OpenRTMSkel.h>
105 template<
class ExDataType>
108 #ifdef ORB_IS_ORBEXPRESS
120 #elif defined(ORB_IS_TAO)
165 template<
class ExDataType>
168 #ifdef ORB_IS_ORBEXPRESS
178 #elif defined(ORB_IS_TAO)
181 TAO_InputCDR tao_cdr = TAO_InputCDR(
m_cdr);
275 #ifdef ORB_IS_ORBEXPRESS
277 #elif defined(ORB_IS_TAO)
323 void readCdrData(
unsigned char* buffer,
unsigned long length)
const;
340 #ifdef ORB_IS_ORBEXPRESS
342 #elif defined(ORB_IS_TAO)
343 for (
const ACE_Message_Block *i = rhs.
m_cdr.begin(); i !=
nullptr; i = i->cont())
345 m_cdr.write_octet_array_mb(i);
370 #ifdef ORB_IS_ORBEXPRESS
373 #elif defined(ORB_IS_TAO)
374 for (
const ACE_Message_Block *i = rhs.
m_cdr.begin(); i !=
nullptr; i = i->cont())
376 m_cdr.write_octet_array_mb(i);
386 #ifdef ORB_IS_ORBEXPRESS
388 #elif defined(ORB_IS_TAO)
414 template <
class DataType>
483 void writeData(
const unsigned char* buffer,
unsigned long length)
override
504 void readData(
unsigned char* buffer,
unsigned long length)
const override
649 template <
class DataType>
652 ::RTC::addSerializer<DataType, ::RTC::CORBA_CdrSerializer<DataType>>(
"cdr");
Data Stream Buffer Base class.
void CdrMemoryStreamInit()
Definition: CORBA_CdrMemoryStream.h:650
Definition: ByteDataStreamBase.h:200
Definition: CORBA_CdrMemoryStream.h:66
cdrMemoryStream m_cdr
Definition: CORBA_CdrMemoryStream.h:391
void writeCdrData(const unsigned char *buffer, unsigned long length)
cdrMemoryStream & getCdr()
unsigned long getCdrDataLength() const
const unsigned char * getBuffer()
void readCdrData(unsigned char *buffer, unsigned long length) const
bool m_endian
Definition: CORBA_CdrMemoryStream.h:393
bool serializeCDR(const ExDataType &data)
Definition: CORBA_CdrMemoryStream.h:106
CORBA_CdrMemoryStream & operator=(const CORBA_CdrMemoryStream &rhs)
Definition: CORBA_CdrMemoryStream.h:368
void setEndian(bool little_endian)
CORBA_CdrMemoryStream()
Constructor.
bool deserializeCDR(ExDataType &data)
Definition: CORBA_CdrMemoryStream.h:166
CORBA_CdrMemoryStream(const CORBA_CdrMemoryStream &rhs)
Definition: CORBA_CdrMemoryStream.h:338
Definition: CORBA_CdrMemoryStream.h:416
~CORBA_CdrSerializer() override=default
Virtual destractor.
void isLittleEndian(bool little_endian) override
Definition: CORBA_CdrMemoryStream.h:617
CORBA_CdrMemoryStream m_cdr
Definition: CORBA_CdrMemoryStream.h:622
bool serialize(const DataType &data) override
Definition: CORBA_CdrMemoryStream.h:542
bool deserialize(DataType &data) override
Definition: CORBA_CdrMemoryStream.h:560
CORBA_CdrSerializer()=default
Constructor.
unsigned long getDataLength() const override
Definition: CORBA_CdrMemoryStream.h:522
CORBA_CdrSerializer< DataType > & operator=(const CORBA_CdrSerializer< DataType > &rhs)
Definition: CORBA_CdrMemoryStream.h:598
void init(const coil::Properties &) override
Definition: CORBA_CdrMemoryStream.h:464
CORBA_CdrSerializer(const CORBA_CdrSerializer< DataType > &rhs)
Definition: CORBA_CdrMemoryStream.h:578
void readData(unsigned char *buffer, unsigned long length) const override
Definition: CORBA_CdrMemoryStream.h:504
void writeData(const unsigned char *buffer, unsigned long length) override
Definition: CORBA_CdrMemoryStream.h:483
coil::Properties Properties
Definition: RTC.h:72