00001
00054 #if !defined(_CIGI_WEATHER_CTRL_V3_INCLUDED_)
00055 #define _CIGI_WEATHER_CTRL_V3_INCLUDED_
00056
00057 #include "CigiBaseWeatherCtrl.h"
00058
00059
00060
00061 class CIGI_SPEC CigiWeatherCtrlV3 : public CigiBaseWeatherCtrl
00062 {
00063
00064 public:
00065
00066
00067
00068
00071 CigiWeatherCtrlV3();
00072
00073
00076 virtual ~CigiWeatherCtrlV3();
00077
00078
00079
00080
00081
00092 virtual int Pack(CigiBasePacket * Base, Cigi_uint8 * Buff, void *Spec) const;
00093
00094
00104 virtual int Unpack(Cigi_uint8 * Buff, bool Swap, void *Spec);
00105
00106
00107
00108
00109
00110
00111
00112
00119 int SetRegionID(const Cigi_uint16 RegionIDIn, bool bndchk=true)
00120 {
00121 RegionID = RegionIDIn;
00122 return(CIGI_SUCCESS);
00123 }
00124
00125
00128 Cigi_uint16 GetRegionID(void) const { return(RegionID); }
00129
00130
00131
00132
00133
00140 int SetLayerID(const Cigi_uint8 LayerIDIn, bool bndchk=true);
00141
00142
00145 Cigi_uint8 GetLayerID(void) const { return(LayerID); }
00146
00147
00148
00149
00150
00157 int SetHumidity(const Cigi_uint8 HumidityIn, bool bndchk=true);
00158
00159
00162 Cigi_uint8 GetHumidity(void) const { return(Humidity); }
00163
00164
00165
00166
00167
00174 int SetRandomLightningEn(const bool RandomLightningEnIn, bool bndchk=true)
00175 {
00176 RandomLightningEn = RandomLightningEnIn;
00177 return(CIGI_SUCCESS);
00178 }
00179
00180
00183 bool GetRandomLightningEn(void) const { return(RandomLightningEn); }
00184
00185
00186
00187
00188
00211 int SetCloudType(const CloudTypeGrp CloudTypeIn, bool bndchk=true);
00212
00213
00216 CloudTypeGrp GetCloudType(void) const { return(CloudType); }
00217
00218
00219
00220
00221
00231 int SetScope(const ScopeGrp ScopeIn, bool bndchk=true);
00232
00233
00236 ScopeGrp GetScope(void) const { return(Scope); }
00237
00238
00239
00240
00241
00248 int SetVertWindSp(const float VertWindSpIn, bool bndchk=true)
00249 {
00250 VertWindSp = VertWindSpIn;
00251 return(CIGI_SUCCESS);
00252 }
00253
00254
00257 float GetVertWindSp(void) const { return(VertWindSp); }
00258
00259
00260
00261
00262
00269 int SetWindDir(const float WindDirIn, bool bndchk=true);
00270
00271
00274 float GetWindDir(void) const { return(WindDir); }
00275
00276
00277
00278
00279
00286 int SetBaroPress(const float BaroPressIn, bool bndchk=true)
00287 {
00288 BaroPress = BaroPressIn;
00289 return(CIGI_SUCCESS);
00290 }
00291
00292
00295 float GetBaroPress(void) const { return(BaroPress); }
00296
00297
00298
00299
00300
00307 int SetAerosol(const float AerosolIn, bool bndchk=true)
00308 {
00309 Aerosol = AerosolIn;
00310 return(CIGI_SUCCESS);
00311 }
00312
00313
00316 float GetAerosol(void) const { return(Aerosol); }
00317
00318
00319
00320 };
00321
00322 #endif // #if !defined(_CIGI_WEATHER_CTRL_V3_INCLUDED_)