CigiBaseRateCtrl Class Reference

#include <CigiBaseRateCtrl.h>

Inheritance diagram for CigiBaseRateCtrl:

CigiBasePacket CigiRateCtrlV1 CigiRateCtrlV2 CigiRateCtrlV3 CigiRateCtrlV3_2 List of all members.

Public Types

 World = 0
 Parent = 0
 Local = 1
enum  CoordSysGrp { World = 0, Parent = 0, Local = 1 }

Public Member Functions

 CigiBaseRateCtrl ()
virtual ~CigiBaseRateCtrl ()
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)
int SetEntityID (const Cigi_uint16 EntityIDIn, bool bndchk=true)
Cigi_uint16 GetEntityID (void) const
int SetXRate (const float XRateIn, bool bndchk=true)
float GetXRate (void) const
int SetYRate (const float YRateIn, bool bndchk=true)
float GetYRate (void) const
int SetZRate (const float ZRateIn, bool bndchk=true)
float GetZRate (void) const
int SetRollRate (const float RollRateIn, bool bndchk=true)
float GetRollRate (void) const
int SetPitchRate (const float PitchRateIn, bool bndchk=true)
float GetPitchRate (void) const
int SetYawRate (const float YawRateIn, bool bndchk=true)
float GetYawRate (void) const

Protected Attributes

Cigi_uint16 EntityID
Cigi_int8 ArtPartIDV1
Cigi_uint8 ArtPartIDV3
bool ApplyToArtPart
CoordSysGrp CoordSys
float XRate
float YRate
float ZRate
float RollRate
float PitchRate
float YawRate

Friends

class CigiRateCtrlV1
class CigiRateCtrlV2
class CigiRateCtrlV3
class CigiRateCtrlV3_2

Detailed Description

Definition at line 94 of file CigiBaseRateCtrl.h.


Member Enumeration Documentation

enum CigiBaseRateCtrl::CoordSysGrp

The enumeration for the CigiBaseLosSegReq Group

Enumerator:
World 
Parent 
Local 

Definition at line 108 of file CigiBaseRateCtrl.h.

00109    {
00110       World=0,
00111       Parent=0,
00112       Local=1
00113    };


Constructor & Destructor Documentation

CigiBaseRateCtrl::CigiBaseRateCtrl (  )  [inline]

General Constructor

Definition at line 121 of file CigiBaseRateCtrl.h.

00121 { };

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

General Destructor

Definition at line 126 of file CigiBaseRateCtrl.h.

00126 { };


Member Function Documentation

virtual int CigiBaseRateCtrl::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 168 of file CigiBaseRateCtrl.h.

References CIGI_RATE_CTRL_PACKET_ID_V2, CIGI_RATE_CTRL_PACKET_ID_V3, CIGI_SUCCESS, CigiVersionID::CigiMajorVersion, CigiCnvtInfoType::CigiCnvtInfoStruct::CnvtPacketID, CigiCnvtInfoType::CigiCnvtInfoStruct::ProcID, and CigiProcessType::ProcStd.

00170    {
00171       CnvtInfo.ProcID = CigiProcessType::ProcStd;
00172 
00173       // V1 & V2 use the same packet id number
00174       if(CnvtVersion.CigiMajorVersion < 3)
00175          CnvtInfo.CnvtPacketID = CIGI_RATE_CTRL_PACKET_ID_V2;
00176       else
00177          CnvtInfo.CnvtPacketID = CIGI_RATE_CTRL_PACKET_ID_V3;
00178 
00179       return(CIGI_SUCCESS);
00180    }

Cigi_uint16 CigiBaseRateCtrl::GetEntityID ( void   )  const [inline]

Gets the EntityID value.

Returns:
the current EntityID.

Definition at line 205 of file CigiBaseRateCtrl.h.

References EntityID.

00205 { return(EntityID); }

float CigiBaseRateCtrl::GetPitchRate ( void   )  const [inline]

Gets the PitchRate value.

Returns:
the current PitchRate.

Definition at line 310 of file CigiBaseRateCtrl.h.

References PitchRate.

00310 { return(PitchRate); }

float CigiBaseRateCtrl::GetRollRate ( void   )  const [inline]

Gets the RollRate value.

Returns:
the current RollRate.

Definition at line 289 of file CigiBaseRateCtrl.h.

References RollRate.

00289 { return(RollRate); }

float CigiBaseRateCtrl::GetXRate ( void   )  const [inline]

Gets the XRate value.

Returns:
the current XRate.

Definition at line 226 of file CigiBaseRateCtrl.h.

References XRate.

00226 { return(XRate); }

float CigiBaseRateCtrl::GetYawRate ( void   )  const [inline]

Gets the YawRate value.

Returns:
the current YawRate.

Definition at line 331 of file CigiBaseRateCtrl.h.

References YawRate.

00331 { return(YawRate); }

float CigiBaseRateCtrl::GetYRate ( void   )  const [inline]

Gets the YRate value.

Returns:
the current YRate.

Definition at line 247 of file CigiBaseRateCtrl.h.

References YRate.

00247 { return(YRate); }

float CigiBaseRateCtrl::GetZRate ( void   )  const [inline]

Gets the ZRate value.

Returns:
the current ZRate.

Definition at line 268 of file CigiBaseRateCtrl.h.

References ZRate.

00268 { return(ZRate); }

virtual int CigiBaseRateCtrl::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 CigiRateCtrlV1, CigiRateCtrlV2, CigiRateCtrlV3, and CigiRateCtrlV3_2.

int CigiBaseRateCtrl::SetEntityID ( const Cigi_uint16  EntityIDIn,
bool  bndchk = true 
) [inline]

Sets the EntityID with bound checking control

Parameters:
EntityIDIn - Specifies the entity to which this packet's data is applied.
bndchk - Enables (true) or disables (false) bounds checking.
Returns:
This returns CIGI_SUCCESS or an error code defined in CigiErrorCodes.h

Definition at line 196 of file CigiBaseRateCtrl.h.

References CIGI_SUCCESS, and EntityID.

00197    {
00198       EntityID = EntityIDIn;
00199       return(CIGI_SUCCESS);
00200    }

int CigiBaseRateCtrl::SetPitchRate ( const float  PitchRateIn,
bool  bndchk = true 
) [inline]

Sets the PitchRate with bound checking control

Parameters:
PitchRateIn - The entity's or art part's pitch rate.
bndchk - Enables (true) or disables (false) bounds checking.
Returns:
This returns CIGI_SUCCESS or an error code defined in CigiErrorCodes.h

Definition at line 301 of file CigiBaseRateCtrl.h.

References CIGI_SUCCESS, and PitchRate.

00302    {
00303       PitchRate = PitchRateIn;
00304       return(CIGI_SUCCESS);
00305    }

int CigiBaseRateCtrl::SetRollRate ( const float  RollRateIn,
bool  bndchk = true 
) [inline]

Sets the RollRate with bound checking control

Parameters:
RollRateIn - The entity's or art part's roll rate.
bndchk - Enables (true) or disables (false) bounds checking.
Returns:
This returns CIGI_SUCCESS or an error code defined in CigiErrorCodes.h

Definition at line 280 of file CigiBaseRateCtrl.h.

References CIGI_SUCCESS, and RollRate.

00281    {
00282       RollRate = RollRateIn;
00283       return(CIGI_SUCCESS);
00284    }

int CigiBaseRateCtrl::SetXRate ( const float  XRateIn,
bool  bndchk = true 
) [inline]

Sets the XRate with bound checking control

Parameters:
XRateIn - The entity's or art part's X velocity.
bndchk - Enables (true) or disables (false) bounds checking.
Returns:
This returns CIGI_SUCCESS or an error code defined in CigiErrorCodes.h

Definition at line 217 of file CigiBaseRateCtrl.h.

References CIGI_SUCCESS, and XRate.

00218    {
00219       XRate = XRateIn;
00220       return(CIGI_SUCCESS);
00221    }

int CigiBaseRateCtrl::SetYawRate ( const float  YawRateIn,
bool  bndchk = true 
) [inline]

Sets the YawRate with bound checking control

Parameters:
YawRateIn - The entity's or art part's yaw rate.
bndchk - Enables (true) or disables (false) bounds checking.
Returns:
This returns CIGI_SUCCESS or an error code defined in CigiErrorCodes.h

Definition at line 322 of file CigiBaseRateCtrl.h.

References CIGI_SUCCESS, and YawRate.

00323    {
00324       YawRate = YawRateIn;
00325       return(CIGI_SUCCESS);
00326    }

int CigiBaseRateCtrl::SetYRate ( const float  YRateIn,
bool  bndchk = true 
) [inline]

Sets the YRate with bound checking control

Parameters:
YRateIn - The entity's or art part's Y velocity.
bndchk - Enables (true) or disables (false) bounds checking.
Returns:
This returns CIGI_SUCCESS or an error code defined in CigiErrorCodes.h

Definition at line 238 of file CigiBaseRateCtrl.h.

References CIGI_SUCCESS, and YRate.

00239    {
00240       YRate = YRateIn;
00241       return(CIGI_SUCCESS);
00242    }

int CigiBaseRateCtrl::SetZRate ( const float  ZRateIn,
bool  bndchk = true 
) [inline]

Sets the ZRate with bound checking control

Parameters:
ZRateIn - The entity's or art part's Z velocity.
bndchk - Enables (true) or disables (false) bounds checking.
Returns:
This returns CIGI_SUCCESS or an error code defined in CigiErrorCodes.h

Definition at line 259 of file CigiBaseRateCtrl.h.

References CIGI_SUCCESS, and ZRate.

00260    {
00261       ZRate = ZRateIn;
00262       return(CIGI_SUCCESS);
00263    }

virtual int CigiBaseRateCtrl::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 CigiRateCtrlV1, CigiRateCtrlV2, CigiRateCtrlV3, and CigiRateCtrlV3_2.


Friends And Related Function Documentation

friend class CigiRateCtrlV1 [friend]

Definition at line 97 of file CigiBaseRateCtrl.h.

friend class CigiRateCtrlV2 [friend]

Definition at line 98 of file CigiBaseRateCtrl.h.

friend class CigiRateCtrlV3 [friend]

Definition at line 99 of file CigiBaseRateCtrl.h.

friend class CigiRateCtrlV3_2 [friend]

Definition at line 100 of file CigiBaseRateCtrl.h.


Member Data Documentation

bool CigiBaseRateCtrl::ApplyToArtPart [protected]

ApplyToArtPart
Flag specifying whether this is applied to an entity or an articulated part.
true - Applied to the articulated part. false - Applied to the entity.

Definition at line 366 of file CigiBaseRateCtrl.h.

Referenced by CigiRateCtrlV1::CigiRateCtrlV1(), CigiRateCtrlV2::CigiRateCtrlV2(), CigiRateCtrlV3::CigiRateCtrlV3(), CigiRateCtrlV3_2::CigiRateCtrlV3_2(), CigiRateCtrlV3_2::Pack(), CigiRateCtrlV3::Pack(), CigiRateCtrlV3_2::SetApplyToArtPart(), CigiRateCtrlV3::SetApplyToArtPart(), CigiRateCtrlV3_2::SetArtPartID(), CigiRateCtrlV3::SetArtPartID(), CigiRateCtrlV2::SetArtPartID(), CigiRateCtrlV1::SetArtPartID(), CigiRateCtrlV3_2::Unpack(), CigiRateCtrlV3::Unpack(), CigiRateCtrlV2::Unpack(), and CigiRateCtrlV1::Unpack().

Cigi_int8 CigiBaseRateCtrl::ArtPartIDV1 [protected]

ArtPartIDV1
The Unique ID for an articulated part of a specific entity.
If -1 - This data is applied to the Entity.
If any other value - This data is applied to the articulated part.

Definition at line 351 of file CigiBaseRateCtrl.h.

Referenced by CigiRateCtrlV1::CigiRateCtrlV1(), CigiRateCtrlV2::CigiRateCtrlV2(), CigiRateCtrlV3::CigiRateCtrlV3(), CigiRateCtrlV3_2::CigiRateCtrlV3_2(), CigiRateCtrlV2::Pack(), CigiRateCtrlV1::Pack(), CigiRateCtrlV3_2::SetApplyToArtPart(), CigiRateCtrlV3::SetApplyToArtPart(), CigiRateCtrlV3_2::SetArtPartID(), CigiRateCtrlV3::SetArtPartID(), CigiRateCtrlV2::SetArtPartID(), CigiRateCtrlV1::SetArtPartID(), CigiRateCtrlV3_2::Unpack(), CigiRateCtrlV3::Unpack(), CigiRateCtrlV2::Unpack(), and CigiRateCtrlV1::Unpack().

Cigi_uint8 CigiBaseRateCtrl::ArtPartIDV3 [protected]

ArtPartIDV3
The Unique ID for an articulated part of a specific entity.

Definition at line 357 of file CigiBaseRateCtrl.h.

Referenced by CigiRateCtrlV1::CigiRateCtrlV1(), CigiRateCtrlV2::CigiRateCtrlV2(), CigiRateCtrlV3::CigiRateCtrlV3(), CigiRateCtrlV3_2::CigiRateCtrlV3_2(), CigiRateCtrlV3_2::Pack(), CigiRateCtrlV3::Pack(), CigiRateCtrlV3_2::SetApplyToArtPart(), CigiRateCtrlV3::SetApplyToArtPart(), CigiRateCtrlV3_2::SetArtPartID(), CigiRateCtrlV3::SetArtPartID(), CigiRateCtrlV2::SetArtPartID(), CigiRateCtrlV1::SetArtPartID(), CigiRateCtrlV3_2::Unpack(), CigiRateCtrlV3::Unpack(), CigiRateCtrlV2::Unpack(), and CigiRateCtrlV1::Unpack().

CoordSysGrp CigiBaseRateCtrl::CoordSys [protected]

ArtPartIDV3
The Coordinate system in which the rates are applied.
0-World/Parent
1-Local

Definition at line 374 of file CigiBaseRateCtrl.h.

Referenced by CigiRateCtrlV1::CigiRateCtrlV1(), CigiRateCtrlV2::CigiRateCtrlV2(), CigiRateCtrlV3::CigiRateCtrlV3(), CigiRateCtrlV3_2::CigiRateCtrlV3_2(), CigiRateCtrlV3_2::Pack(), CigiRateCtrlV3_2::SetCoordSys(), CigiRateCtrlV3_2::Unpack(), CigiRateCtrlV3::Unpack(), CigiRateCtrlV2::Unpack(), and CigiRateCtrlV1::Unpack().

Cigi_uint16 CigiBaseRateCtrl::EntityID [protected]

EntityID
Uniquely identifies the specific entity.

Definition at line 343 of file CigiBaseRateCtrl.h.

Referenced by CigiRateCtrlV1::CigiRateCtrlV1(), CigiRateCtrlV2::CigiRateCtrlV2(), CigiRateCtrlV3::CigiRateCtrlV3(), CigiRateCtrlV3_2::CigiRateCtrlV3_2(), GetEntityID(), CigiRateCtrlV3_2::Pack(), CigiRateCtrlV3::Pack(), CigiRateCtrlV2::Pack(), CigiRateCtrlV1::Pack(), SetEntityID(), CigiRateCtrlV3_2::Unpack(), CigiRateCtrlV3::Unpack(), CigiRateCtrlV2::Unpack(), and CigiRateCtrlV1::Unpack().

float CigiBaseRateCtrl::PitchRate [protected]

PitchRate
The degrees per second velocity about the Y axis.
For an entity - The Geodetic surface NED yaw rotated Y axis.
For an art part - The host entity's body Y axis.

Definition at line 415 of file CigiBaseRateCtrl.h.

Referenced by CigiRateCtrlV1::CigiRateCtrlV1(), CigiRateCtrlV2::CigiRateCtrlV2(), CigiRateCtrlV3::CigiRateCtrlV3(), CigiRateCtrlV3_2::CigiRateCtrlV3_2(), GetPitchRate(), CigiRateCtrlV3_2::Pack(), CigiRateCtrlV3::Pack(), CigiRateCtrlV2::Pack(), CigiRateCtrlV1::Pack(), SetPitchRate(), CigiRateCtrlV3_2::Unpack(), CigiRateCtrlV3::Unpack(), CigiRateCtrlV2::Unpack(), and CigiRateCtrlV1::Unpack().

float CigiBaseRateCtrl::RollRate [protected]

RollRate
The degrees per second velocity about the X axis.
For an entity - The Geodetic surface NED pitch and yaw rotated X axis.
For an art part - The host entity's body X axis.

Definition at line 407 of file CigiBaseRateCtrl.h.

Referenced by CigiRateCtrlV1::CigiRateCtrlV1(), CigiRateCtrlV2::CigiRateCtrlV2(), CigiRateCtrlV3::CigiRateCtrlV3(), CigiRateCtrlV3_2::CigiRateCtrlV3_2(), GetRollRate(), CigiRateCtrlV3_2::Pack(), CigiRateCtrlV3::Pack(), CigiRateCtrlV2::Pack(), CigiRateCtrlV1::Pack(), SetRollRate(), CigiRateCtrlV3_2::Unpack(), CigiRateCtrlV3::Unpack(), CigiRateCtrlV2::Unpack(), and CigiRateCtrlV1::Unpack().

float CigiBaseRateCtrl::XRate [protected]

XRate
The meters per second velocity along the X axis.
For an entity - The Geodetic surface NED X axis.
For an art part - The host entity's body X axis.

Definition at line 382 of file CigiBaseRateCtrl.h.

Referenced by CigiRateCtrlV1::CigiRateCtrlV1(), CigiRateCtrlV2::CigiRateCtrlV2(), CigiRateCtrlV3::CigiRateCtrlV3(), CigiRateCtrlV3_2::CigiRateCtrlV3_2(), GetXRate(), CigiRateCtrlV3_2::Pack(), CigiRateCtrlV3::Pack(), CigiRateCtrlV2::Pack(), CigiRateCtrlV1::Pack(), SetXRate(), CigiRateCtrlV3_2::Unpack(), CigiRateCtrlV3::Unpack(), CigiRateCtrlV2::Unpack(), and CigiRateCtrlV1::Unpack().

float CigiBaseRateCtrl::YawRate [protected]

YawRate
The degrees per second velocity about the Z axis.
For an entity - The Geodetic surface NED Z axis.
For an art part - The host entity's body Z axis.

Definition at line 423 of file CigiBaseRateCtrl.h.

Referenced by CigiRateCtrlV1::CigiRateCtrlV1(), CigiRateCtrlV2::CigiRateCtrlV2(), CigiRateCtrlV3::CigiRateCtrlV3(), CigiRateCtrlV3_2::CigiRateCtrlV3_2(), GetYawRate(), CigiRateCtrlV3_2::Pack(), CigiRateCtrlV3::Pack(), CigiRateCtrlV2::Pack(), CigiRateCtrlV1::Pack(), SetYawRate(), CigiRateCtrlV3_2::Unpack(), CigiRateCtrlV3::Unpack(), CigiRateCtrlV2::Unpack(), and CigiRateCtrlV1::Unpack().

float CigiBaseRateCtrl::YRate [protected]

YRate
The meters per second velocity along the Y axis.
For an entity - The Geodetic surface NED Y axis.
For an art part - The host entity's body Y axis.

Definition at line 390 of file CigiBaseRateCtrl.h.

Referenced by CigiRateCtrlV1::CigiRateCtrlV1(), CigiRateCtrlV2::CigiRateCtrlV2(), CigiRateCtrlV3::CigiRateCtrlV3(), CigiRateCtrlV3_2::CigiRateCtrlV3_2(), GetYRate(), CigiRateCtrlV3_2::Pack(), CigiRateCtrlV3::Pack(), CigiRateCtrlV2::Pack(), CigiRateCtrlV1::Pack(), SetYRate(), CigiRateCtrlV3_2::Unpack(), CigiRateCtrlV3::Unpack(), CigiRateCtrlV2::Unpack(), and CigiRateCtrlV1::Unpack().

float CigiBaseRateCtrl::ZRate [protected]

ZRate
The meters per second velocity along the Z axis.
For an entity - The Geodetic surface NED Z axis.
For an art part - The host entity's body Z axis.

Definition at line 398 of file CigiBaseRateCtrl.h.

Referenced by CigiRateCtrlV1::CigiRateCtrlV1(), CigiRateCtrlV2::CigiRateCtrlV2(), CigiRateCtrlV3::CigiRateCtrlV3(), CigiRateCtrlV3_2::CigiRateCtrlV3_2(), GetZRate(), CigiRateCtrlV3_2::Pack(), CigiRateCtrlV3::Pack(), CigiRateCtrlV2::Pack(), CigiRateCtrlV1::Pack(), SetZRate(), CigiRateCtrlV3_2::Unpack(), CigiRateCtrlV3::Unpack(), CigiRateCtrlV2::Unpack(), and CigiRateCtrlV1::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