All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Defines
Public Member Functions
GpCoreTools::MessageClassId< Payload > Class Template Reference

Brief description of class still missing. More...

#include <MessageClassId.h>

List of all members.

Public Member Functions

void bigEndianValues ()
const char * buffer () const
const FletcherChecksumchecksum () const
const MessageClassIdHeaderheader () const
bool isBigEndianValid () const
bool isLittleEndianValid () const
void littleEndianValues ()
 MessageClassId (unsigned char msgClass, unsigned char msgId)
 MessageClassId (unsigned char msgClass, unsigned char msgId, const Payload &p)
Payload & payload ()
const Payload & payload () const
const char * payloadBuffer () const

Detailed Description

template<class Payload>
class GpCoreTools::MessageClassId< Payload >

Brief description of class still missing.

Full description of class still missing


Constructor & Destructor Documentation

template<class Payload>
GpCoreTools::MessageClassId< Payload >::MessageClassId ( unsigned char  msgClass,
unsigned char  msgId 
) [inline]
      : _head(msgClass, msgId, sizeof(Payload)), _payload(), _tail() {}
template<class Payload>
GpCoreTools::MessageClassId< Payload >::MessageClassId ( unsigned char  msgClass,
unsigned char  msgId,
const Payload &  p 
) [inline]
      : _head(msgClass, msgId, sizeof(Payload)), _payload(p), _tail() {}

Member Function Documentation

template<class Payload >
void GpCoreTools::MessageClassId< Payload >::bigEndianValues ( ) [inline]

References GpCoreTools::MessageClassIdHeader::HeaderSize.

  {
    _head.bigEndianValues();
    _payload.bigEndianValues();
    _tail.add(reinterpret_cast<const char *>(_head.header()), MessageClassIdHeader::HeaderSize);
    _tail.add(reinterpret_cast<const char *>(&_payload), sizeof(Payload));
  }
template<class Payload>
const char* GpCoreTools::MessageClassId< Payload >::buffer ( ) const [inline]
{return reinterpret_cast<const char *>(this);}
template<class Payload>
const FletcherChecksum& GpCoreTools::MessageClassId< Payload >::checksum ( ) const [inline]
{return _tail;}
template<class Payload>
const MessageClassIdHeader& GpCoreTools::MessageClassId< Payload >::header ( ) const [inline]
{return _head;}
template<class Payload >
bool GpCoreTools::MessageClassId< Payload >::isBigEndianValid ( ) const [inline]
  {
    return _head.isValid() &&
           _head.lengthBigEndian()==sizeof(Payload) &&
           _head.isValid(_tail, payloadBuffer(), sizeof(Payload));
  }
template<class Payload >
bool GpCoreTools::MessageClassId< Payload >::isLittleEndianValid ( ) const [inline]
  {
    return _head.isValid() &&
           _head.lengthLittleEndian()==sizeof(Payload) &&
           _head.isValid(_tail, payloadBuffer(), sizeof(Payload));
  }
template<class Payload >
void GpCoreTools::MessageClassId< Payload >::littleEndianValues ( ) [inline]

References GpCoreTools::MessageClassIdHeader::HeaderSize.

  {
    _head.littleEndianValues();
    _payload.littleEndianValues();
    _tail.add(reinterpret_cast<const char *>(_head.header()), MessageClassIdHeader::HeaderSize);
    _tail.add(reinterpret_cast<const char *>(&_payload), sizeof(Payload));
  }
template<class Payload>
Payload& GpCoreTools::MessageClassId< Payload >::payload ( ) [inline]
{return _payload;}
template<class Payload>
const Payload& GpCoreTools::MessageClassId< Payload >::payload ( ) const [inline]
{return _payload;}
template<class Payload>
const char* GpCoreTools::MessageClassId< Payload >::payloadBuffer ( ) const [inline]
{return reinterpret_cast<const char *>(&_payload);}

The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Defines