Brief description of class still missing. More...
#include <MessageRawHeader.h>
Public Types | |
| enum | { SynchronizationSize = 2, HeaderSize = 2, CheckSumSize = 2 } |
Public Member Functions | |
| void | bigEndianValues () |
| const char * | header () const |
| bool | isValid () const |
| bool | isValid (const FletcherChecksum &cksum, const char *payload=0, unsigned short payloadLength=0) const |
| unsigned int | lengthBigEndian () const |
| unsigned int | lengthLittleEndian () const |
| void | littleEndianValues () |
| MessageRawHeader () | |
| MessageRawHeader (unsigned int length) | |
| MessageRawHeader (const MessageRawHeader &o) | |
Protected Attributes | |
| union { | |
| char _bytes [HeaderSize] | |
| struct { | |
| unsigned short length | |
| } _values | |
| }; | |
| unsigned char | _sync [2] |
Brief description of class still missing.
Full description of class still missing
| anonymous enum |
{SynchronizationSize=2, HeaderSize=2, CheckSumSize=2};
| GpCoreTools::MessageRawHeader::MessageRawHeader | ( | ) | [inline] |
{}
| GpCoreTools::MessageRawHeader::MessageRawHeader | ( | unsigned int | length | ) | [inline] |
| GpCoreTools::MessageRawHeader::MessageRawHeader | ( | const MessageRawHeader & | o | ) | [inline] |
| void GpCoreTools::MessageRawHeader::bigEndianValues | ( | ) | [inline] |
References _bytes, and GpCoreTools::ByteOrder::swap().
{
#if BYTE_ORDER==LITTLE_ENDIAN
ByteOrder::swap(_bytes[0], _bytes[1]);
#endif
}
| const char* GpCoreTools::MessageRawHeader::header | ( | ) | const [inline] |
| bool GpCoreTools::MessageRawHeader::isValid | ( | ) | const [inline] |
| bool GpCoreTools::MessageRawHeader::isValid | ( | const FletcherChecksum & | cksum, |
| const char * | payload = 0, |
||
| unsigned short | payloadLength = 0 |
||
| ) | const [inline] |
References GpCoreTools::FletcherChecksum::add(), header(), and HeaderSize.
{
FletcherChecksum mycs;
mycs.add(reinterpret_cast<const char *>(header()), HeaderSize);
if(payload) {
mycs.add(payload, payloadLength);
}
return cksum==mycs;
}
| unsigned int GpCoreTools::MessageRawHeader::lengthBigEndian | ( | ) | const [inline] |
References GpCoreTools::ByteOrder::bigEndianToNative().
{return ByteOrder::bigEndianToNative(_values.length);}
| unsigned int GpCoreTools::MessageRawHeader::lengthLittleEndian | ( | ) | const [inline] |
References GpCoreTools::ByteOrder::littleEndianToNative().
Referenced by TimeMasterBuffer::bytesAvailable(), CrystalfontzBuffer::bytesAvailable(), and TimeSlaveBuffer::bytesAvailable().
{return ByteOrder::littleEndianToNative(_values.length);}
| void GpCoreTools::MessageRawHeader::littleEndianValues | ( | ) | [inline] |
References _bytes, and GpCoreTools::ByteOrder::swap().
Referenced by GpCoreTools::ScreenClient::write().
{
#if BYTE_ORDER==BIG_ENDIAN
ByteOrder::swap(_bytes[0], _bytes[1]);
#endif
}
union { ... } [protected] |
Referenced by bigEndianValues(), and littleEndianValues().
unsigned char GpCoreTools::MessageRawHeader::_sync[2] [protected] |
Referenced by MessageRawHeader().
| struct { ... } GpCoreTools::MessageRawHeader::_values |
Referenced by MessageRawHeader().
| unsigned short GpCoreTools::MessageRawHeader::length |
Referenced by MessageRawHeader().