CigiBaseCollDetVolResp.h

Go to the documentation of this file.
00001 
00055 #if !defined(_CIGI_BASE_COLL_DET_VOL_RESP_INCLUDED_)
00056 #define _CIGI_BASE_COLL_DET_VOL_RESP_INCLUDED_
00057 
00058 #include "CigiBasePacket.h"
00059 
00060 // ====================================================================
00061 // preprocessor definitions
00062 // ====================================================================
00063 
00064 #define CIGI_COLL_DET_VOL_RESP_PACKET_ID_V2 107
00065 #define CIGI_COLL_DET_VOL_RESP_PACKET_SIZE_V2 8
00066 
00067 #define CIGI_COLL_DET_VOL_RESP_PACKET_ID_V3 114
00068 #define CIGI_COLL_DET_VOL_RESP_PACKET_SIZE_V3 16
00069 
00070 
00071 class CigiCollDetVolRespV2;
00072 class CigiCollDetVolRespV3;
00073 
00074 
00075 class CIGI_SPEC CigiBaseCollDetVolResp : public CigiBasePacket
00076 {
00077 
00078 friend class CigiCollDetVolRespV2;
00079 friend class CigiCollDetVolRespV3;
00080 
00081 public:
00082 
00083    //=========================================================
00086    enum CollTypeGrp
00087    {
00088       NonEntity=0,
00089       Entity=1
00090    };
00091 
00092 
00093 
00094 
00095    //==> Management
00096 
00097    //=========================================================
00100    CigiBaseCollDetVolResp();
00101 
00102    //=========================================================
00105    virtual ~CigiBaseCollDetVolResp();
00106 
00107 
00108    //==> Buffer Packing/Unpacking
00109 
00110    //=========================================================
00121    virtual int Pack(CigiBasePacket * Base, Cigi_uint8 * Buff, void *Spec) const=0;
00122 
00123    //=========================================================
00133    virtual int Unpack(Cigi_uint8 * Buff, bool Swap, void *Spec) =0;
00134 
00135    //=========================================================
00147         virtual int GetCnvt(CigiVersionID &CnvtVersion,
00148                        CigiCnvtInfoType::Type &CnvtInfo);
00149 
00150 
00151 
00152    //==> Accessing Member Variable Values functions
00153 
00154    //+> EntityID
00155 
00156    //=========================================================
00163    int SetEntityID(const Cigi_uint16 EntityIDIn, bool bndchk=true)
00164    {
00165       EntityID = EntityIDIn;
00166       return(CIGI_SUCCESS);
00167    }
00168 
00169    //=========================================================
00172    Cigi_uint16 GetEntityID(void) const { return(EntityID); }
00173 
00174 
00175    //+> CollType
00176 
00177    //=========================================================
00186    int SetCollType(const CollTypeGrp CollTypeIn, bool bndchk=true);
00187 
00188    //=========================================================
00191    CollTypeGrp GetCollType(void) const { return(CollType); }
00192 
00193 
00194    //+> CollEntityID
00195 
00196    //=========================================================
00203    int SetCollEntityID(const Cigi_uint16 CollEntityIDIn, bool bndchk=true)
00204    {
00205       CollEntityID = CollEntityIDIn;
00206       return(CIGI_SUCCESS);
00207    }
00208 
00209    //=========================================================
00212    Cigi_uint16 GetCollEntityID(void) const { return(CollEntityID); }
00213 
00214 
00215 
00216 protected:
00217 
00218    //==> Member variables
00219 
00220    //=========================================================
00224    Cigi_uint16 EntityID;
00225 
00226    //=========================================================
00230    Cigi_uint8 VolID;
00231 
00232    //=========================================================
00239    CollTypeGrp CollType;
00240 
00241    //=========================================================
00245    Cigi_uint16 CollEntityID;
00246 
00247    //=========================================================
00251    Cigi_uint8 CollVolID;
00252 
00253 
00254 };
00255 
00256 #endif // #if !defined(_CIGI_BASE_COLL_DET_VOL_RESP_INCLUDED_)

Generated on Wed Apr 29 08:59:55 2009 for CCL by  doxygen 1.4.7