CigiBaseVertexSymbolData.h

Go to the documentation of this file.
00001 
00039 #if !defined(_CIGI_BASE_VERTEX_SYMBOL_DATA_INCLUDED_)
00040 #define _CIGI_BASE_VERTEX_SYMBOL_DATA_INCLUDED_
00041 
00042 
00043 #include "CigiTypes.h"
00044 #include "CigiErrorCodes.h"
00045 
00046 // ====================================================================
00047 // preprocessor definitions
00048 // ====================================================================
00049 
00050 #define CIGI_VERTEX_SYMBOL_DATA_SIZE_V3_3 8
00051 
00052 
00053 class CigiVertexSymbolDataV3_3;
00054 
00055 //=========================================================
00058 class CIGI_SPEC CigiBaseVertexSymbolData
00059 {
00060 
00061    friend class CigiVertexSymbolDataV3_3;
00062 
00063 public:
00064 
00065 
00066    //==> Management
00067 
00068    //=========================================================
00071    CigiBaseVertexSymbolData(void) {};
00072 
00073    //=========================================================
00076    virtual ~CigiBaseVertexSymbolData(void) {};
00077 
00078 
00079    //==> Buffer Packing/Unpacking
00080 
00081    //=========================================================
00091    virtual int Pack(CigiBaseVertexSymbolData * Base, Cigi_uint8 * Buff) const=0;
00092 
00093    //=========================================================
00102    virtual int Unpack(Cigi_uint8 * Buff, bool Swap) =0;
00103 
00104 
00105    //==> Accessing Member Variable Values functions
00106 
00107 
00108    //+> Vertices
00109 
00110    //=========================================================
00118    int SetVertex(const float VertexUIn, const float VertexVIn, bool bndchk=true)
00119    {
00120       VertexU = VertexUIn;
00121       VertexV = VertexVIn;
00122       return(CIGI_SUCCESS);
00123    }
00124 
00125    //=========================================================
00134    int GetVertex(float &VertexUIn, float &VertexVIn)
00135    {
00136       VertexUIn = VertexU;
00137       VertexVIn = VertexV;
00138       return(CIGI_SUCCESS);
00139    }
00140 
00141 
00142    //+> VertexU
00143 
00144    //=========================================================
00151    int SetVertexU(const float VertexUIn, bool bndchk=true)
00152    {
00153       VertexU = VertexUIn;
00154       return(CIGI_SUCCESS);
00155    }
00156 
00157    //=========================================================
00161    float GetVertexU(void) const { return(VertexU); }
00162 
00163 
00164    //+> VertexV
00165 
00166    //=========================================================
00173    int SetVertexV(const float VertexVIn, bool bndchk=true)
00174    {
00175       VertexV = VertexVIn;
00176       return(CIGI_SUCCESS);
00177    }
00178 
00179    //=========================================================
00183    float GetVertexV(void) const { return(VertexV); }
00184 
00185 
00186 
00187 protected:
00188 
00189    //==> Member variables
00190 
00191    //=========================================================
00195    float VertexU;
00196 
00197    //=========================================================
00201    float VertexV;
00202 
00203 
00204 };
00205 
00206 
00207 
00208 #endif   //  #if !defined(_CIGI_BASE_VERTEX_SYMBOL_DATA_INCLUDED_)
00209 

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