CigiBaseSOF Class Reference

#include <CigiBaseSOF.h>

Inheritance diagram for CigiBaseSOF:

CigiBasePacket CigiSOFV1 CigiSOFV2 CigiSOFV3 CigiSOFV3_2 List of all members.

Public Types

 Reset = 0
 Standby = 0
 Operate = 1
 debug = 2
 OfflineMaint = 3
 WGS84 = 0
 HostDefined = 1
enum  IGModeGrp {
  Reset = 0, Standby = 0, Operate = 1, debug = 2,
  OfflineMaint = 3
}
enum  EarthRefModelGrp { WGS84 = 0, HostDefined = 1 }

Public Member Functions

 CigiBaseSOF ()
virtual ~CigiBaseSOF ()
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)
bool GetSwap (void) const
Cigi_int8 GetDatabaseID (void) const
int SetDatabaseID (const Cigi_int8 DataBaseIDIn, bool bndchk=true)
Cigi_uint32 GetFrameCntr (void) const
int SetFrameCntr (const Cigi_uint32 FrameCntrIn, bool bndchk=true)
IGModeGrp GetIGMode (void) const
int SetIGMode (IGModeGrp IGModeIn, bool bndchk=true)
Cigi_uint8 GetIGStatus (void) const
int SetIGStatus (Cigi_uint8 IGStatusIn, bool bndchk=true)

Protected Attributes

bool BSwapEn
Cigi_int8 DatabaseID
Cigi_uint8 IGStatus
Cigi_uint32 FrameCntr
Cigi_uint32 LastRcvdHostFrame
float TimeStampV2
Cigi_uint32 TimeStampV3
Cigi_uint16 ByteSwap
IGModeGrp IGMode
EarthRefModelGrp EarthRefModel
bool TimestampValid

Friends

class CigiSOFV1
class CigiSOFV2
class CigiSOFV3
class CigiSOFV3_2

Detailed Description

The class for the Start Of Frame packet for CIGI

Definition at line 101 of file CigiBaseSOF.h.


Member Enumeration Documentation

enum CigiBaseSOF::EarthRefModelGrp

The enumeration for the Earth Referance Model flag

Enumerator:
WGS84 
HostDefined 

Definition at line 126 of file CigiBaseSOF.h.

00127    {
00128       WGS84=0,
00129       HostDefined=1
00130    };

enum CigiBaseSOF::IGModeGrp

The enumeration for the IG Mode flag

Enumerator:
Reset 
Standby 
Operate 
debug 
OfflineMaint 

Definition at line 114 of file CigiBaseSOF.h.

00115    {
00116       Reset=0,
00117       Standby=0,
00118       Operate=1,
00119       debug=2,
00120       OfflineMaint=3
00121    };


Constructor & Destructor Documentation

CigiBaseSOF::CigiBaseSOF (  ) 

General Constructor

Definition at line 58 of file CigiBaseSOF.cpp.

00059 {
00060 
00061 }

CigiBaseSOF::~CigiBaseSOF (  )  [virtual]

General Destructor

Definition at line 66 of file CigiBaseSOF.cpp.

00067 {
00068 
00069 }


Member Function Documentation

int CigiBaseSOF::GetCnvt ( CigiVersionID CnvtVersion,
CigiCnvtInfoType::Type CnvtInfo 
) [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 80 of file CigiBaseSOF.cpp.

References CIGI_SOF_PACKET_ID_V1, CIGI_SUCCESS, CigiCnvtInfoType::CigiCnvtInfoStruct::CnvtPacketID, CigiCnvtInfoType::CigiCnvtInfoStruct::ProcID, and CigiProcessType::ProcSOF.

00082 {
00083    CnvtInfo.ProcID = CigiProcessType::ProcSOF;
00084 
00085    // All versions of this packet have the same packet id number
00086    CnvtInfo.CnvtPacketID = CIGI_SOF_PACKET_ID_V1;
00087 
00088    return(CIGI_SUCCESS);
00089 }

Cigi_int8 CigiBaseSOF::GetDatabaseID ( void   )  const [inline]

Gets the Database ID value

Returns:
DatabaseID - uniquely identifies the specific database

Definition at line 214 of file CigiBaseSOF.h.

References DatabaseID.

00214 { return(DatabaseID); }

Cigi_uint32 CigiBaseSOF::GetFrameCntr ( void   )  const [inline]

Gets the Frame Counter value

Returns:
Current frame this data represents

Reimplemented in CigiSOFV1, CigiSOFV2, CigiSOFV3, and CigiSOFV3_2.

Definition at line 240 of file CigiBaseSOF.h.

References FrameCntr.

00240 { return(FrameCntr); }

IGModeGrp CigiBaseSOF::GetIGMode ( void   )  const [inline]

Gets the IG Mode value

Returns:
IGMode specifying the commanded IG mode.
0 - Reset or Standby
1 - Operate
2 - debug
3 - Offline Maintenance

Definition at line 268 of file CigiBaseSOF.h.

References IGMode.

00268 { return(IGMode); }

Cigi_uint8 CigiBaseSOF::GetIGStatus ( void   )  const [inline]

Gets the IG Mode value

Returns:
IGStatus specifying the IG status.
0 - Normal Operation
All Other Values - IG System defined

Definition at line 293 of file CigiBaseSOF.h.

References IGStatus.

00293 { return(IGStatus); }

bool CigiBaseSOF::GetSwap ( void   )  const [inline]

Gets the Swap required flag
This is used for V3 to determine if automated swapping is required.

Returns:
This returns the Swap flag
If true, this signals that byte swapping is required for V3 packets.

Definition at line 205 of file CigiBaseSOF.h.

References BSwapEn.

Referenced by CigiIncomingMsg::ProcessIncomingMsg().

00205 { return(BSwapEn); }

virtual int CigiBaseSOF::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 CigiBasePacket.

Implemented in CigiSOFV1, CigiSOFV2, CigiSOFV3, and CigiSOFV3_2.

Referenced by CigiOutgoingMsg::operator<<().

int CigiBaseSOF::SetDatabaseID ( const Cigi_int8  DataBaseIDIn,
bool  bndchk = true 
) [inline]

Sets the Database ID with bound checking control

Parameters:
DataBaseIDIn - Specifies a new database to load.
0 - No Action All Other Values - Load the specified database
bndchk - Enables (true) or disables (false) bounds checking
Returns:
This returns CIGI_SUCCESS or an error code defined in CigiErrorCodes.h

Definition at line 226 of file CigiBaseSOF.h.

References CIGI_SUCCESS, and DatabaseID.

00227    {
00228       DatabaseID = DataBaseIDIn;
00229 
00230       return(CIGI_SUCCESS);
00231    }

int CigiBaseSOF::SetFrameCntr ( const Cigi_uint32  FrameCntrIn,
bool  bndchk = true 
) [inline]

Sets the Frame Counter with bound checking control

Parameters:
FrameCntrIn - Specifies the frame.
bndchk - Enables (true) or disables (false) bounds checking
Returns:
This returns CIGI_SUCCESS or an error code defined in CigiErrorCodes.h

Reimplemented in CigiSOFV1, CigiSOFV2, CigiSOFV3, and CigiSOFV3_2.

Definition at line 250 of file CigiBaseSOF.h.

References CIGI_SUCCESS, and FrameCntr.

00251    {
00252       FrameCntr = FrameCntrIn;
00253 
00254       return(CIGI_SUCCESS);
00255    }

int CigiBaseSOF::SetIGMode ( IGModeGrp  IGModeIn,
bool  bndchk = true 
)

Sets the IG Mode with bound checking control

Parameters:
IGModeIn - Specifies the commanded IG mode.
0 - Reset or Standby
1 - Operate
2 - debug
3 - Offline Maintenance
bndchk - Enables (true) or disables (false) bounds checking
Returns:
This returns CIGI_SUCCESS or an error code defined in CigiErrorCodes.h

Definition at line 104 of file CigiBaseSOF.cpp.

References CIGI_ERROR_VALUE_OUT_OF_RANGE, CIGI_SUCCESS, and IGMode.

00105 {
00106 
00107 #ifndef CIGI_NO_BND_CHK
00108    if(bndchk && ((IGModeIn < 0)||(IGModeIn > 3)))
00109    {
00110 #ifndef CIGI_NO_EXCEPT
00111       throw CigiValueOutOfRangeException("IGMode",IGModeIn,0,3);
00112 #endif
00113       return(CIGI_ERROR_VALUE_OUT_OF_RANGE);
00114    }
00115 #endif
00116 
00117    IGMode = IGModeIn;
00118 
00119    return(CIGI_SUCCESS);
00120 
00121 }

int CigiBaseSOF::SetIGStatus ( Cigi_uint8  IGStatusIn,
bool  bndchk = true 
) [inline]

Sets the IG Mode with bound checking control

Parameters:
IGStatusIn - Specifies the IG status.
0 - Normal Operation
All Other Values - IG System defined
bndchk - Enables (true) or disables (false) bounds checking
Returns:
This returns CIGI_SUCCESS or an error code defined in CigiErrorCodes.h

Definition at line 305 of file CigiBaseSOF.h.

References CIGI_SUCCESS, and IGStatus.

00306    {
00307       IGStatus = IGStatusIn;
00308 
00309       return(CIGI_SUCCESS);
00310    }

virtual int CigiBaseSOF::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 CigiBasePacket.

Implemented in CigiSOFV1, CigiSOFV2, CigiSOFV3, and CigiSOFV3_2.


Friends And Related Function Documentation

friend class CigiSOFV1 [friend]

Definition at line 104 of file CigiBaseSOF.h.

friend class CigiSOFV2 [friend]

Definition at line 105 of file CigiBaseSOF.h.

friend class CigiSOFV3 [friend]

Definition at line 106 of file CigiBaseSOF.h.

friend class CigiSOFV3_2 [friend]

Definition at line 107 of file CigiBaseSOF.h.


Member Data Documentation

bool CigiBaseSOF::BSwapEn [protected]

Swap
Specifies whether the V3 packets must be byte swapped

Definition at line 322 of file CigiBaseSOF.h.

Referenced by CigiSOFV1::CigiSOFV1(), CigiSOFV2::CigiSOFV2(), CigiSOFV3::CigiSOFV3(), CigiSOFV3_2::CigiSOFV3_2(), GetSwap(), CigiSOFV3_2::Unpack(), and CigiSOFV3::Unpack().

Cigi_uint16 CigiBaseSOF::ByteSwap [protected]

Byte Swap Constant for V3
Constant used to determine if byteswapping is needed in V3.

Definition at line 372 of file CigiBaseSOF.h.

Referenced by CigiSOFV1::CigiSOFV1(), CigiSOFV2::CigiSOFV2(), CigiSOFV3::CigiSOFV3(), CigiSOFV3_2::CigiSOFV3_2(), CigiSOFV3_2::Unpack(), and CigiSOFV3::Unpack().

Cigi_int8 CigiBaseSOF::DatabaseID [protected]

DatabaseID
The current Database command
-128 - Indicates database is not available.
-127 - -1 - Identifies database being loaded.
1 - 127 - Identifies database that is loaded.
0 - Indicates IG controls database loading.
All other values - Command to load the specified Database

Definition at line 333 of file CigiBaseSOF.h.

Referenced by CigiSOFV1::CigiSOFV1(), CigiSOFV2::CigiSOFV2(), CigiSOFV3::CigiSOFV3(), CigiSOFV3_2::CigiSOFV3_2(), GetDatabaseID(), CigiSOFV3_2::Pack(), CigiSOFV3::Pack(), CigiSOFV2::Pack(), CigiSOFV1::Pack(), SetDatabaseID(), CigiSOFV3_2::Unpack(), CigiSOFV3::Unpack(), CigiSOFV2::Unpack(), and CigiSOFV1::Unpack().

EarthRefModelGrp CigiBaseSOF::EarthRefModel [protected]

Earth Referance Model
0 - WGS84
1 - System Defined

Definition at line 388 of file CigiBaseSOF.h.

Referenced by CigiSOFV1::CigiSOFV1(), CigiSOFV2::CigiSOFV2(), CigiSOFV3::CigiSOFV3(), CigiSOFV3_2::CigiSOFV3_2(), CigiSOFV3_2::Pack(), CigiSOFV3::Pack(), CigiSOFV3_2::SetEarthRefModel(), CigiSOFV3::SetEarthRefModel(), CigiSOFV3_2::Unpack(), and CigiSOFV3::Unpack().

Cigi_uint32 CigiBaseSOF::FrameCntr [protected]

Frame Counter
Specifies current frame being processed

Definition at line 347 of file CigiBaseSOF.h.

Referenced by CigiSOFV1::CigiSOFV1(), CigiSOFV2::CigiSOFV2(), CigiSOFV3::CigiSOFV3(), CigiSOFV3_2::CigiSOFV3_2(), GetFrameCntr(), CigiSOFV3_2::Pack(), CigiSOFV3::Pack(), CigiSOFV2::Pack(), CigiSOFV1::Pack(), SetFrameCntr(), CigiSOFV3_2::Unpack(), CigiSOFV3::Unpack(), CigiSOFV2::Unpack(), and CigiSOFV1::Unpack().

IGModeGrp CigiBaseSOF::IGMode [protected]

IG Mode
0 - Reset or Standby
1 - Operate
2 - debug
3 - Offline Maintenance

Definition at line 381 of file CigiBaseSOF.h.

Referenced by CigiSOFV1::CigiSOFV1(), CigiSOFV2::CigiSOFV2(), CigiSOFV3::CigiSOFV3(), CigiSOFV3_2::CigiSOFV3_2(), GetIGMode(), CigiSOFV3_2::Pack(), CigiSOFV3::Pack(), CigiSOFV2::Pack(), CigiSOFV1::Pack(), SetIGMode(), CigiSOFV3_2::Unpack(), CigiSOFV3::Unpack(), CigiSOFV2::Unpack(), and CigiSOFV1::Unpack().

Cigi_uint8 CigiBaseSOF::IGStatus [protected]

Swap
The current IG Status
0 - Normal Operation
All Other Values - IG System defined

Definition at line 341 of file CigiBaseSOF.h.

Referenced by GetIGStatus(), CigiSOFV3_2::Pack(), CigiSOFV3::Pack(), CigiSOFV2::Pack(), CigiSOFV1::Pack(), SetIGStatus(), CigiSOFV3_2::Unpack(), CigiSOFV3::Unpack(), CigiSOFV2::Unpack(), and CigiSOFV1::Unpack().

Cigi_uint32 CigiBaseSOF::LastRcvdHostFrame [protected]

Last Received Host Frame
Specifies the host frame received last

Definition at line 353 of file CigiBaseSOF.h.

Referenced by CigiSOFV1::CigiSOFV1(), CigiSOFV2::CigiSOFV2(), CigiSOFV3::CigiSOFV3(), CigiSOFV3_2::CigiSOFV3_2(), CigiSOFV3_2::Pack(), CigiSOFV3_2::Unpack(), CigiSOFV3::Unpack(), CigiSOFV2::Unpack(), and CigiSOFV1::Unpack().

float CigiBaseSOF::TimeStampV2 [protected]

Time Stamp - V2 format
Specifies the time from the beginning of the exercise

Definition at line 359 of file CigiBaseSOF.h.

Referenced by CigiSOFV1::CigiSOFV1(), CigiSOFV2::CigiSOFV2(), CigiSOFV3::CigiSOFV3(), CigiSOFV3_2::CigiSOFV3_2(), CigiSOFV2::Pack(), CigiSOFV3_2::SetTimeStamp(), CigiSOFV3::SetTimeStamp(), CigiSOFV2::SetTimeStamp(), CigiSOFV3_2::Unpack(), CigiSOFV3::Unpack(), and CigiSOFV2::Unpack().

Cigi_uint32 CigiBaseSOF::TimeStampV3 [protected]

Time Stamp - V3 format
Specifies the time from the beginning of the exercise

Definition at line 365 of file CigiBaseSOF.h.

Referenced by CigiSOFV1::CigiSOFV1(), CigiSOFV2::CigiSOFV2(), CigiSOFV3::CigiSOFV3(), CigiSOFV3_2::CigiSOFV3_2(), CigiSOFV3_2::Pack(), CigiSOFV3::Pack(), CigiSOFV3_2::SetTimeStamp(), CigiSOFV3::SetTimeStamp(), CigiSOFV2::SetTimeStamp(), CigiSOFV3_2::Unpack(), CigiSOFV3::Unpack(), and CigiSOFV2::Unpack().

bool CigiBaseSOF::TimestampValid [protected]

Timestame Valid
true - The timestamp is valid and usable
false - The timestamp is not valid.

Definition at line 395 of file CigiBaseSOF.h.

Referenced by CigiSOFV1::CigiSOFV1(), CigiSOFV2::CigiSOFV2(), CigiSOFV3::CigiSOFV3(), CigiSOFV3_2::CigiSOFV3_2(), CigiSOFV3_2::Pack(), CigiSOFV3::Pack(), CigiSOFV2::SetTimeStamp(), CigiSOFV3_2::Unpack(), and CigiSOFV3::Unpack().


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