00001 00040 #define _EXPORT_CCL_ 00041 00042 00043 #include "CigiVertexSymbolDataV3_3.h" 00044 #include "CigiExceptions.h" 00045 #include "CigiSwapping.h" 00046 00047 00048 00049 // ==================================================================== 00050 // Construction/Destruction 00051 // ==================================================================== 00052 00053 // ================================================ 00054 // CigiBaseEntityCtrl 00055 // vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv 00056 CigiVertexSymbolDataV3_3::CigiVertexSymbolDataV3_3(void) 00057 { 00058 VertexU = 0.0f; 00059 VertexV = 0.0f; 00060 } 00061 00062 // ================================================ 00063 // ~CigiBaseEntityCtrl 00064 // vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv 00065 CigiVertexSymbolDataV3_3::~CigiVertexSymbolDataV3_3(void) 00066 { 00067 } 00068 00069 00070 // ==================================================================== 00071 // Pack and Unpack 00072 // ==================================================================== 00073 00074 // ================================================ 00075 // Pack 00076 // vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv 00077 int CigiVertexSymbolDataV3_3::Pack(CigiBaseVertexSymbolData * Base, Cigi_uint8 * Buff) const 00078 { 00079 PackPointer CDta; 00080 00081 CigiVertexSymbolDataV3_3 * Data = 00082 ( CigiVertexSymbolDataV3_3 *)Base; 00083 00084 CDta.c = Buff; 00085 00086 *CDta.f++ = Data->VertexU; 00087 *CDta.f++ = Data->VertexV; 00088 00089 return(CIGI_VERTEX_SYMBOL_DATA_SIZE_V3_3); 00090 00091 } 00092 00093 // ================================================ 00094 // Unpack 00095 // vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv 00096 int CigiVertexSymbolDataV3_3::Unpack(Cigi_uint8 * Buff, bool Swap) 00097 { 00098 PackPointer CDta; 00099 unsigned char HDta = 0; 00100 00101 CDta.c = Buff; 00102 00103 if(!Swap) 00104 { 00105 VertexU = *CDta.f++; 00106 VertexV = *CDta.f++; 00107 } 00108 else 00109 { 00110 CigiSwap4(&VertexU, CDta.f++); 00111 CigiSwap4(&VertexV, CDta.f++); 00112 } 00113 00114 return(CIGI_VERTEX_SYMBOL_DATA_SIZE_V3_3); 00115 00116 } 00117 00118 00119 00120