CigiBaseTerrestrialSurfaceCtrl.h

Go to the documentation of this file.
00001 
00055 #if !defined(_CIGI_BASE_TERRESTRIAL_SURFACE_CTRL_INCLUDED_)
00056 #define _CIGI_BASE_TERRESTRIAL_SURFACE_CTRL_INCLUDED_
00057 
00058 #include "CigiBasePacket.h"
00059 
00060 // ====================================================================
00061 // preprocessor definitions
00062 // ====================================================================
00063 
00064 #define CIGI_TERRESTRIAL_SURFACE_CTRL_PACKET_ID_V3 15
00065 #define CIGI_TERRESTRIAL_SURFACE_CTRL_PACKET_SIZE_V3 8
00066 
00067 
00068 class CigiTerrestrialSurfaceCtrlV3;
00069 
00070 
00071 class CIGI_SPEC CigiBaseTerrestrialSurfaceCtrl : public CigiBasePacket
00072 {
00073 
00074 friend class CigiTerrestrialSurfaceCtrlV3;
00075 
00076 public:
00077 
00078    //=========================================================
00081    enum ScopeGrp
00082    {
00083       Global=0,
00084       Regional=1,
00085       Entity=2
00086    };
00087 
00088 
00089 
00090 
00091    //==> Management
00092 
00093    //=========================================================
00096    CigiBaseTerrestrialSurfaceCtrl();
00097 
00098    //=========================================================
00101    virtual ~CigiBaseTerrestrialSurfaceCtrl();
00102 
00103 
00104    //==> Buffer Packing/Unpacking
00105 
00106    //=========================================================
00117    virtual int Pack(CigiBasePacket * Base, Cigi_uint8 * Buff, void *Spec) const=0;
00118 
00119    //=========================================================
00129    virtual int Unpack(Cigi_uint8 * Buff, bool Swap, void *Spec) =0;
00130 
00131    //=========================================================
00143         virtual int GetCnvt(CigiVersionID &CnvtVersion,
00144                        CigiCnvtInfoType::Type &CnvtInfo);
00145 
00146 
00147 
00148    //==> Accessing Member Variable Values functions
00149 
00150    //+> EntityRgnID
00151 
00152    //=========================================================
00159    int SetEntityRgnID(const Cigi_uint16 EntityRgnIDIn, bool bndchk=true)
00160    {
00161       EntityRgnID = EntityRgnIDIn;
00162       return(CIGI_SUCCESS);
00163    }
00164 
00165    //=========================================================
00168    Cigi_uint16 GetEntityRgnID(void) const { return(EntityRgnID); }
00169 
00170 
00171    //+> SurfaceCondID
00172 
00173    //=========================================================
00180    int SetSurfaceCondID(const Cigi_uint16 SurfaceCondIDIn, bool bndchk=true)
00181    {
00182       SurfaceCondID = SurfaceCondIDIn;
00183       return(CIGI_SUCCESS);
00184    }
00185 
00186    //=========================================================
00189    Cigi_uint16 GetSurfaceCondID(void) const { return(SurfaceCondID); }
00190 
00191 
00192    //+> SurfaceCondEn
00193 
00194    //=========================================================
00201    int SetSurfaceCondEn(const bool SurfaceCondEnIn, bool bndchk=true)
00202    {
00203       SurfaceCondEn = SurfaceCondEnIn;
00204       return(CIGI_SUCCESS);
00205    }
00206 
00207    //=========================================================
00210    bool GetSurfaceCondEn(void) const { return(SurfaceCondEn); }
00211 
00212 
00213    //+> Scope
00214 
00215    //=========================================================
00225    int SetScope(const ScopeGrp ScopeIn, bool bndchk=true);
00226 
00227    //=========================================================
00230    ScopeGrp GetScope(void) const { return(Scope); }
00231 
00232 
00233    //+> Severity
00234 
00235    //=========================================================
00242    int SetSeverity(const Cigi_uint8 SeverityIn, bool bndchk=true);
00243 
00244    //=========================================================
00247    Cigi_uint8 GetSeverity(void) const { return(Severity); }
00248 
00249 
00250    //+> Coverage
00251 
00252    //=========================================================
00259    int SetCoverage(const Cigi_uint8 CoverageIn, bool bndchk=true);
00260 
00261    //=========================================================
00264    Cigi_uint8 GetCoverage(void) const { return(Coverage); }
00265 
00266 
00267 
00268 protected:
00269 
00270    //==> Member variables
00271 
00272    //=========================================================
00276    Cigi_uint16 EntityRgnID;
00277 
00278    //=========================================================
00282    Cigi_uint16 SurfaceCondID;
00283 
00284    //=========================================================
00288    bool SurfaceCondEn;
00289 
00290    //=========================================================
00298    ScopeGrp Scope;
00299 
00300    //=========================================================
00303    Cigi_uint8 Severity;
00304 
00305    //=========================================================
00309    Cigi_uint8 Coverage;
00310 
00311 
00312 };
00313 
00314 #endif // #if !defined(_CIGI_BASE_TERRESTRIAL_SURFACE_CTRL_INCLUDED_)

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