CigiCompCtrlV3_3.h

Go to the documentation of this file.
00001 
00070 #if !defined(_CIGI_COMP_CTRL_V3_3_INCLUDED_)
00071 #define _CIGI_COMP_CTRL_V3_3_INCLUDED_
00072 
00073 #include "CigiBaseCompCtrl.h"
00074 
00075 
00076 
00077 class CIGI_SPEC CigiCompCtrlV3_3 : public CigiBaseCompCtrl
00078 {
00079 
00080 public:
00081 
00082    //==> Management
00083 
00084    //=========================================================
00087    CigiCompCtrlV3_3();
00088 
00089    //=========================================================
00092    virtual ~CigiCompCtrlV3_3();
00093 
00094 
00095    //==> Buffer Packing/Unpacking
00096 
00097    //=========================================================
00108    virtual int Pack(CigiBasePacket * Base, Cigi_uint8 * Buff, void *Spec) const;
00109 
00110    //=========================================================
00120    virtual int Unpack(Cigi_uint8 * Buff, bool Swap, void *Spec);
00121 
00122    //=========================================================
00134         virtual int GetCnvt(CigiVersionID &CnvtVersion,
00135                        CigiCnvtInfoType::Type &CnvtInfo);
00136 
00137 
00138 
00139    //==> Accessing Member Variable Values functions
00140 
00141    //+> InstanceID
00142 
00143    //=========================================================
00150    int SetInstanceID(const Cigi_uint16 InstanceIDIn, bool bndchk=true)
00151    {
00152       InstanceID = InstanceIDIn;
00153       return(CIGI_SUCCESS);
00154    }
00155 
00156    //=========================================================
00159    Cigi_uint16 GetInstanceID(void) const { return(InstanceID); }
00160 
00161 
00162    //+> CompState
00163 
00164    //=========================================================
00171    int SetCompState(const Cigi_uint8 CompStateIn, bool bndchk=true)
00172    {
00173       CompState = (Cigi_uint16) CompStateIn;
00174       return(CIGI_SUCCESS);
00175    }
00176 
00177    //=========================================================
00180    Cigi_uint8 GetCompState(void)
00181    {
00182       Cigi_uint8 V3State = (Cigi_uint8)((CompState > 0x00ff) ? 0xff : CompState);
00183       return(V3State);
00184    }
00185 
00186 
00187    //+> CompClassV3
00188 
00189    //=========================================================
00210    int SetCompClassV3(const CompClassV3Grp CompClassV3In, bool bndchk=true);
00211 
00212    //=========================================================
00215    CompClassV3Grp GetCompClassV3(void) const { return(CompClassV3); }
00216 
00217 
00218    //+> CompData
00219 
00220    //=========================================================
00229    int SetCompData(const Cigi_uint8 CompDataIn,
00230                        const unsigned int Word,
00231                        const BytePos Pos,
00232                        bool bndchk=true);
00233 
00234    //=========================================================
00243    int SetCompData(const Cigi_int8 CompDataIn,
00244                        const unsigned int Word,
00245                        const BytePos Pos,
00246                        bool bndchk=true);
00247 
00248    //=========================================================
00257    int SetCompData(const Cigi_uint16 CompDataIn,
00258                        const unsigned int Word,
00259                        const HalfWordPos Pos,
00260                        bool bndchk=true);
00261 
00262    //=========================================================
00271    int SetCompData(const Cigi_int16 CompDataIn,
00272                        const unsigned int Word,
00273                        const HalfWordPos Pos,
00274                        bool bndchk=true);
00275 
00276    //=========================================================
00284    int SetCompData(const Cigi_uint32 CompDataIn,
00285                    const unsigned int Word,
00286                    bool bndchk=true);
00287 
00288    //=========================================================
00296    int SetCompData(const Cigi_int32 CompDataIn,
00297                    const unsigned int Word,
00298                    bool bndchk=true);
00299 
00300    //=========================================================
00308    int SetCompData(const float CompDataIn,
00309                    const unsigned int Word,
00310                    bool bndchk=true);
00311 
00312    //=========================================================
00320    int SetCompData(const Cigi_uint64 CompDataIn,
00321                    const unsigned int Pos,
00322                    bool bndchk=true);
00323 
00324    //=========================================================
00332    int SetCompData(const double CompDataIn,
00333                    const unsigned int Pos,
00334                    bool bndchk=true);
00335 
00336 
00337    //=========================================================
00343    Cigi_uint8 GetUCharCompData(const unsigned int Word,
00344                                   const BytePos Pos);
00345 
00346    //=========================================================
00352    Cigi_int8 GetCharCompData(const unsigned int Word,
00353                         const BytePos Pos);
00354 
00355    //=========================================================
00361    Cigi_uint16 GetUShortCompData(const unsigned int Word,
00362                                     const HalfWordPos Pos);
00363 
00364    //=========================================================
00370    Cigi_int16 GetShortCompData(const unsigned int Word,
00371                           const HalfWordPos Pos);
00372 
00373    //=========================================================
00378    Cigi_uint32 GetULongCompData(const unsigned int Word);
00379 
00380    //=========================================================
00385    Cigi_int32 GetLongCompData(const unsigned int Word);
00386 
00387    //=========================================================
00392    float GetFloatCompData(const unsigned int Word);
00393 
00394    //=========================================================
00399    Cigi_uint64 GetI64CompData(const unsigned int Pos);
00400 
00401    //=========================================================
00406    double GetDoubleCompData(const unsigned int Pos);
00407 
00408 
00409 
00410 
00411 protected:
00412 
00413    //==> Conversion Tables
00414    static const int CompClassCnvtSz = 16;
00415    static const CompAssocGrp CompClassV3xV1[CompClassCnvtSz];
00416    static const CompClassV2Grp CompClassV3xV2[CompClassCnvtSz];
00417 
00418 
00419 };
00420 
00421 #endif // #if !defined(_CIGI_COMP_CTRL_V3_3_INCLUDED_)

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