#include <CigiEnvCondReqV3.h>
Inheritance diagram for CigiEnvCondReqV3:
Public Member Functions | |
CigiEnvCondReqV3 () | |
virtual | ~CigiEnvCondReqV3 () |
virtual int | Pack (CigiBasePacket *Base, Cigi_uint8 *Buff, void *Spec) const |
virtual int | Unpack (Cigi_uint8 *Buff, bool Swap, void *Spec) |
Definition at line 57 of file CigiEnvCondReqV3.h.
CigiEnvCondReqV3::CigiEnvCondReqV3 | ( | ) |
General Constructor
Definition at line 71 of file CigiEnvCondReqV3.cpp.
References CigiBaseEnvCondReq::Alt, CIGI_ENV_COND_REQ_PACKET_ID_V3, CIGI_ENV_COND_REQ_PACKET_SIZE_V3, CigiBaseEnvCondReq::Lat, CigiBaseEnvCondReq::Lon, CigiBaseEnvCondReq::Maritime, CigiBasePacket::MinorVersion, CigiBasePacket::PacketID, CigiBasePacket::PacketSize, CigiBaseEnvCondReq::ReqID, CigiBaseEnvCondReq::ReqType, and CigiBasePacket::Version.
00072 { 00073 00074 PacketID = CIGI_ENV_COND_REQ_PACKET_ID_V3; 00075 PacketSize = CIGI_ENV_COND_REQ_PACKET_SIZE_V3; 00076 Version = 3; 00077 MinorVersion = 0; 00078 00079 ReqType = Maritime; 00080 ReqID = 0; 00081 Lat = 0.0; 00082 Lon = 0.0; 00083 Alt = 0.0; 00084 00085 }
CigiEnvCondReqV3::~CigiEnvCondReqV3 | ( | ) | [virtual] |
int CigiEnvCondReqV3::Pack | ( | CigiBasePacket * | Base, | |
Cigi_uint8 * | Buff, | |||
void * | Spec | |||
) | const [virtual] |
The virtual Pack function for CIGI 3
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 CigiBaseEnvCondReq.
Definition at line 102 of file CigiEnvCondReqV3.cpp.
References CigiBaseEnvCondReq::Alt, PackPointerUnion::c, PackPointerUnion::d, PackPointerUnion::l, CigiBaseEnvCondReq::Lat, CigiBaseEnvCondReq::Lon, CigiBasePacket::PacketID, CigiBasePacket::PacketSize, CigiBaseEnvCondReq::ReqID, and CigiBaseEnvCondReq::ReqType.
00103 { 00104 PackPointer CDta; 00105 00106 CigiBaseEnvCondReq * Data = ( CigiBaseEnvCondReq *)Base; 00107 00108 CDta.c = Buff; 00109 00110 *CDta.c++ = PacketID; 00111 *CDta.c++ = PacketSize; 00112 00113 *CDta.c++ = Data->ReqType & 0x0f; 00114 00115 *CDta.c++ = Data->ReqID; 00116 *CDta.l++ = 0; 00117 00118 *CDta.d++ = Data->Lat; 00119 *CDta.d++ = Data->Lon; 00120 *CDta.d++ = Data->Alt; 00121 00122 return(PacketSize); 00123 00124 }
int CigiEnvCondReqV3::Unpack | ( | Cigi_uint8 * | Buff, | |
bool | Swap, | |||
void * | Spec | |||
) | [virtual] |
The virtual Unpack function for CIGI 3
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 CigiBaseEnvCondReq.
Definition at line 129 of file CigiEnvCondReqV3.cpp.
References CigiBaseEnvCondReq::Alt, PackPointerUnion::c, CigiSwap8(), PackPointerUnion::d, PackPointerUnion::l, CigiBaseEnvCondReq::Lat, CigiBaseEnvCondReq::Lon, CigiBasePacket::PacketSize, CigiBaseEnvCondReq::ReqID, and CigiBaseEnvCondReq::ReqType.
00130 { 00131 PackPointer CDta; 00132 00133 CDta.c = Buff; 00134 00135 CDta.c += 2; // Step over packet id and size 00136 00137 ReqType = (ReqTypeGrp)(*CDta.c++ & 0x0f); 00138 00139 ReqID = *CDta.c++; 00140 00141 CDta.l++; 00142 00143 00144 if(!Swap) 00145 { 00146 Lat = *CDta.d++; 00147 Lon = *CDta.d++; 00148 Alt = *CDta.d++; 00149 } 00150 else 00151 { 00152 CigiSwap8(&Lat, CDta.d++); 00153 CigiSwap8(&Lon, CDta.d++); 00154 CigiSwap8(&Alt, CDta.d++); 00155 } 00156 00157 return(PacketSize); 00158 00159 }