00001 00052 #if !defined(_CIGI_BASE_AEROSOL_RESP_INCLUDED_) 00053 #define _CIGI_BASE_AEROSOL_RESP_INCLUDED_ 00054 00055 #include "CigiBasePacket.h" 00056 00057 00058 // ==================================================================== 00059 // preprocessor definitions 00060 // ==================================================================== 00061 00062 #define CIGI_AEROSOL_RESP_PACKET_ID_V3 110 00063 #define CIGI_AEROSOL_RESP_PACKET_SIZE_V3 8 00064 00065 00066 class CigiAerosolRespV3; 00067 00068 00069 class CIGI_SPEC CigiBaseAerosolResp : public CigiBasePacket 00070 { 00071 00072 friend class CigiAerosolRespV3; 00073 00074 public: 00075 00076 //==> Management 00077 00078 //========================================================= 00081 CigiBaseAerosolResp(); 00082 00083 //========================================================= 00086 virtual ~CigiBaseAerosolResp(); 00087 00088 00089 //==> Buffer Packing/Unpacking 00090 00091 //========================================================= 00102 virtual int Pack(CigiBasePacket * Base, Cigi_uint8 * Buff, void *Spec) const=0; 00103 00104 //========================================================= 00114 virtual int Unpack(Cigi_uint8 * Buff, bool Swap, void *Spec) =0; 00115 00116 //========================================================= 00128 virtual int GetCnvt(CigiVersionID &CnvtVersion, 00129 CigiCnvtInfoType::Type &CnvtInfo); 00130 00131 00132 00133 //==> Accessing Member Variable Values functions 00134 00135 //+> RequestID 00136 00137 //========================================================= 00144 int SetRequestID(const Cigi_uint8 RequestIDIn, bool bndchk=true) 00145 { 00146 RequestID = RequestIDIn; 00147 return(CIGI_SUCCESS); 00148 } 00149 00150 //========================================================= 00153 Cigi_uint8 GetRequestID(void) const { return(RequestID); } 00154 00155 00156 //+> LayerID 00157 00158 //========================================================= 00165 int SetLayerID(const Cigi_uint8 LayerIDIn, bool bndchk=true) 00166 { 00167 LayerID = LayerIDIn; 00168 return(CIGI_SUCCESS); 00169 } 00170 00171 //========================================================= 00174 Cigi_uint8 GetLayerID(void) const { return(LayerID); } 00175 00176 00177 //+> AerosolConcentration 00178 00179 //========================================================= 00186 int SetAerosolConcentration(const float AerosolConcentrationIn, bool bndchk=true); 00187 00188 //========================================================= 00191 float GetAerosolConcentration(void) const { return(AerosolConcentration); } 00192 00193 00194 00195 protected: 00196 00197 //==> Member variables 00198 00199 //========================================================= 00203 Cigi_uint8 RequestID; 00204 00205 //========================================================= 00209 Cigi_uint8 LayerID; 00210 00211 //========================================================= 00214 float AerosolConcentration; 00215 00216 00217 }; 00218 00219 #endif // #if !defined(_CIGI_BASE_AEROSOL_RESP_INCLUDED_)