#include <CigiTrajectoryDefV2.h>
Inheritance diagram for CigiTrajectoryDefV2:
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 |
Definition at line 58 of file CigiTrajectoryDefV2.h.
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] |
float CigiTrajectoryDefV2::GetAccel | ( | void | ) | const [inline] |
Gets the Accel value.
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
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. |
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
AccelIn | - Acceleration value. | |
bndchk | - Enables (true) or disables (false) bounds checking. |
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
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. |
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 }