CigiBaseIGMsg Class Reference

#include <CigiBaseIGMsg.h>

Inheritance diagram for CigiBaseIGMsg:

CigiBaseVariableSizePckt CigiBasePacket CigiIGMsgV2 CigiIGMsgV3 List of all members.

Public Member Functions

 CigiBaseIGMsg ()
virtual ~CigiBaseIGMsg ()
virtual int Pack (CigiBasePacket *Base, Cigi_uint8 *Buff, void *Spec) const =0
virtual int Unpack (Cigi_uint8 *Buff, bool Swap, void *Spec)=0
virtual int GetCnvt (CigiVersionID &CnvtVersion, CigiCnvtInfoType::Type &CnvtInfo)
virtual int GetTruePacketSize (CigiBaseVariableSizePckt &refPacket)=0
int SetMsgID (const Cigi_uint16 MsgIDIn, bool bndchk=true)
Cigi_uint16 GetMsgID (void) const
Cigi_int8GetMsg (void)
int GetMsgLen (void) const

Protected Attributes

Cigi_uint16 MsgID
Cigi_int8 Msg [100]
int MsgLen

Friends

class CigiIGMsgV2
class CigiIGMsgV3

Detailed Description

Definition at line 74 of file CigiBaseIGMsg.h.


Constructor & Destructor Documentation

CigiBaseIGMsg::CigiBaseIGMsg (  )  [inline]

General Constructor

Definition at line 87 of file CigiBaseIGMsg.h.

00087 { };

virtual CigiBaseIGMsg::~CigiBaseIGMsg (  )  [inline, virtual]

General Destructor

Definition at line 92 of file CigiBaseIGMsg.h.

00092 { };


Member Function Documentation

virtual int CigiBaseIGMsg::GetCnvt ( CigiVersionID CnvtVersion,
CigiCnvtInfoType::Type CnvtInfo 
) [inline, virtual]

A virtual Conversion Information function. This function provides conversion information for this packet.

Parameters:
CnvtVersion - The CIGI version to which this packet is being converted.
CnvtInfo - The information needed for conversion
Returns:
This returns CIGI_SUCCESS or an error code defined in CigiErrorCodes.h

Reimplemented from CigiBasePacket.

Definition at line 134 of file CigiBaseIGMsg.h.

References CIGI_IG_MSG_PACKET_ID_V2, CIGI_IG_MSG_PACKET_ID_V3, CIGI_SUCCESS, CigiVersionID::CigiMajorVersion, CigiCnvtInfoType::CigiCnvtInfoStruct::CnvtPacketID, CigiCnvtInfoType::CigiCnvtInfoStruct::ProcID, CigiProcessType::ProcNone, CigiProcessType::ProcStd, and CigiProcessType::ProcVarSize.

00135                                                          {
00136       CnvtInfo.ProcID = CigiProcessType::ProcStd;
00137 
00138       if(CnvtVersion.CigiMajorVersion < 2)
00139       {
00140          CnvtInfo.ProcID = CigiProcessType::ProcNone;
00141          CnvtInfo.CnvtPacketID = 0;
00142       }
00143       else
00144       {
00145          CnvtInfo.ProcID = CigiProcessType::ProcVarSize;
00146          if(CnvtVersion.CigiMajorVersion < 3)
00147             CnvtInfo.CnvtPacketID = CIGI_IG_MSG_PACKET_ID_V2;
00148          else
00149             CnvtInfo.CnvtPacketID = CIGI_IG_MSG_PACKET_ID_V3;
00150       }
00151 
00152       return(CIGI_SUCCESS);
00153    }

Cigi_int8* CigiBaseIGMsg::GetMsg ( void   )  [inline]

Gets the Msg value.

Returns:
the current Msg.

Definition at line 196 of file CigiBaseIGMsg.h.

References Msg.

00196 { return(Msg); }

Cigi_uint16 CigiBaseIGMsg::GetMsgID ( void   )  const [inline]

Gets the MsgID value.

Returns:
the current MsgID.

Definition at line 188 of file CigiBaseIGMsg.h.

References MsgID.

00188 { return(MsgID); }

int CigiBaseIGMsg::GetMsgLen ( void   )  const [inline]

Gets the Msg Length.

Returns:
the current MsgLen.

Definition at line 204 of file CigiBaseIGMsg.h.

References MsgLen.

00204 { return(MsgLen); }

virtual int CigiBaseIGMsg::GetTruePacketSize ( CigiBaseVariableSizePckt refPacket  )  [pure virtual]

A pure virtual function to determine the size that the packet will take up when packed. This function is not implemented in this class.

Parameters:
refPacket - A pointer to the current pack point.
Returns:
The size that the packet will take up when packed

Implements CigiBaseVariableSizePckt.

Implemented in CigiIGMsgV2, and CigiIGMsgV3.

virtual int CigiBaseIGMsg::Pack ( CigiBasePacket Base,
Cigi_uint8 Buff,
void *  Spec 
) const [pure virtual]

A pure virtual Pack function. This function is not implemented in this class.

Parameters:
Base - A pointer to the instance of the packet to be packed. (Downcast to CigiBasePacket)
Buff - A pointer to the current pack point.
Spec - A pointer to special data.
Returns:
This returns CIGI_SUCCESS or an error code defined in CigiErrorCodes.h

Implements CigiBaseVariableSizePckt.

Implemented in CigiIGMsgV3.

int CigiBaseIGMsg::SetMsgID ( const Cigi_uint16  MsgIDIn,
bool  bndchk = true 
) [inline]

Sets the MsgID with bound checking control

Parameters:
MsgIDIn - Message ID
bndchk - Enables (true) or disables (false) bounds checking.
Returns:
This returns CIGI_SUCCESS or an error code defined in CigiErrorCodes.h

Definition at line 179 of file CigiBaseIGMsg.h.

References CIGI_SUCCESS, and MsgID.

00180    {
00181       MsgID = MsgIDIn;
00182       return(CIGI_SUCCESS);
00183    }

virtual int CigiBaseIGMsg::Unpack ( Cigi_uint8 Buff,
bool  Swap,
void *  Spec 
) [pure virtual]

A pure virtual Unpack function. This function is not implemented in this class.

Parameters:
Buff - A pointer to the current pack point.
Swap - N/A for V1 & V2
Spec - A pointer to special data.
Returns:
This returns CIGI_SUCCESS or an error code defined in CigiErrorCodes.h

Implements CigiBaseVariableSizePckt.

Implemented in CigiIGMsgV3.


Friends And Related Function Documentation

friend class CigiIGMsgV2 [friend]

Definition at line 77 of file CigiBaseIGMsg.h.

friend class CigiIGMsgV3 [friend]

Definition at line 78 of file CigiBaseIGMsg.h.


Member Data Documentation

Cigi_int8 CigiBaseIGMsg::Msg[100] [protected]

Msg
The message string

Definition at line 222 of file CigiBaseIGMsg.h.

Referenced by CigiIGMsgV2::CigiIGMsgV2(), CigiIGMsgV3::CigiIGMsgV3(), GetMsg(), CigiIGMsgV3::Pack(), CigiIGMsgV3::SetMsg(), CigiIGMsgV2::SetMsg(), and CigiIGMsgV3::Unpack().

Cigi_uint16 CigiBaseIGMsg::MsgID [protected]

MsgID
The message ID

Definition at line 216 of file CigiBaseIGMsg.h.

Referenced by CigiIGMsgV2::CigiIGMsgV2(), CigiIGMsgV3::CigiIGMsgV3(), GetMsgID(), CigiIGMsgV3::Pack(), SetMsgID(), and CigiIGMsgV3::Unpack().

int CigiBaseIGMsg::MsgLen [protected]

MsgLen
The message string length

Definition at line 228 of file CigiBaseIGMsg.h.

Referenced by CigiIGMsgV2::CigiIGMsgV2(), CigiIGMsgV3::CigiIGMsgV3(), GetMsgLen(), CigiIGMsgV3::Pack(), CigiIGMsgV3::SetMsg(), and CigiIGMsgV3::Unpack().


The documentation for this class was generated from the following file:
Generated on Wed Apr 29 09:00:05 2009 for CCL by  doxygen 1.4.7