CigiTrajectoryDefV2 Class Reference

#include <CigiTrajectoryDefV2.h>

Inheritance diagram for CigiTrajectoryDefV2:

CigiBaseTrajectoryDef CigiBasePacket List of all members.

Public Member Functions

 CigiTrajectoryDefV2 ()
virtual ~CigiTrajectoryDefV2 ()
virtual int Pack (CigiBasePacket *Base, Cigi_uint8 *Buff, void *Spec) const
virtual int Unpack (Cigi_uint8 *Buff, bool Swap, void *Spec)
int SetAccel (const float AccelIn, bool bndchk=true)
float GetAccel (void) const

Detailed Description

Definition at line 58 of file CigiTrajectoryDefV2.h.


Constructor & Destructor Documentation

CigiTrajectoryDefV2::CigiTrajectoryDefV2 (  ) 

General Constructor

Definition at line 82 of file CigiTrajectoryDefV2.cpp.

References CigiBaseTrajectoryDef::Accel, CigiBaseTrajectoryDef::AccelX, CigiBaseTrajectoryDef::AccelY, CigiBaseTrajectoryDef::AccelZ, CIGI_TRAJECTORY_DEF_PACKET_ID_V2, CIGI_TRAJECTORY_DEF_PACKET_SIZE_V2, CigiBaseTrajectoryDef::EntityID, CigiBasePacket::MinorVersion, CigiBasePacket::PacketID, CigiBasePacket::PacketSize, CigiBaseTrajectoryDef::RetardationRate, CigiBaseTrajectoryDef::TermVel, CigiBasePacket::Version, CigiBaseTrajectoryDef::Xoff, CigiBaseTrajectoryDef::Yoff, and CigiBaseTrajectoryDef::Zoff.

00083 {
00084 
00085    PacketID = CIGI_TRAJECTORY_DEF_PACKET_ID_V2;
00086    PacketSize = CIGI_TRAJECTORY_DEF_PACKET_SIZE_V2;
00087    Version = 2;
00088    MinorVersion = 0;
00089 
00090    EntityID = 0;
00091    Accel = 0.0;
00092    RetardationRate = 0.0;
00093    TermVel = 0.0;
00094    Xoff = 0.0;
00095    Yoff = 0.0;
00096    Zoff = 0.0;
00097    AccelX = 0.0;
00098    AccelY = 0.0;
00099    AccelZ = 0.0;
00100 
00101 }

CigiTrajectoryDefV2::~CigiTrajectoryDefV2 (  )  [virtual]

General Destructor

Definition at line 106 of file CigiTrajectoryDefV2.cpp.

00107 {
00108 
00109 }


Member Function Documentation

float CigiTrajectoryDefV2::GetAccel ( void   )  const [inline]

Gets the Accel value.

Returns:
the current Accel.

Definition at line 127 of file CigiTrajectoryDefV2.h.

00127 { return(Accel); }

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

The virtual Pack function for CIGI 2

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 - This is not used in this class.
Returns:
This returns CIGI_SUCCESS or an error code defined in CigiErrorCodes.h

Implements CigiBaseTrajectoryDef.

Definition at line 118 of file CigiTrajectoryDefV2.cpp.

References CigiBaseTrajectoryDef::Accel, PackPointerUnion::c, CIGI_SCOPY2, CIGI_SCOPY4, CIGI_TRAJECTORY_DEF_PACKET_SIZE_V2, PackPointerUnion::d, CigiBaseTrajectoryDef::EntityID, PackPointerUnion::f, CigiBasePacket::PacketID, CigiBasePacket::PacketSize, CigiBaseTrajectoryDef::RetardationRate, PackPointerUnion::s, and CigiBaseTrajectoryDef::TermVel.

00119 {
00120    double DBuf[6];
00121 
00122    Cigi_uint8 *tBuf = (Cigi_uint8 *)DBuf;
00123 
00124    PackPointer CDta;
00125 
00126    CigiBaseTrajectoryDef * Data = ( CigiBaseTrajectoryDef *)Base;
00127 
00128    CDta.d = DBuf;
00129 
00130    *CDta.c++ = PacketID;
00131    *CDta.c++ = PacketSize;
00132 
00133    CIGI_SCOPY2(CDta.s++, &Data->EntityID);
00134    CIGI_SCOPY4(CDta.f++, &Data->Accel);
00135    CIGI_SCOPY4(CDta.f++, &Data->RetardationRate);
00136    CIGI_SCOPY4(CDta.f++, &Data->TermVel);
00137 
00138    memcpy(Buff,tBuf,CIGI_TRAJECTORY_DEF_PACKET_SIZE_V2);
00139 
00140    return(PacketSize);
00141 
00142 }

int CigiTrajectoryDefV2::SetAccel ( const float  AccelIn,
bool  bndchk = true 
) [inline]

Sets the Accel with bound checking control

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

Definition at line 117 of file CigiTrajectoryDefV2.h.

References CIGI_SUCCESS.

00118    {
00119       Accel = AccelIn;
00120       AccelZ = Accel;
00121       return(CIGI_SUCCESS);
00122    }

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

The virtual Unpack function for CIGI 2

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

Implements CigiBaseTrajectoryDef.

Definition at line 147 of file CigiTrajectoryDefV2.cpp.

References CigiBaseTrajectoryDef::Accel, CigiBaseTrajectoryDef::AccelX, CigiBaseTrajectoryDef::AccelY, CigiBaseTrajectoryDef::AccelZ, PackPointerUnion::c, CIGI_SCOPY2, CIGI_SCOPY4, CIGI_TRAJECTORY_DEF_PACKET_SIZE_V2, PackPointerUnion::d, CigiBaseTrajectoryDef::EntityID, PackPointerUnion::f, CigiBasePacket::PacketSize, CigiBaseTrajectoryDef::RetardationRate, PackPointerUnion::s, CigiBaseTrajectoryDef::TermVel, CigiBaseTrajectoryDef::Xoff, CigiBaseTrajectoryDef::Yoff, and CigiBaseTrajectoryDef::Zoff.

00148 {
00149    double DBuf[6];
00150 
00151    Cigi_uint8 *tBuf = (Cigi_uint8 *)DBuf;
00152 
00153    PackPointer CDta;
00154 
00155    memcpy(tBuf,Buff,CIGI_TRAJECTORY_DEF_PACKET_SIZE_V2);
00156 
00157    CDta.d = DBuf;
00158 
00159    CDta.c += 2;  // Step over packet id and size
00160 
00161    CIGI_SCOPY2(&EntityID, CDta.s++);
00162    CIGI_SCOPY4(&Accel, CDta.f++);
00163    CIGI_SCOPY4(&RetardationRate, CDta.f++);
00164    CIGI_SCOPY4(&TermVel, CDta.f++);
00165 
00166    Xoff = 0.0;
00167    Yoff = 0.0;
00168    Zoff = 0.0;
00169    AccelX = 0.0f;
00170    AccelY = 0.0f;
00171    AccelZ = Accel;
00172 
00173    return(PacketSize);
00174 
00175 }


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