00001 00039 #if !defined(_CIGI_BASE_CIRCLE_SYMBOL_DATA_INCLUDED_) 00040 #define _CIGI_BASE_CIRCLE_SYMBOL_DATA_INCLUDED_ 00041 00042 00043 #include "CigiTypes.h" 00044 #include "CigiErrorCodes.h" 00045 00046 // ==================================================================== 00047 // preprocessor definitions 00048 // ==================================================================== 00049 00050 #define CIGI_CIRCLE_SYMBOL_DATA_SIZE_V3_3 24 00051 00052 00053 class CigiCircleSymbolDataV3_3; 00054 00055 //========================================================= 00058 class CIGI_SPEC CigiBaseCircleSymbolData 00059 { 00060 00061 friend class CigiCircleSymbolDataV3_3; 00062 00063 public: 00064 00065 00066 //==> Management 00067 00068 //========================================================= 00071 CigiBaseCircleSymbolData(void); 00072 00073 //========================================================= 00076 virtual ~CigiBaseCircleSymbolData(void); 00077 00078 00079 //==> Buffer Packing/Unpacking 00080 00081 //========================================================= 00091 virtual int Pack(CigiBaseCircleSymbolData * 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 //+> CenterUPosition 00109 00110 //========================================================= 00118 int SetCenterUPosition(const float CenterUPositionIn, bool bndchk=true) 00119 { 00120 CenterUPosition = CenterUPositionIn; 00121 return(CIGI_SUCCESS); 00122 } 00123 00124 //========================================================= 00128 float GetCenterUPosition(void) const { return(CenterUPosition); } 00129 00130 00131 //+> CenterVPosition 00132 00133 //========================================================= 00141 int SetCenterVPosition(const float CenterVPositionIn, bool bndchk=true) 00142 { 00143 CenterVPosition = CenterVPositionIn; 00144 return(CIGI_SUCCESS); 00145 } 00146 00147 //========================================================= 00151 float GetCenterVPosition(void) const { return(CenterVPosition); } 00152 00153 00154 //+> Radius 00155 00156 //========================================================= 00163 int SetRadius(const float RadiusIn, bool bndchk=true); 00164 00165 //========================================================= 00169 float GetRadius(void) const { return(Radius); } 00170 00171 00172 //+> InnerRadius 00173 00174 //========================================================= 00182 int SetInnerRadius(const float InnerRadiusIn, bool bndchk=true); 00183 00184 //========================================================= 00188 float GetInnerRadius(void) const { return(InnerRadius); } 00189 00190 00191 //+> StartAngle 00192 00193 //========================================================= 00201 int SetStartAngle(const float StartAngleIn, bool bndchk=true); 00202 00203 //========================================================= 00207 float GetStartAngle(void) const { return(StartAngle); } 00208 00209 00210 //+> EndAngle 00211 00212 //========================================================= 00220 int SetEndAngle(const float EndAngleIn, bool bndchk=true); 00221 00222 //========================================================= 00226 float GetEndAngle(void) const { return(EndAngle); } 00227 00228 00229 00230 protected: 00231 00232 //==> Member variables 00233 00234 //========================================================= 00239 float CenterUPosition; 00240 00241 //========================================================= 00246 float CenterVPosition; 00247 00248 //========================================================= 00252 float Radius; 00253 00254 //========================================================= 00258 float InnerRadius; 00259 00260 //========================================================= 00265 float StartAngle; 00266 00267 //========================================================= 00272 float EndAngle; 00273 00274 00275 }; 00276 00277 00278 00279 #endif // #if !defined(_CIGI_BASE_CIRCLE_SYMBOL_DATA_INCLUDED_) 00280