radarlib 1.4.6
odimh5v20_classes.hpp
Go to the documentation of this file.
1/*
2 * Radar Library
3 *
4 * Copyright (C) 2009-2010 ARPA-SIM <urpsim@smr.arpa.emr.it>
5 *
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License as published by
8 * the Free Software Foundation; either version 2 of the License, or
9 * (at your option) any later version.
10 *
11 * This program is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU General Public License for more details.
15 *
16 * You should have received a copy of the GNU General Public License along
17 * with this program; if not, write to the Free Software Foundation, Inc.,
18 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
19 *
20 * Author: Guido Billi <guidobilli@gmail.com>
21 */
22
23
27
28#ifndef __RADAR_ODIMH5V20_CLASES_HPP__
29#define __RADAR_ODIMH5V20_CLASES_HPP__
30
31#include <radarlib/defs.h>
36
37#include <set>
38
39namespace OdimH5v20
40{
41
42/*===========================================================================*/
43/* FORWARD DECLARATIONS */
44/*===========================================================================*/
45
46class OdimFactory;
47class OdimObject;
48class OdimDataset;
49class OdimData;
50class OdimQuality;
52class PolarVolume;
53class PolarScan;
54class PolarScanData;
55class Object_2D;
57class ImageObject;
58class CompObject;
59class XsecObject;
60class Product_2D;
62class Product_PPI;
63class Product_CAPPI;
64class Product_PCAPPI;
65class Product_ETOP;
66class Product_MAX;
67class Product_RR;
68class Product_VIL;
69class Product_LBM;
70class Product_COMP;
72class Product_Panel;
73class Product_XSEC;
74class Product_RHI;
75class Product_VSP;
76class Product_HSP;
77class Product_2D_Data;
78class Vertical_Product_2D_Data;
79/*===========================================================================*/
80/* ODIM ROOT OBJECT */
81/*===========================================================================*/
82
94class RADAR_API OdimObject : public WHATRootMetadata
95{
96public:
97 virtual ~OdimObject();
98
104 virtual std::string getConventions();
110 virtual void setConventions();
111
119 virtual H5::H5File* getFile();
127 virtual H5::Group* getH5Object();
128
135 virtual bool existWhat();
136
143 virtual bool existWhere();
150 virtual bool existHow();
151
159 virtual MetadataGroup* getWhat();
167 virtual MetadataGroup* getWhere();
175
176 virtual MetadataGroup* getHow();
177 virtual std::string getObject ();
178 virtual void setObject (const std::string& val);
179 virtual std::string getVersion ();
180 virtual void setVersion (const std::string& val);
181 virtual time_t getDateTime ();
182 virtual void setDateTime (const time_t val);
183 virtual SourceInfo getSource ();
184 virtual void setSource (const SourceInfo& val);
185
192 virtual int getDatasetCount();
201 virtual OdimDataset* createDataset();
211 virtual OdimDataset* getDataset(int index);
220 virtual void removeDataset(int index);
221
222
223protected:
224 H5::H5File* file;
225 H5::Group* group;
226 MetadataGroup* meta_what;
227 MetadataGroup* meta_where;
228 MetadataGroup* meta_how;
229
230 /* uses cannot directly create OdimH5 objects, only factories provide functions to do it */
231 friend class OdimFactory;
232 OdimObject(H5::H5File* file);
233
234 virtual H5::Group* createDatasetGroup();
235 virtual H5::Group* getDatasetGroup(int num);
236
237 virtual void setMandatoryInformations ();
238 virtual void checkMandatoryInformations ();
239
240};
241
242/*===========================================================================*/
243/* ODIM DATASET */
244/*===========================================================================*/
245
256class RADAR_API OdimDataset
257{
258public:
259 virtual ~OdimDataset();
260
268 virtual H5::Group* getH5Object();
269
276 virtual bool existWhat();
277
284 virtual bool existWhere();
291 virtual bool existHow();
299 virtual MetadataGroup* getWhat();
307 virtual MetadataGroup* getWhere();
315 virtual MetadataGroup* getHow();
316
323 virtual int getDataCount();
331 virtual OdimData* createData();
341 virtual OdimData* getData(int index);
349 virtual void removeData(int index);
350
351protected:
352 H5::Group* group;
353 MetadataGroup* meta_what;
354 MetadataGroup* meta_where;
355 MetadataGroup* meta_how;
356
357 /* uses cannot directly create OdimH5 objects, only factories provide functions to do it */
358 friend class OdimObject;
359 OdimDataset(H5::Group* group);
360
361 virtual H5::Group* createDataGroup();
362 virtual H5::Group* getDataGroup(int num);
363};
364
365/*===========================================================================*/
366/* ODIM DATA */
367/*===========================================================================*/
368
379class RADAR_API OdimData
380{
381public:
382 virtual ~OdimData();
383
391 virtual H5::Group* getH5Object();
398 virtual bool existWhat();
399
406 virtual bool existWhere();
413 virtual bool existHow();
421 virtual MetadataGroup* getWhat();
429 virtual MetadataGroup* getWhere();
437 virtual MetadataGroup* getHow();
447 virtual H5::AtomType getDataType();
453 virtual int getDataWidth();
459 virtual int getDataHeight();
465 virtual void getDataDimension(int* height, int* width);
478 virtual void writeData(const void* buff, int width, int height, const H5::DataType& elemtype);
488 virtual void writeData(const char* buff, int width, int height);
498 virtual void writeData(const unsigned char* buff, int width, int height);
508 virtual void writeData(const unsigned short* buff, int width, int height);
518 virtual void writeData(const float* buff, int width, int height);
519
528 virtual void writeData(const DataMatrix<char>& matrix);
537 virtual void writeData(const DataMatrix<unsigned char>& matrix);
546 virtual void writeData(const DataMatrix<unsigned short>& matrix);
555 virtual void writeData(const DataMatrix<float>& matrix);
565 virtual void readData(void* buffer);
572 virtual int getQualityCount();
580 virtual OdimQuality* createQuality();
590 virtual OdimQuality* getQuality(int index);
598 virtual void removeQuality(int index);
599
600protected:
601 H5::Group* group;
602 MetadataGroup* meta_what;
603 MetadataGroup* meta_where;
604 MetadataGroup* meta_how;
605
606 /* uses cannot directly create OdimH5 objects, only factories provide functions to do it */
607 friend class OdimDataset;
608 OdimData(H5::Group* group);
609
610 virtual H5::DataSet* getData();
611 virtual H5::Group* createQualityGroup();
612 virtual H5::Group* getQualityGroup(int num);
613};
614
615/*===========================================================================*/
616/* ODIM QUALITY*/
617/*===========================================================================*/
618
629class RADAR_API OdimQuality
630{
631public:
632 virtual ~OdimQuality();
633
641 virtual H5::Group* getH5Object();
648 virtual bool existWhat();
649
656 virtual bool existWhere();
663 virtual bool existHow();
664
672 virtual MetadataGroup* getWhat();
680 virtual MetadataGroup* getWhere();
688 virtual MetadataGroup* getHow();
698 virtual H5::AtomType getQualityType();
704 virtual int getQualityWidth();
710 virtual int getQualityHeight();
716 virtual void getQualityDimension(int* height, int* width);
729 virtual void writeQuality(const void* buff, int width, int height, const H5::DataType& elemtype);
739 virtual void writeQuality(const char* buff, int width, int height);
749 virtual void writeQuality(const unsigned char* buff, int width, int height);
759 virtual void writeQuality(const unsigned short* buff, int width, int height);
769 virtual void writeQuality(const float* buff, int width, int height);
770
779 virtual void writeQuality(const DataMatrix<char>& matrix);
788 virtual void writeQuality(const DataMatrix<unsigned char>& matrix);
797 virtual void writeQuality(const DataMatrix<unsigned short>& matrix);
806 virtual void writeQuality(const DataMatrix<float>& matrix);
816 virtual void readQuality(void* buffer);
817
818protected:
819 H5::Group* group;
820 MetadataGroup* meta_what;
821 MetadataGroup* meta_where;
822 MetadataGroup* meta_how;
823
824 /* uses cannot directly create OdimH5 objects, only factories provide functions to do it */
825 friend class OdimData;
826 friend class Product_2D_Data;
827 OdimQuality(H5::Group* group);
828
829 virtual H5::DataSet* getData();
830};
831
832/*===========================================================================*/
833/* POLAR VOLUME */
834/*===========================================================================*/
835
845class RADAR_API PolarVolume : public OdimObject, public WHERERootMetadata, public HOWRootMetadata
846{
847public:
848 virtual ~PolarVolume();
849
850 virtual double getLongitude ();
851 virtual void setLongitude (double val);
852 virtual double getLatitude ();
853 virtual void setLatitude (double val);
854 virtual double getAltitude ();
855 virtual void setAltitude (double val);
856
857 virtual std::string getTaskOrProdGen ();
858 virtual void setTaskOrProdGen (const std::string& val);
859 virtual time_t getStartEpochs ();
860 virtual void setStartEpochs (time_t val);
861 virtual time_t getEndEpochs ();
862 virtual void setEndEpochs (time_t val);
863 virtual std::string getSystem ();
864 virtual void setSystem (const std::string& val);
865 virtual std::string getSoftware ();
866 virtual void setSoftware (const std::string& val);
867 virtual std::string getSoftwareVer ();
868 virtual void setSoftwareVer (const std::string& val);
869 virtual double getZR_A ();
870 virtual void setZR_A (double val);
871 virtual double getZR_B ();
872 virtual void setZR_B (double val);
873 virtual double getKR_A ();
874 virtual void setKR_A (double val);
875 virtual double getKR_B ();
876 virtual void setKR_B (double val);
877 virtual bool getSimulated ();
878 virtual void setSimulated (bool val);
879
885 virtual int getScanCount ();
892 virtual PolarScan* createScan ();
900 virtual PolarScan* getScan (int index);
908 virtual void removeScan (int index);
915 virtual std::vector<PolarScan*> getScans ();
924 virtual std::vector<PolarScan*> getScans (double elevation, double gap = 0);
933 virtual std::vector<PolarScan*> getScansBetween (double minElevation, double maxElevation);
941 virtual std::vector<PolarScan*> getScans (const char* quantity);
942 virtual std::vector<PolarScan*> getScans (const std::string& quantity);
950 virtual std::vector<double> getScanAngles ();
957 virtual std::vector<double> getElevationAngles ();
964 virtual std::set<std::string> getStoredQuantities();
965
966protected:
967 /* uses cannot directly create OdimH5 objects, only factories provide functions to do it */
968 friend class OdimFactory;
969 PolarVolume(H5::H5File* file);
970
971 virtual void setMandatoryInformations ();
972 virtual void checkMandatoryInformations ();
973
974};
975
976/*===========================================================================*/
977/* POLAR VOLUME SCAN */
978/*===========================================================================*/
979
988class RADAR_API PolarScan : public OdimDataset, public WHATDatasetMetadata, public WHEREScanMetadata, public HOWPolarMetadata
989{
990public:
991 virtual ~PolarScan();
992
993 virtual void setMandatoryInformations();
994
995 virtual std::string getObject ();
996 virtual void setObject (const std::string& val);
997 virtual std::string getVersion ();
998 virtual void setVersion (const std::string& val);
999 virtual time_t getDateTime ();
1000 virtual void setDateTime (const time_t val);
1001 virtual SourceInfo getSource ();
1002 virtual void setSource (const SourceInfo& val);
1003
1004 virtual std::string getProduct ();
1005 virtual void setProduct (const std::string& val);
1006 virtual double getProdPar ();
1007 virtual VILHeights getProdParVIL ();
1008 virtual void setProdPar (double val);
1009 virtual void setProdPar (const VILHeights& val);
1010 virtual std::string getQuantity ();
1011 virtual void setQuantity (const std::string& val);
1012 virtual time_t getStartDateTime ();
1013 virtual void setStartDateTime (time_t val);
1014 virtual time_t getEndDateTime ();
1015 virtual void setEndDateTime (time_t val);
1016 virtual double getGain ();
1017 virtual void setGain (double val);
1018 virtual double getOffset ();
1019 virtual void setOffset (double val);
1020 virtual double getNodata ();
1021 virtual void setNodata (double val);
1022 virtual double getUndetect ();
1023 virtual void setUndetect (double val);
1024
1025 virtual double getLongitude ();
1026 virtual void setLongitude (double val);
1027 virtual double getLatitude ();
1028 virtual void setLatitude (double val);
1029 virtual double getAltitude ();
1030 virtual void setAltitude (double val);
1031
1032 virtual double getEAngle ();
1033 virtual void setEAngle (double val);
1034 virtual int getNumBins ();
1035 virtual void setNumBins (int val);
1036 virtual double getRangeStart ();
1037 virtual void setRangeStart (double val);
1038 virtual double getRangeScale ();
1039 virtual void setRangeScale (double val);
1040 virtual int getNumRays ();
1041 virtual void setNumRays (int val);
1042 virtual int getA1Gate ();
1043 virtual void setA1Gate (int val);
1044
1045 virtual std::string getTaskOrProdGen ();
1046 virtual void setTaskOrProdGen (const std::string& val);
1047 virtual time_t getStartEpochs ();
1048 virtual void setStartEpochs (time_t val);
1049 virtual time_t getEndEpochs ();
1050 virtual void setEndEpochs (time_t val);
1051 virtual std::string getSystem ();
1052 virtual void setSystem (const std::string& val);
1053 virtual std::string getSoftware ();
1054 virtual void setSoftware (const std::string& val);
1055 virtual std::string getSoftwareVer ();
1056 virtual void setSoftwareVer (const std::string& val);
1057 virtual double getZR_A ();
1058 virtual void setZR_A (double val);
1059 virtual double getZR_B ();
1060 virtual void setZR_B (double val);
1061 virtual double getKR_A ();
1062 virtual void setKR_A (double val);
1063 virtual double getKR_B ();
1064 virtual void setKR_B (double val);
1065 virtual bool getSimulated ();
1066 virtual void setSimulated (bool val);
1067
1068 virtual double getBeamWidth ();
1069 virtual double getBeamWidth (double defaultValue);
1070 virtual void setBeamWidth (double val);
1071 virtual double getWaveLength ();
1072 virtual double getWaveLength (double defaultValue);
1073 virtual void setWaveLength (double val);
1074 virtual double getRPM ();
1075 virtual double getRPM (double defaultValue);
1076 virtual void setRPM (double val);
1077 virtual double getPulseWidth ();
1078 virtual double getPulseWidth (double defaultValue);
1079 virtual void setPulseWidth (double val);
1080 virtual int getLowPRF ();
1081 virtual int getLowPRF (int defaultValue);
1082 virtual void setLowPRF (int val);
1083 virtual int getHighPRF ();
1084 virtual int getHighPRF (int defaultValue);
1085 virtual void setHighPRF (int val);
1086
1087 virtual std::string getAzimuthMethod ();
1088 virtual void setAzimuthMethod (const std::string& val);
1089 virtual std::string getBinMethod ();
1090 virtual void setBinMethod (const std::string& val);
1091 virtual std::vector<AZAngles> getAzimuthAngles ();
1092 virtual void setAzimuthAngles (const std::vector<AZAngles>& val, int precision = 10);
1093 virtual std::vector<double> getElevationAngles ();
1094 virtual void setElevationAngles (const std::vector<double>& val, int precision = 10);
1095 virtual std::vector<AZTimes> getAzimuthTimes ();
1096 virtual void setAzimuthTimes (const std::vector<AZTimes>& val);
1097
1098 virtual double getPointAccEl ();
1099 virtual void setPointAccEl (double val);
1100 virtual double getPointAccAZ ();
1101 virtual void setPointAccAZ (double val);
1102 virtual bool getMalfunc ();
1103 virtual void setMalfunc (bool val);
1104 virtual std::string getRadarMsg ();
1105 virtual void setRadarMsg (const std::string& val);
1106 virtual double getRadarHorizon ();
1107 virtual void setRadarHorizon (double val);
1108 virtual double getMDS ();
1109 virtual void setMDS (double val);
1110 virtual double getOUR ();
1111 virtual void setOUR (double val);
1112 virtual std::vector<std::string> getDClutter ();
1113 virtual void setDClutter (const std::vector<std::string>& value);
1114 virtual std::string getComment ();
1115 virtual void setComment (const std::string& val);
1116 virtual double getSQI ();
1117 virtual void setSQI (double val);
1118 virtual double getCSR ();
1119 virtual void setCSR (double val);
1120 virtual double getLOG ();
1121 virtual void setLOG (double val);
1122 virtual bool getVPRCorr ();
1123 virtual void setVPRCorr (bool val);
1124 virtual double getFreeze ();
1125 virtual void setFreeze (double val);
1126 virtual double getMin ();
1127 virtual void setMin (double val);
1128 virtual double getMax ();
1129 virtual void setMax (double val);
1130 virtual double getStep ();
1131 virtual void setStep (double val);
1132 virtual int getLevels ();
1133 virtual void setLevels (int val);
1134 virtual double getPeakPwr ();
1135 virtual void setPeakPwr (double val);
1136 virtual double getAvgPwr ();
1137 virtual void setAvgPwr (double val);
1138 virtual double getDynRange ();
1139 virtual void setDynRange (double val);
1140 virtual double getRAC ();
1141 virtual void setRAC (double val);
1142 virtual bool getBBC ();
1143 virtual void setBBC (bool val);
1144 virtual double getPAC ();
1145 virtual void setPAC (double val);
1146 virtual double getS2N ();
1147 virtual void setS2N (double val);
1148 virtual std::string getPolarization ();
1149 virtual void setPolarization (const std::string& val);
1150
1157 virtual int getQuantityDataCount();
1158
1166 virtual PolarScanData* createQuantityData (const char* name);
1167 virtual PolarScanData* createQuantityData (const std::string& name);
1176 virtual PolarScanData* getQuantityData (int index);
1185 virtual PolarScanData* getQuantityData (const char* name);
1186 virtual PolarScanData* getQuantityData (const std::string& name);
1193 virtual void removeQuantityData (const char* name);
1194 virtual void removeQuantityData (const std::string& name);
1202 virtual bool hasQuantityData (const char* name);
1203 virtual bool hasQuantityData (const std::string& name);
1211 virtual int getQuantityDataIndex (const char* name);
1212 virtual int getQuantityDataIndex (const std::string& name);
1221 virtual int getDirection();
1228 std::set<std::string> getStoredQuantities ();
1240 static inline int originaRayIndex(int index, int originalDirection, int numrays, int a1gate)
1241 {
1242 if (originalDirection>0)
1243 {
1244 return (index + a1gate) % numrays;
1245 }
1246 else
1247 {
1248 return ((numrays + a1gate) - index) % numrays;
1249 }
1250 }
1251
1252private:
1253 PolarVolume* volume;
1254
1255 /* uses cannot directly create OdimH5 objects, only factories provide functions to do it */
1256 friend class PolarVolume;
1257 PolarScan(PolarVolume* volume, H5::Group* group);
1258};
1259
1260/*===========================================================================*/
1261/* POLAR SCAN DATA */
1262/*===========================================================================*/
1263
1271class RADAR_API PolarScanData: public OdimData, public WHATDatasetMetadata
1272{
1273public:
1274 virtual ~PolarScanData();
1275
1276 virtual std::string getObject ();
1277 virtual void setObject (const std::string& val);
1278 virtual std::string getVersion ();
1279 virtual void setVersion (const std::string& val);
1280 virtual time_t getDateTime ();
1281 virtual void setDateTime (const time_t val);
1282 virtual SourceInfo getSource ();
1283 virtual void setSource (const SourceInfo& val);
1284
1285 virtual std::string getProduct ();
1286 virtual void setProduct (const std::string& val);
1287 virtual double getProdPar ();
1288 virtual VILHeights getProdParVIL ();
1289 virtual void setProdPar (double val);
1290 virtual void setProdPar (const VILHeights& val);
1291 virtual std::string getQuantity ();
1292 virtual void setQuantity (const std::string& val);
1293 virtual time_t getStartDateTime();
1294 virtual void setStartDateTime(time_t val);
1295 virtual time_t getEndDateTime ();
1296 virtual void setEndDateTime (time_t val);
1297 virtual double getGain ();
1298 virtual void setGain (double val);
1299 virtual double getOffset ();
1300 virtual void setOffset (double val);
1301 virtual double getNodata ();
1302 virtual void setNodata (double val);
1303 virtual double getUndetect ();
1304 virtual void setUndetect (double val);
1305
1311 virtual int getNumRays();
1317 virtual int getNumBins();
1323 H5::AtomType getBinType();
1331 virtual void readTranslatedData(RayMatrix<float>& matrix);
1339 virtual void readTranslatedData(RayMatrix<double>& matrix);
1351 virtual void writeAndTranslate(RayMatrix<float>& matrix, float offset, float gain, H5::DataType type);
1363 virtual void writeAndTranslate(RayMatrix<double>& matrix, double offset, double gain, H5::DataType type);
1364
1365private:
1366 PolarScan* scan;
1367
1368 /* uses cannot directly create OdimH5 objects, only factories provide functions to do it */
1369 friend class PolarScan;
1370 PolarScanData(PolarScan* scan, H5::Group* group);
1371};
1372
1373
1374
1375/*===========================================================================*/
1376/* 2D OBJECT */
1377/*===========================================================================*/
1378
1389class RADAR_API Object_2D : public OdimObject, public HOWRootMetadata
1390{
1391public:
1392 virtual ~Object_2D() = 0;
1393
1394 //virtual void setMandatoryInformations();
1395 //void checkMandatoryInformations();
1396
1397 virtual std::string getTaskOrProdGen ();
1398 virtual void setTaskOrProdGen (const std::string& val);
1399 virtual time_t getStartEpochs ();
1400 virtual void setStartEpochs (time_t val);
1401 virtual time_t getEndEpochs ();
1402 virtual void setEndEpochs (time_t val);
1403 virtual std::string getSystem ();
1404 virtual void setSystem (const std::string& val);
1405 virtual std::string getSoftware ();
1406 virtual void setSoftware (const std::string& val);
1407 virtual std::string getSoftwareVer ();
1408 virtual void setSoftwareVer (const std::string& val);
1409 virtual double getZR_A ();
1410 virtual void setZR_A (double val);
1411 virtual double getZR_B ();
1412 virtual void setZR_B (double val);
1413 virtual double getKR_A ();
1414 virtual void setKR_A (double val);
1415 virtual double getKR_B ();
1416 virtual void setKR_B (double val);
1417 virtual bool getSimulated ();
1418 virtual void setSimulated (bool val);
1419
1425 virtual int getProductCount ();
1433 virtual Product_2D* createProduct2D (const char* type);
1434 virtual Product_2D* createProduct2D (const std::string & type);
1441 virtual Product_PPI* createProductPPI ();
1462 virtual Product_ETOP* createProductETOP ();
1469 virtual Product_MAX* createProductMAX ();
1476 virtual Product_RR* createProductRR ();
1483 virtual Product_VIL* createProductVIL ();
1490 virtual Product_LBM* createProductLBM ();
1497 virtual Product_COMP* createProductCOMP ();
1504 virtual Product_XSEC* createProductXSEC ();
1511 virtual Product_RHI* createProductRHI ();
1518 virtual Product_VSP* createProductVSP ();
1525 virtual Product_HSP* createProductHSP ();
1533 virtual Product_2D* getProduct (int index);
1541//
1542//virtual Horizontal_Product_2D* getHorizontal_Product_2D (int index);
1550//
1551//virtual Vertical_Product_2D* getVertical_Product_2D (int index);
1559 virtual void removeProduct (int index);
1560
1567 virtual std::vector<std::string > getProductsType ();
1568
1575 virtual std::vector<Product_2D*> getProducts();
1587
1588protected:
1589 /* uses cannot directly create OdimH5 objects, only factories provide functions to do it */
1590// friend class OdimFactory;
1591 Object_2D(H5::H5File* file);
1592
1593 virtual void setMandatoryInformations ();
1594 virtual void checkMandatoryInformations ();
1595};
1596
1597
1598/*===========================================================================*/
1599/* HORIZONTAL OBJECT */
1600/*===========================================================================*/
1611class RADAR_API HorizontalObject_2D : public Object_2D, public WHEREImageMetadata
1612{
1613public:
1614 virtual ~HorizontalObject_2D() ;
1615
1616 virtual void setMandatoryInformations();
1617 virtual void checkMandatoryInformations();
1618
1619 virtual std::string getProjectionArguments () ;
1620 virtual void setProjectionArguments (const std::string& val) ;
1621
1622 virtual int getXSize () ;
1623 virtual void setXSize (int val) ;
1624 virtual int getYSize () ;
1625 virtual void setYSize (int val) ;
1626 virtual double getXScale () ;
1627 virtual void setXScale (double val) ;
1628 virtual double getYScale () ;
1629 virtual void setYScale (double val) ;
1630
1631 virtual double getLL_Longitude () ;
1632 virtual void setLL_Longitude (double val) ;
1633 virtual double getLL_Latitude () ;
1634 virtual void setLL_Latitude (double val) ;
1635
1636 virtual double getUL_Longitude () ;
1637 virtual void setUL_Longitude (double val) ;
1638 virtual double getUL_Latitude () ;
1639 virtual void setUL_Latitude (double val) ;
1640
1641 virtual double getUR_Longitude () ;
1642 virtual void setUR_Longitude (double val) ;
1643 virtual double getUR_Latitude () ;
1644 virtual void setUR_Latitude (double val) ;
1645
1646 virtual double getLR_Longitude () ;
1647 virtual void setLR_Longitude (double val) ;
1648 virtual double getLR_Latitude () ;
1649 virtual void setLR_Latitude (double val) ;
1650protected:
1651 /* uses cannot directly create OdimH5 objects, only factories provide functions to do it */
1652// friend class OdimFactory;
1653 HorizontalObject_2D(H5::H5File* file);
1654
1655};
1656/*===========================================================================*/
1657/* IMAGE OBJECT */
1658/*===========================================================================*/
1670class RADAR_API ImageObject : public HorizontalObject_2D
1671{
1672public:
1673 virtual ~ImageObject() ;
1674
1675 virtual void setMandatoryInformations();
1676 virtual void checkMandatoryInformations();
1677
1678protected:
1679 /* uses cannot directly create OdimH5 objects, only factories provide functions to do it */
1680 friend class OdimFactory;
1681 ImageObject(H5::H5File* file);
1682};
1683/*===========================================================================*/
1684/* COMP OBJECT */
1685/*===========================================================================*/
1697class RADAR_API CompObject : public HorizontalObject_2D
1698{
1699public:
1700 virtual ~CompObject() ;
1701
1702 virtual void setMandatoryInformations();
1703 virtual void checkMandatoryInformations();
1704
1705protected:
1706 /* uses cannot directly create OdimH5 objects, only factories provide functions to do it */
1707 friend class OdimFactory;
1708 CompObject(H5::H5File* file);
1709};
1710
1711/*===========================================================================*/
1712/* XSEC OBJECT */
1713/*===========================================================================*/
1724class RADAR_API XsecObject : public Object_2D, public WHEREXSECMetadata, public WHERERhiMetadata, public WHEREPanelMetadata
1725{
1726public:
1727 virtual ~XsecObject();
1728
1729 virtual void setMandatoryInformations();
1730 virtual void checkMandatoryInformations();
1731
1732 virtual int getXSize () ;
1733 virtual void setXSize (int val) ;
1734 virtual int getYSize () ;
1735 virtual void setYSize (int val) ;
1736 virtual double getXScale () ;
1737 virtual void setXScale (double val) ;
1738 virtual double getYScale () ;
1739 virtual void setYScale (double val) ;
1740 virtual double getMinHeight () ;
1741 virtual void setMinHeight (double val) ;
1742 virtual double getMaxHeight () ;
1743 virtual void setMaxHeight (double val) ;
1744
1745 virtual double getRHILon ();
1746 virtual void setRHILon (double val);
1747 virtual double getRHILat ();
1748 virtual void setRHILat (double val);
1749 virtual double getAzimuthAngle ();
1750 virtual void setAzimuthAngle (double val);
1751 virtual std::vector<Angles> getAngles ();
1752 virtual void setAngles (const std::vector<Angles>& val, int precision = 0);
1753 virtual double getRange ();
1754 virtual void setRange (double val);
1755
1756 virtual double getStartLongitude () ;
1757 virtual void setStartLongitude (double val);
1758 virtual double getStartLatitude () ;
1759 virtual void setStartLatitude (double val);
1760 virtual double getStopLongitude ();
1761 virtual void setStopLongitude (double val);
1762 virtual double getStopLatitude ();
1763 virtual void setStopLatitude (double val);
1764
1765protected:
1766 /* uses cannot directly create OdimH5 objects, only factories provide functions to do it */
1767 friend class OdimFactory;
1768 XsecObject(H5::H5File* file);
1769
1770};
1771
1772/*===========================================================================*/
1773/* 2D_PRODUCT Dataset */
1774/*===========================================================================*/
1785class RADAR_API Product_2D : public OdimDataset, public WHATDatasetMetadata, public HOWPolarMetadata //, public WHEREImageMetadata, public HOWCartesianImageMetadata
1786{
1787public:
1788 virtual ~Product_2D();
1789
1790 virtual void setMandatoryInformations();
1791
1792 virtual std::string getObject ();
1793 virtual void setObject (const std::string& val);
1794 virtual std::string getVersion ();
1795 virtual void setVersion (const std::string& val);
1796 virtual time_t getDateTime ();
1797 virtual void setDateTime (const time_t val);
1798 virtual SourceInfo getSource ();
1799 virtual void setSource (const SourceInfo& val);
1800
1801 virtual std::string getProduct ();
1802 virtual void setProduct (const std::string& val);
1803 virtual double getProdPar ();
1804 virtual VILHeights getProdParVIL ();
1805 virtual void setProdPar (double val);
1806 virtual void setProdPar (const VILHeights& val);
1807 virtual std::string getQuantity ();
1808 virtual void setQuantity (const std::string& val);
1809 virtual time_t getStartDateTime ();
1810 virtual void setStartDateTime (time_t val);
1811 virtual time_t getEndDateTime ();
1812 virtual void setEndDateTime (time_t val);
1813 virtual double getGain ();
1814 virtual void setGain (double val);
1815 virtual double getOffset ();
1816 virtual void setOffset (double val);
1817 virtual double getNodata ();
1818 virtual void setNodata (double val);
1819 virtual double getUndetect ();
1820 virtual void setUndetect (double val);
1821
1822 virtual std::string getAzimuthMethod ();
1823 virtual void setAzimuthMethod (const std::string& val);
1824 virtual std::string getBinMethod ();
1825 virtual void setBinMethod (const std::string& val);
1826 virtual std::vector<AZAngles> getAzimuthAngles ();
1827 virtual void setAzimuthAngles (const std::vector<AZAngles>& val, int precision = 10);
1828 virtual std::vector<double> getElevationAngles ();
1829 virtual void setElevationAngles (const std::vector<double>& val, int precision = 10);
1830 virtual std::vector<AZTimes> getAzimuthTimes ();
1831 virtual void setAzimuthTimes (const std::vector<AZTimes>& val);
1832
1833 virtual double getPointAccEl ();
1834 virtual void setPointAccEl (double val);
1835 virtual double getPointAccAZ ();
1836 virtual void setPointAccAZ (double val);
1837 virtual bool getMalfunc ();
1838 virtual void setMalfunc (bool val);
1839 virtual std::string getRadarMsg ();
1840 virtual void setRadarMsg (const std::string& val);
1841 virtual double getRadarHorizon ();
1842 virtual void setRadarHorizon (double val);
1843 virtual double getMDS ();
1844 virtual void setMDS (double val);
1845 virtual double getOUR ();
1846 virtual void setOUR (double val);
1847 virtual std::vector<std::string> getDClutter ();
1848 virtual void setDClutter (const std::vector<std::string>& value);
1849 virtual std::string getComment ();
1850 virtual void setComment (const std::string& val);
1851 virtual double getSQI ();
1852 virtual void setSQI (double val);
1853 virtual double getCSR ();
1854 virtual void setCSR (double val);
1855 virtual double getLOG ();
1856 virtual void setLOG (double val);
1857 virtual bool getVPRCorr ();
1858 virtual void setVPRCorr (bool val);
1859 virtual double getFreeze ();
1860 virtual void setFreeze (double val);
1861 virtual double getMin ();
1862 virtual void setMin (double val);
1863 virtual double getMax ();
1864 virtual void setMax (double val);
1865 virtual double getStep ();
1866 virtual void setStep (double val);
1867 virtual int getLevels ();
1868 virtual void setLevels (int val);
1869 virtual double getPeakPwr ();
1870 virtual void setPeakPwr (double val);
1871 virtual double getAvgPwr ();
1872 virtual void setAvgPwr (double val);
1873 virtual double getDynRange ();
1874 virtual void setDynRange (double val);
1875 virtual double getRAC ();
1876 virtual void setRAC (double val);
1877 virtual bool getBBC ();
1878 virtual void setBBC (bool val);
1879 virtual double getPAC ();
1880 virtual void setPAC (double val);
1881 virtual double getS2N ();
1882 virtual void setS2N (double val);
1883 virtual std::string getPolarization ();
1884 virtual void setPolarization (const std::string& val);
1885
1886 virtual std::string getTaskOrProdGen ();
1887 virtual void setTaskOrProdGen (const std::string& val);
1888 virtual time_t getStartEpochs ();
1889 virtual void setStartEpochs (time_t val);
1890 virtual time_t getEndEpochs ();
1891 virtual void setEndEpochs (time_t val);
1892 virtual std::string getSystem ();
1893 virtual void setSystem (const std::string& val);
1894 virtual std::string getSoftware ();
1895 virtual void setSoftware (const std::string& val);
1896 virtual std::string getSoftwareVer ();
1897 virtual void setSoftwareVer (const std::string& val);
1898 virtual double getZR_A ();
1899 virtual void setZR_A (double val);
1900 virtual double getZR_B ();
1901 virtual void setZR_B (double val);
1902 virtual double getKR_A ();
1903 virtual void setKR_A (double val);
1904 virtual double getKR_B ();
1905 virtual void setKR_B (double val);
1906 virtual bool getSimulated ();
1907 virtual void setSimulated (bool val);
1908
1909 virtual double getBeamWidth ();
1910 virtual double getBeamWidth (double defaultValue);
1911 virtual void setBeamWidth (double val);
1912 virtual double getWaveLength ();
1913 virtual double getWaveLength (double defaultValue);
1914 virtual void setWaveLength (double val);
1915 virtual double getRPM ();
1916 virtual double getRPM (double defaultValue);
1917 virtual void setRPM (double val);
1918 virtual double getPulseWidth ();
1919 virtual double getPulseWidth (double defaultValue);
1920 virtual void setPulseWidth (double val);
1921 virtual int getLowPRF ();
1922 virtual int getLowPRF (int defaultValue);
1923 virtual void setLowPRF (int val);
1924 virtual int getHighPRF ();
1925 virtual int getHighPRF (int defaultValue);
1926 virtual void setHighPRF (int val);
1927/*-----
1928
1929 virtual double getLongitude ();
1930 virtual void setLongitude (double val);
1931 virtual double getLatitude ();
1932 virtual void setLatitude (double val);
1933 virtual double getAltitude ();
1934 virtual void setAltitude (double val);
1935
1936
1937 virtual double getEAngle ();
1938 virtual void setEAngle (double val);
1939 virtual int getNumBins ();
1940 virtual void setNumBins (int val);
1941 virtual double getRangeStart ();
1942 virtual void setRangeStart (double val);
1943 virtual double getRangeScale ();
1944 virtual void setRangeScale (double val);
1945 virtual int getNumRays ();
1946 virtual void setNumRays (int val);
1947 virtual int getA1Gate ();
1948 virtual void setA1Gate (int val);
1949
1950----*/
1951
1959 virtual Product_2D_Data* createQuantityData (const char* name);
1960 virtual Product_2D_Data* createQuantityData (const std::string& name);
1967 virtual int getQuantityDataCount();
1975 virtual bool hasQuantityData (const char* name);
1976 virtual bool hasQuantityData (const std::string& name);
1984 virtual int getQuantityDataIndex (const char* name);
1985 virtual int getQuantityDataIndex (const std::string& name);
1994 virtual Product_2D_Data* getQuantityData (int index);
2003 virtual Product_2D_Data* getQuantityData (const char* name);
2004 virtual Product_2D_Data* getQuantityData (const std::string& name);
2011 std::set<std::string> getStoredQuantities ();
2018 virtual void removeQuantityData (const char* name);
2019 virtual void removeQuantityData (const std::string& name);
2020
2021protected :
2022 Object_2D* object_2d;
2023
2024 /* uses cannot directly create OdimH5 objects, only factories provide functions to do it */
2025 friend class Object_2D;
2026 Product_2D(Object_2D* object_2d, H5::Group* group);
2027
2028};
2029
2030/*===========================================================================*/
2031/* HORIZONTAL 2D_PRODUCT Dataset */
2032/*===========================================================================*/
2033
2043
2044class RADAR_API Horizontal_Product_2D : public Product_2D, public WHEREImageMetadata, public HOWCartesianImageMetadata
2045{
2046public:
2047 virtual ~Horizontal_Product_2D();
2048public:
2049// virtual void setMandatoryInformations();
2050
2051 virtual std::string getProjectionArguments () ;
2052 virtual void setProjectionArguments (const std::string& val) ;
2053
2054 virtual int getXSize () ;
2055 virtual void setXSize (int val) ;
2056 virtual int getYSize () ;
2057 virtual void setYSize (int val) ;
2058 virtual double getXScale () ;
2059 virtual void setXScale (double val) ;
2060 virtual double getYScale () ;
2061 virtual void setYScale (double val) ;
2062
2063 virtual double getLL_Longitude () ;
2064 virtual void setLL_Longitude (double val) ;
2065 virtual double getLL_Latitude () ;
2066 virtual void setLL_Latitude (double val) ;
2067
2068 virtual double getUL_Longitude () ;
2069 virtual void setUL_Longitude (double val) ;
2070 virtual double getUL_Latitude () ;
2071 virtual void setUL_Latitude (double val) ;
2072
2073 virtual double getUR_Longitude () ;
2074 virtual void setUR_Longitude (double val) ;
2075 virtual double getUR_Latitude () ;
2076 virtual void setUR_Latitude (double val) ;
2077
2078 virtual double getLR_Longitude () ;
2079 virtual void setLR_Longitude (double val) ;
2080 virtual double getLR_Latitude () ;
2081 virtual void setLR_Latitude (double val) ;
2082/*--- queste devono essere implementate .-----*/
2083 virtual std::vector<Angles> getAngles () ;
2084 virtual void setAngles (const std::vector<Angles>& val, int precision = 0) ;
2085 virtual std::vector<Arotation> getArotation () ;
2086 virtual void setArotation (const std::vector<Arotation>& val, int precision = 0);
2087 virtual std::string getCAMethod ();
2088 virtual void setCAMethod (const std::string& val) ;
2089 virtual std::vector<Nodes> getNodes () ;
2090 virtual void setNodes (const std::vector<Nodes>& val) ;
2091 virtual int getACCnum () ;
2092 virtual void setCCnum (int val) ;
2093
2094protected:
2095// Product_2D * prod;
2096
2097 /* uses cannot directly create OdimH5 objects, only factories provide functions to do it */
2098 friend class Product_2D;
2099 Horizontal_Product_2D (Object_2D* object_2d, H5::Group* group);
2100};
2101
2102/*===========================================================================*/
2103/* PPI PRODUCT Dataset */
2104/*===========================================================================*/
2114class RADAR_API Product_PPI : public Horizontal_Product_2D
2115{
2116public:
2117 virtual ~Product_PPI() ;
2118
2119 virtual void setMandatoryInformations();
2120
2121private:
2122
2123 /* uses cannot directly create OdimH5 objects, only factories provide functions to do it */
2124 friend class Horizontal_Product_2D ;
2125 friend class Object_2D;
2126 Product_PPI(Object_2D * object_2d, H5::Group* group);
2127};
2128/*===========================================================================*/
2129/* CAPPI PRODUCT Dataset */
2130/*===========================================================================*/
2140class RADAR_API Product_CAPPI : public Horizontal_Product_2D
2141{
2142public:
2143 virtual ~Product_CAPPI() ;
2144
2145 virtual void setMandatoryInformations();
2146
2147private:
2148
2149 /* uses cannot directly create OdimH5 objects, only factories provide functions to do it */
2150 friend class Horizontal_Product_2D ;
2151 friend class Object_2D;
2152 Product_CAPPI(Object_2D * object_2d, H5::Group* group);
2153};
2154/*===========================================================================*/
2155/* PCAPPI PRODUCT Dataset */
2156/*===========================================================================*/
2166class RADAR_API Product_PCAPPI : public Horizontal_Product_2D
2167{
2168public:
2169 virtual ~Product_PCAPPI() ;
2170
2171 virtual void setMandatoryInformations();
2172
2173private:
2174
2175 /* uses cannot directly create OdimH5 objects, only factories provide functions to do it */
2176 friend class Horizontal_Product_2D ;
2177 friend class Object_2D;
2178 Product_PCAPPI(Object_2D * object_2d, H5::Group* group);
2179};
2180/*===========================================================================*/
2181/* ETOP PRODUCT Dataset */
2182/*===========================================================================*/
2192class RADAR_API Product_ETOP : public Horizontal_Product_2D
2193{
2194public:
2195 virtual ~Product_ETOP() ;
2196
2197 virtual void setMandatoryInformations();
2198
2199private:
2200
2201 /* uses cannot directly create OdimH5 objects, only factories provide functions to do it */
2202 friend class Horizontal_Product_2D ;
2203 friend class Object_2D;
2204 Product_ETOP(Object_2D * object_2d, H5::Group* group);
2205};
2206/*===========================================================================*/
2207/* MAX PRODUCT Dataset */
2208/*===========================================================================*/
2218class RADAR_API Product_MAX : public Horizontal_Product_2D
2219{
2220public:
2221 virtual ~Product_MAX() ;
2222
2223 virtual void setMandatoryInformations();
2224
2225private:
2226
2227 /* uses cannot directly create OdimH5 objects, only factories provide functions to do it */
2228 friend class Horizontal_Product_2D ;
2229 friend class Object_2D;
2230 Product_MAX(Object_2D * object_2d, H5::Group* group);
2231};
2232
2233/*===========================================================================*/
2234/* RR PRODUCT Dataset */
2235/*===========================================================================*/
2245class RADAR_API Product_RR : public Horizontal_Product_2D
2246{
2247public:
2248 virtual ~Product_RR() ;
2249
2250 virtual void setMandatoryInformations();
2251
2252private:
2253
2254 /* uses cannot directly create OdimH5 objects, only factories provide functions to do it */
2255 friend class Horizontal_Product_2D ;
2256 friend class Object_2D;
2257 Product_RR(Object_2D * object_2d, H5::Group* group);
2258};
2259/*===========================================================================*/
2260/* VIL PRODUCT Dataset */
2261/*===========================================================================*/
2271class RADAR_API Product_VIL : public Horizontal_Product_2D
2272{
2273public:
2274 virtual ~Product_VIL() ;
2275
2276 virtual void setMandatoryInformations();
2277
2278private:
2279
2280 /* uses cannot directly create OdimH5 objects, only factories provide functions to do it */
2281 friend class Horizontal_Product_2D ;
2282 friend class Object_2D;
2283 Product_VIL(Object_2D * object_2d, H5::Group* group);
2284};
2285/*===========================================================================*/
2286/* LBM PRODUCT Dataset */
2287/*===========================================================================*/
2297class RADAR_API Product_LBM : public Horizontal_Product_2D
2298{
2299public:
2300 virtual ~Product_LBM() ;
2301
2302 virtual void setMandatoryInformations();
2303
2304private:
2305
2306 /* uses cannot directly create OdimH5 objects, only factories provide functions to do it */
2307 friend class Horizontal_Product_2D ;
2308 friend class Object_2D;
2309 Product_LBM(Object_2D * object_2d, H5::Group* group);
2310};
2311
2312/*===========================================================================*/
2313/* COMP PRODUCT Dataset */
2314/*===========================================================================*/
2324class RADAR_API Product_COMP : public Horizontal_Product_2D
2325{
2326public:
2327 virtual ~Product_COMP() ;
2328
2329 virtual void setMandatoryInformations();
2330
2331private:
2332
2333 /* uses cannot directly create OdimH5 objects, only factories provide functions to do it */
2334 friend class Horizontal_Product_2D ;
2335 friend class Object_2D;
2336 Product_COMP(Object_2D * object_2d, H5::Group* group);
2337};
2338
2339/*===========================================================================*/
2340/* VERTICAL 2D_PRODUCT Dataset */
2341/*===========================================================================*/
2351class RADAR_API Vertical_Product_2D : public Product_2D, public WHEREXSECMetadata
2352{
2353public:
2354 virtual ~Vertical_Product_2D();
2355public:
2356 //virtual void setMandatoryInformations();
2357
2358 virtual int getXSize () ;
2359 virtual void setXSize (int val) ;
2360 virtual int getYSize () ;
2361 virtual void setYSize (int val) ;
2362 virtual double getXScale () ;
2363 virtual void setXScale (double val) ;
2364 virtual double getYScale () ;
2365 virtual void setYScale (double val) ;
2366 virtual double getMinHeight () ;
2367 virtual void setMinHeight (double val) ;
2368 virtual double getMaxHeight () ;
2369 virtual void setMaxHeight (double val) ;
2370
2371protected:
2372 /* uses cannot directly create OdimH5 objects, only factories provide functions to do it */
2373 friend class Product_2D;
2374 Vertical_Product_2D(Object_2D* object_2d, H5::Group* group);
2375};
2376
2377/*===========================================================================*/
2378/* XSEC PRODUCT Dataset */
2379/*===========================================================================*/
2389class RADAR_API Product_XSEC : public Vertical_Product_2D
2390{
2391public:
2392 virtual ~Product_XSEC() ;
2393
2394 virtual void setMandatoryInformations();
2395
2396private:
2397
2398 /* uses cannot directly create OdimH5 objects, only factories provide functions to do it */
2399 friend class Vertical_Product_2D ;
2400 friend class Object_2D;
2401 Product_XSEC(Object_2D* object_2d, H5::Group* group);
2402};
2403
2404/*===========================================================================*/
2405/* RHI PRODUCT Dataset */
2406/*===========================================================================*/
2416class RADAR_API Product_RHI : public Vertical_Product_2D, public WHERERhiMetadata
2417{
2418public:
2419 virtual ~Product_RHI() ;
2420
2421 virtual void setMandatoryInformations();
2422
2423 virtual double getRHILon ();
2424 virtual void setRHILon (double val);
2425 virtual double getRHILat ();
2426 virtual void setRHILat (double val);
2427 virtual double getAzimuthAngle ();
2428 virtual void setAzimuthAngle (double val);
2429 virtual std::vector<Angles> getAngles ();
2430 virtual void setAngles (const std::vector<Angles>& val, int precision = 0);
2431 virtual double getRange ();
2432 virtual void setRange (double val);
2433
2434private:
2435
2436 /* uses cannot directly create OdimH5 objects, only factories provide functions to do it */
2437 friend class Vertical_Product_2D ;
2438 friend class Object_2D;
2439 Product_RHI(Object_2D* object_2d, H5::Group* group);
2440};
2441
2442/*===========================================================================*/
2443/* VSP PRODUCT Dataset */
2444/*===========================================================================*/
2454class RADAR_API Product_Panel : public Vertical_Product_2D , public WHEREPanelMetadata
2455{
2456public:
2457 virtual ~Product_Panel() ;
2458
2459 virtual void setMandatoryInformations();
2460 virtual double getStartLongitude () ;
2461 virtual void setStartLongitude (double val);
2462 virtual double getStartLatitude () ;
2463 virtual void setStartLatitude (double val);
2464 virtual double getStopLongitude ();
2465 virtual void setStopLongitude (double val);
2466 virtual double getStopLatitude ();
2467 virtual void setStopLatitude (double val);
2468
2469protected:
2470
2471 /* uses cannot directly create OdimH5 objects, only factories provide functions to do it */
2472 friend class Vertical_Product_2D ;
2473 friend class Product_2D;
2474 Product_Panel(Object_2D* object_2d, H5::Group* group);
2475};
2476
2477/*===========================================================================*/
2478/* HSP PRODUCT Dataset */
2479/*===========================================================================*/
2489class RADAR_API Product_HSP : public Product_Panel
2490{
2491public:
2492 virtual ~Product_HSP() ;
2493
2494 virtual void setMandatoryInformations();
2495
2496private:
2497
2498 /* uses cannot directly create OdimH5 objects, only factories provide functions to do it */
2499 friend class Product_Panel;
2500 friend class Object_2D;
2501 Product_HSP(Object_2D* object_2d, H5::Group* group);
2502};
2503
2504/*===========================================================================*/
2505/* VSP PRODUCT Dataset */
2506/*===========================================================================*/
2516class RADAR_API Product_VSP : public Product_Panel
2517{
2518public:
2519 virtual ~Product_VSP() ;
2520
2521 virtual void setMandatoryInformations();
2522
2523private:
2524
2525 /* uses cannot directly create OdimH5 objects, only factories provide functions to do it */
2526 friend class Product_Panel;
2527 friend class Object_2D;
2528 Product_VSP(Object_2D* object_2d, H5::Group* group);
2529};
2530/*===========================================================================*/
2531/* 2D PRODUCT DATA */
2532/*===========================================================================*/
2533
2541class RADAR_API Product_2D_Data: public OdimData, public WHATDatasetMetadata
2542{
2543public:
2544 virtual ~Product_2D_Data();
2545
2546 virtual std::string getObject ();
2547 virtual void setObject (const std::string& val);
2548 virtual std::string getVersion ();
2549 virtual void setVersion (const std::string& val);
2550 virtual time_t getDateTime ();
2551 virtual void setDateTime (const time_t val);
2552 virtual SourceInfo getSource ();
2553 virtual void setSource (const SourceInfo& val);
2554
2555 virtual std::string getProduct ();
2556 virtual void setProduct (const std::string& val);
2557 virtual double getProdPar ();
2558 virtual VILHeights getProdParVIL ();
2559 virtual void setProdPar (double val);
2560 virtual void setProdPar (const VILHeights& val);
2561 virtual std::string getQuantity ();
2562 virtual void setQuantity (const std::string& val);
2563 virtual time_t getStartDateTime();
2564 virtual void setStartDateTime(time_t val);
2565 virtual time_t getEndDateTime ();
2566 virtual void setEndDateTime (time_t val);
2567 virtual double getGain ();
2568 virtual void setGain (double val);
2569 virtual double getOffset ();
2570 virtual void setOffset (double val);
2571 virtual double getNodata ();
2572 virtual void setNodata (double val);
2573 virtual double getUndetect ();
2574 virtual void setUndetect (double val);
2575
2581 virtual int getNumXElem();
2587 virtual int getNumYElem();
2593 H5::AtomType getElemType();
2601 virtual void readTranslatedData(DataMatrix<float>& matrix);
2609 virtual void readTranslatedData(DataMatrix<double>& matrix);
2621 virtual void writeAndTranslate(DataMatrix<float>& matrix, float offset, float gain, H5::DataType type);
2633 virtual void writeAndTranslate(DataMatrix<double>& matrix, double offset, double gain, H5::DataType type);
2634
2641 virtual int getQualityDataCount();
2648 virtual OdimQuality* createQualityData ();
2658 virtual OdimQuality* getQualityData (int index);
2666 virtual void removeQualityData (int index);
2667
2668private:
2669 Product_2D* prod;
2670
2671 /* uses cannot directly create OdimH5 objects, only factories provide functions to do it */
2672 friend class Horizontal_Product_2D;
2673 friend class Product_2D;
2674 Product_2D_Data(Product_2D* prod, H5::Group* group);
2675};
2676
2677
2678/*===========================================================================*/
2679
2680}
2681
2682#endif
2683
2684
OdimH5 v2.0 CompObject.
Definition odimh5v20_classes.hpp:1698
Matrix of data values.
Definition odimh5v20_support.hpp:472
Interface fot HOW dataset attributes methods for cartesian images.
Definition odimh5v20_metadata.hpp:2309
Interface for HOW dataset attributes methods for polar data.
Definition odimh5v20_metadata.hpp:1955
Interface fot HOW root attributes methods.
Definition odimh5v20_metadata.hpp:1716
OdimH5 v2.0 Horizontal Product_2D Dataset.
Definition odimh5v20_classes.hpp:2045
virtual std::string getProjectionArguments()
Get the 'projection arguments' attribute value.
Definition odimh5v20_classes.cpp:3059
virtual void setYScale(double val)
Set the 'Y scale' attribute value.
Definition odimh5v20_classes.cpp:3069
virtual double getLL_Latitude()
Get the 'LowerLeft Latitude' attribute value.
Definition odimh5v20_classes.cpp:3073
virtual double getUL_Longitude()
Get the 'UpperLeft Longitude' attribute value.
Definition odimh5v20_classes.cpp:3076
virtual void setUL_Longitude(double val)
Set the 'UpperLeft Longitude' attribute value.
Definition odimh5v20_classes.cpp:3077
virtual std::vector< Arotation > getArotation()
Get the 'aroration' attribute values.
Definition odimh5v20_classes.cpp:3094
virtual void setLR_Longitude(double val)
Set the 'LowerRight Longitude' attribute value.
Definition odimh5v20_classes.cpp:3087
virtual int getACCnum()
Get the 'ACCnum' attribute value.
Definition odimh5v20_classes.cpp:3105
virtual int getYSize()
Get the 'Y size' attribute value.
Definition odimh5v20_classes.cpp:3064
virtual void setUL_Latitude(double val)
Set the 'UpperLeft Latitude' attribute value.
Definition odimh5v20_classes.cpp:3079
virtual double getLR_Longitude()
Get the 'LowerRight Longitude' attribute value.
Definition odimh5v20_classes.cpp:3086
virtual void setCCnum(int val)
Set the 'ACCnum' attribute value.
Definition odimh5v20_classes.cpp:3106
virtual int getXSize()
Get the 'X size' attribute value.
Definition odimh5v20_classes.cpp:3062
virtual std::string getCAMethod()
Get the 'camethod' attribute values.
Definition odimh5v20_classes.cpp:3097
virtual void setLL_Longitude(double val)
Set the 'LowerLeft Longitude' attribute value.
Definition odimh5v20_classes.cpp:3072
virtual std::vector< Angles > getAngles()
Get the 'angles' attribute values.
Definition odimh5v20_classes.cpp:3091
virtual void setXSize(int val)
Set the 'X size' attribute value.
Definition odimh5v20_classes.cpp:3063
virtual void setCAMethod(const std::string &val)
Set the 'camethod' attribute values.
Definition odimh5v20_classes.cpp:3098
virtual void setLL_Latitude(double val)
Set the 'LowerLeft Latitude' attribute value.
Definition odimh5v20_classes.cpp:3074
virtual double getLL_Longitude()
Get the 'LowerLeft Longitude' attribute value.
Definition odimh5v20_classes.cpp:3071
virtual void setProjectionArguments(const std::string &val)
Set the 'projection arguments' attribute value.
Definition odimh5v20_classes.cpp:3060
virtual std::vector< Nodes > getNodes()
Get the 'nodes' attribute values.
Definition odimh5v20_classes.cpp:3100
virtual void setUR_Latitude(double val)
Set the 'UpperRight Latitude' attribute value.
Definition odimh5v20_classes.cpp:3084
virtual void setYSize(int val)
Set the 'Y size' attribute value.
Definition odimh5v20_classes.cpp:3065
virtual void setUR_Longitude(double val)
Set the 'UpperRight Longitude' attribute value.
Definition odimh5v20_classes.cpp:3082
virtual void setArotation(const std::vector< Arotation > &val, int precision=0)
Set the 'aroration' attribute values.
Definition odimh5v20_classes.cpp:3095
virtual double getYScale()
Get the 'Y scale' attribute value.
Definition odimh5v20_classes.cpp:3068
virtual double getLR_Latitude()
Get the 'LowerRight Latitude' attribute value.
Definition odimh5v20_classes.cpp:3088
virtual double getUR_Latitude()
Get the 'UpperRight Latitude' attribute value.
Definition odimh5v20_classes.cpp:3083
virtual double getXScale()
Get the 'X scale' attribute value.
Definition odimh5v20_classes.cpp:3066
virtual double getUR_Longitude()
Get the 'UpperRight Longitude' attribute value.
Definition odimh5v20_classes.cpp:3081
virtual void setAngles(const std::vector< Angles > &val, int precision=0)
Set the 'angles' attribute values.
Definition odimh5v20_classes.cpp:3092
virtual double getUL_Latitude()
Get the 'UpperLeft Latitude' attribute value.
Definition odimh5v20_classes.cpp:3078
virtual void setXScale(double val)
Set the 'X scale' attribute value.
Definition odimh5v20_classes.cpp:3067
virtual void setLR_Latitude(double val)
Set the 'LowerRight Latitude' attribute value.
Definition odimh5v20_classes.cpp:3089
virtual void setNodes(const std::vector< Nodes > &val)
Set the 'nodes' attribute values.
Definition odimh5v20_classes.cpp:3103
OdimH5 v2.0 horizontalObject.
Definition odimh5v20_classes.hpp:1612
virtual void setLL_Longitude(double val)
Set the 'LowerLeft Longitude' attribute value.
Definition odimh5v20_classes.cpp:2500
virtual double getLR_Latitude()
Get the 'LowerRight Latitude' attribute value.
Definition odimh5v20_classes.cpp:2516
virtual double getLL_Latitude()
Get the 'LowerLeft Latitude' attribute value.
Definition odimh5v20_classes.cpp:2501
virtual void setUL_Longitude(double val)
Set the 'UpperLeft Longitude' attribute value.
Definition odimh5v20_classes.cpp:2505
virtual std::string getProjectionArguments()
Get the 'projection arguments' attribute value.
Definition odimh5v20_classes.cpp:2487
virtual void setYScale(double val)
Set the 'Y scale' attribute value.
Definition odimh5v20_classes.cpp:2497
virtual void setLL_Latitude(double val)
Set the 'LowerLeft Latitude' attribute value.
Definition odimh5v20_classes.cpp:2502
virtual double getLR_Longitude()
Get the 'LowerRight Longitude' attribute value.
Definition odimh5v20_classes.cpp:2514
virtual double getUR_Latitude()
Get the 'UpperRight Latitude' attribute value.
Definition odimh5v20_classes.cpp:2511
virtual double getUL_Longitude()
Get the 'UpperLeft Longitude' attribute value.
Definition odimh5v20_classes.cpp:2504
virtual void setLR_Latitude(double val)
Set the 'LowerRight Latitude' attribute value.
Definition odimh5v20_classes.cpp:2517
virtual void setUR_Longitude(double val)
Set the 'UpperRight Longitude' attribute value.
Definition odimh5v20_classes.cpp:2510
virtual void setYSize(int val)
Set the 'Y size' attribute value.
Definition odimh5v20_classes.cpp:2493
virtual int getYSize()
Get the 'Y size' attribute value.
Definition odimh5v20_classes.cpp:2492
virtual void setProjectionArguments(const std::string &val)
Set the 'projection arguments' attribute value.
Definition odimh5v20_classes.cpp:2488
virtual void setUL_Latitude(double val)
Set the 'UpperLeft Latitude' attribute value.
Definition odimh5v20_classes.cpp:2507
virtual void setXSize(int val)
Set the 'X size' attribute value.
Definition odimh5v20_classes.cpp:2491
virtual double getLL_Longitude()
Get the 'LowerLeft Longitude' attribute value.
Definition odimh5v20_classes.cpp:2499
virtual double getXScale()
Get the 'X scale' attribute value.
Definition odimh5v20_classes.cpp:2494
virtual double getUL_Latitude()
Get the 'UpperLeft Latitude' attribute value.
Definition odimh5v20_classes.cpp:2506
virtual int getXSize()
Get the 'X size' attribute value.
Definition odimh5v20_classes.cpp:2490
virtual void setXScale(double val)
Set the 'X scale' attribute value.
Definition odimh5v20_classes.cpp:2495
virtual double getUR_Longitude()
Get the 'UpperRight Longitude' attribute value.
Definition odimh5v20_classes.cpp:2509
virtual double getYScale()
Get the 'Y scale' attribute value.
Definition odimh5v20_classes.cpp:2496
virtual void setUR_Latitude(double val)
Set the 'UpperRight Latitude' attribute value.
Definition odimh5v20_classes.cpp:2512
virtual void setLR_Longitude(double val)
Set the 'LowerRight Longitude' attribute value.
Definition odimh5v20_classes.cpp:2515
OdimH5 v2.0 ImageObject.
Definition odimh5v20_classes.hpp:1671
Attribute (odim metadata) group.
Definition odimh5v20_metadata.hpp:54
OdimH5 v2.0 Object_2D.
Definition odimh5v20_classes.hpp:1390
virtual std::vector< Product_2D * > getProducts()
Get the pointers to all the products in the file.
Definition odimh5v20_classes.cpp:2385
virtual std::string getSoftware()
Get the 'software' attribute value.
Definition odimh5v20_classes.cpp:1991
virtual Product_PPI * createProductPPI()
Create a new PPI product in this volume.
Definition odimh5v20_classes.cpp:2063
virtual void setKR_A(double val)
Set the 'kr_a' attribute value.
Definition odimh5v20_classes.cpp:2000
virtual Product_LBM * createProductLBM()
Create a new LBM product in this volume.
Definition odimh5v20_classes.cpp:2201
virtual void setStartEpochs(time_t val)
Set the 'startepochs' attribute value.
Definition odimh5v20_classes.cpp:1986
virtual Product_MAX * createProductMAX()
Create a new MAX product in this volume.
Definition odimh5v20_classes.cpp:2144
virtual void removeProduct(int index)
Get a pointer to a 2D-Horizonatl product of the volume.
Definition odimh5v20_classes.cpp:2357
virtual std::string getSystem()
Get the 'system' attribute value.
Definition odimh5v20_classes.cpp:1989
virtual Product_ETOP * createProductETOP()
Create a new ETOP product in this volume.
Definition odimh5v20_classes.cpp:2124
virtual std::string getTaskOrProdGen()
Get the 'task' attribute value.
Definition odimh5v20_classes.cpp:1983
virtual double getKR_B()
Get the 'kr_b' attribute value.
Definition odimh5v20_classes.cpp:2001
virtual time_t getStartEpochs()
Get the 'startepochs' attribute value.
Definition odimh5v20_classes.cpp:1985
virtual std::vector< std::string > getProductsType()
Get the pointers to all the product types in the file.
Definition odimh5v20_classes.cpp:2362
virtual void setZR_A(double val)
Set the 'zr_a' attribute value.
Definition odimh5v20_classes.cpp:1996
virtual Product_VSP * createProductVSP()
Create a new VSP product in this volume.
Definition odimh5v20_classes.cpp:2279
virtual Product_HSP * createProductHSP()
Create a new HSP product in this volume.
Definition odimh5v20_classes.cpp:2298
virtual Product_RHI * createProductRHI()
Create a new RHI product in this volume.
Definition odimh5v20_classes.cpp:2241
virtual Product_2D * createProduct2D(const char *type)
Create a new generic 2D product in this volume.
Definition odimh5v20_classes.cpp:2040
virtual double getZR_B()
Get the 'zr_b' attribute value.
Definition odimh5v20_classes.cpp:1997
virtual Product_VIL * createProductVIL()
Create a new VIL product in this volume.
Definition odimh5v20_classes.cpp:2182
virtual Product_CAPPI * createProductCAPPI()
Create a new CAPPI product in this volume.
Definition odimh5v20_classes.cpp:2084
virtual void setZR_B(double val)
Set the 'zr_b' attribute value.
Definition odimh5v20_classes.cpp:1998
virtual double getKR_A()
Get the 'kr_a' attribute value.
Definition odimh5v20_classes.cpp:1999
virtual void setSimulated(bool val)
Set the 'simulated' attribute value.
Definition odimh5v20_classes.cpp:2004
virtual Product_COMP * createProductCOMP()
Create a new COMP product in this volume.
Definition odimh5v20_classes.cpp:2222
virtual Product_PCAPPI * createProductPCAPPI()
Create a new PCAPPI product in this volume.
Definition odimh5v20_classes.cpp:2104
virtual bool getSimulated()
Get the 'simulated' attribute value.
Definition odimh5v20_classes.cpp:2003
virtual std::string getSoftwareVer()
Get the 'sw_version' attribute value.
Definition odimh5v20_classes.cpp:1993
virtual int getProductCount()
Get the number of products dataset store in this volume.
Definition odimh5v20_classes.cpp:2036
virtual Product_RR * createProductRR()
Create a new RR product in this volume.
Definition odimh5v20_classes.cpp:2163
virtual double getZR_A()
Get the 'zr_a' attribute value.
Definition odimh5v20_classes.cpp:1995
virtual void setKR_B(double val)
Set the 'kr_b' attribute value.
Definition odimh5v20_classes.cpp:2002
virtual time_t getEndEpochs()
Get the 'endepochs' attribute value.
Definition odimh5v20_classes.cpp:1987
virtual void setTaskOrProdGen(const std::string &val)
Set the 'task' attribute value.
Definition odimh5v20_classes.cpp:1984
virtual Product_XSEC * createProductXSEC()
Create a new XSEC product in this volume.
Definition odimh5v20_classes.cpp:2260
virtual void setEndEpochs(time_t val)
Set the 'endepochs' attribute value.
Definition odimh5v20_classes.cpp:1988
virtual void setSoftware(const std::string &val)
Set the 'software' attribute value.
Definition odimh5v20_classes.cpp:1992
virtual void setSoftwareVer(const std::string &val)
Set the 'sw_version' attribute value.
Definition odimh5v20_classes.cpp:1994
virtual Product_2D * getProduct(int index)
Get a pointer to a generic 2D product of the volume.
Definition odimh5v20_classes.cpp:2318
virtual void setSystem(const std::string &val)
Set the 'system' attribute value.
Definition odimh5v20_classes.cpp:1990
Generic OdimH5 v2.0 data group.
Definition odimh5v20_classes.hpp:380
virtual bool existHow()
Test is the HOW attributes group exist.
Definition odimh5v20_classes.cpp:475
virtual H5::AtomType getDataType()
Get the HDF5 atom type of the elements of the HDF5 dataset contained inside this 'data' group.
Definition odimh5v20_classes.cpp:506
virtual MetadataGroup * getWhat()
Get the WHAT attributes group.
Definition odimh5v20_classes.cpp:480
virtual int getQualityCount()
Get the number of 'quality' groups inside this data group.
Definition odimh5v20_classes.cpp:680
virtual int getDataHeight()
Get the height (rows num) of the matrix associated to this data group.
Definition odimh5v20_classes.cpp:542
virtual bool existWhat()
Test is the WHAT attributes group exist.
Definition odimh5v20_classes.cpp:465
virtual H5::Group * getH5Object()
Get the HDF5 group associated to this object.
Definition odimh5v20_classes.cpp:460
virtual void removeQuality(int index)
Remove a 'quality' group from this dataset.
Definition odimh5v20_classes.cpp:716
virtual OdimQuality * createQuality()
Create a new group 'Quality' inside this data.
Definition odimh5v20_classes.cpp:685
virtual MetadataGroup * getWhere()
Get the WHERE attributes group.
Definition odimh5v20_classes.cpp:487
virtual OdimQuality * getQuality(int index)
Get an existing Quality group using the given index.
Definition odimh5v20_classes.cpp:699
virtual void readData(void *buffer)
Read data from the dataset of this 'data' group.
Definition odimh5v20_classes.cpp:654
virtual void writeData(const void *buff, int width, int height, const H5::DataType &elemtype)
Write data to the matrix associated to this 'data' group.
Definition odimh5v20_classes.cpp:584
virtual MetadataGroup * getHow()
Get the HOW attributes group.
Definition odimh5v20_classes.cpp:494
virtual void getDataDimension(int *height, int *width)
Get height and width (rows and cols num) of the matrix associated to this data group.
Definition odimh5v20_classes.cpp:549
virtual bool existWhere()
Test is the WHERE attributes group exist.
Definition odimh5v20_classes.cpp:470
virtual int getDataWidth()
Get the width (cols num) of the matrix associated to this data group.
Definition odimh5v20_classes.cpp:535
Generic OdimH5 v2.0 dataset group.
Definition odimh5v20_classes.hpp:257
virtual bool existWhat()
Test is the WHAT attributes group exist.
Definition odimh5v20_classes.cpp:332
virtual OdimData * createData()
Create a new group 'data' inside this dataset.
Definition odimh5v20_classes.cpp:373
virtual OdimData * getData(int index)
Get an existing dataset using the given index.
Definition odimh5v20_classes.cpp:387
virtual bool existHow()
Test is the HOW attributes group exist.
Definition odimh5v20_classes.cpp:342
virtual MetadataGroup * getWhere()
Get the WHERE attributes group.
Definition odimh5v20_classes.cpp:354
virtual H5::Group * getH5Object()
Get the HDF5 group associated to this object.
Definition odimh5v20_classes.cpp:327
virtual void removeData(int index)
Remove a 'data' group from this dataset.
Definition odimh5v20_classes.cpp:404
virtual int getDataCount()
Get the number of 'data' groups inside this dataset group.
Definition odimh5v20_classes.cpp:368
virtual MetadataGroup * getWhat()
Get the WHAT attributes group.
Definition odimh5v20_classes.cpp:347
virtual MetadataGroup * getHow()
Get the HOW attributes group.
Definition odimh5v20_classes.cpp:361
virtual bool existWhere()
Test is the WHERE attributes group exist.
Definition odimh5v20_classes.cpp:337
OdimH5 objects factory.
Definition odimh5v20_factory.hpp:50
OdimH5 object dumper.
Definition odimh5v20_dump.hpp:52
Generic OdimH5 v2.0 object.
Definition odimh5v20_classes.hpp:95
virtual OdimDataset * createDataset()
Create a new dataset.
Definition odimh5v20_classes.cpp:213
virtual std::string getVersion()
Get the value of 'version' attribute.
Definition odimh5v20_classes.cpp:294
virtual void removeDataset(int index)
Delete a odim dataset group from the odim object.
Definition odimh5v20_classes.cpp:263
virtual time_t getDateTime()
Get the joined value of 'date' and 'time' attributes.
Definition odimh5v20_classes.cpp:296
virtual OdimDataset * getDataset(int index)
Get a dataset.
Definition odimh5v20_classes.cpp:227
virtual MetadataGroup * getWhere()
Get the WHERE attributes group.
Definition odimh5v20_classes.cpp:179
virtual int getDatasetCount()
Get the number of datasets in the file.
Definition odimh5v20_classes.cpp:208
virtual H5::Group * getH5Object()
Get the HDF5 group associated to this object.
Definition odimh5v20_classes.cpp:167
virtual H5::H5File * getFile()
Get the associated HDF5 file object.
Definition odimh5v20_classes.cpp:162
virtual std::string getObject()
Get the value of 'object' attribute.
Definition odimh5v20_classes.cpp:292
virtual void setDateTime(const time_t val)
Set the value of 'date' and 'time' attributes.
Definition odimh5v20_classes.cpp:297
virtual SourceInfo getSource()
Get the value of 'source' attribute.
Definition odimh5v20_classes.cpp:298
virtual void setVersion(const std::string &val)
Set the value of 'version' attribute.
Definition odimh5v20_classes.cpp:295
virtual bool existHow()
Test is the HOW attributes group exist.
Definition odimh5v20_classes.cpp:203
virtual MetadataGroup * getWhat()
Get the WHAT attributes group.
Definition odimh5v20_classes.cpp:172
virtual void setObject(const std::string &val)
Set the value of 'object' attribute.
Definition odimh5v20_classes.cpp:293
virtual MetadataGroup * getHow()
Get the HOW attributes group.
Definition odimh5v20_classes.cpp:186
virtual bool existWhere()
Test is the WHERE attributes group exist.
Definition odimh5v20_classes.cpp:198
virtual std::string getConventions()
Get OdimH5 conventions attribute value.
Definition odimh5v20_classes.cpp:152
virtual void setSource(const SourceInfo &val)
Set the value of 'source' attribute.
Definition odimh5v20_classes.cpp:299
virtual void setConventions()
Set OdimH5 conventions attribute value to the value required by OdimH5 specification.
Definition odimh5v20_classes.cpp:157
virtual bool existWhat()
Test is the WHAT attributes group exist.
Definition odimh5v20_classes.cpp:193
Generic OdimH5 v2.0 quality group.
Definition odimh5v20_classes.hpp:630
virtual bool existHow()
Test is the HOW attributes group exist.
Definition odimh5v20_classes.cpp:793
virtual MetadataGroup * getWhat()
Get the WHAT attributes group.
Definition odimh5v20_classes.cpp:798
virtual int getQualityWidth()
Get the width (cols num) of the matrix associated to this quality group.
Definition odimh5v20_classes.cpp:853
virtual H5::AtomType getQualityType()
Get the HDF5 atom type of the elements of the HDF5 dataset contained inside this 'quality' group.
Definition odimh5v20_classes.cpp:824
virtual MetadataGroup * getHow()
Get the HOW attributes group.
Definition odimh5v20_classes.cpp:812
virtual bool existWhat()
Test is the WHAT attributes group exist.
Definition odimh5v20_classes.cpp:783
virtual H5::Group * getH5Object()
Get the HDF5 group associated to this object.
Definition odimh5v20_classes.cpp:778
virtual MetadataGroup * getWhere()
Get the WHERE attributes group.
Definition odimh5v20_classes.cpp:805
virtual void writeQuality(const void *buff, int width, int height, const H5::DataType &elemtype)
Write data to the matrix associated to this 'quality' group.
Definition odimh5v20_classes.cpp:902
virtual int getQualityHeight()
Get the height (rows num) of the matrix associated to this quality group.
Definition odimh5v20_classes.cpp:860
virtual void readQuality(void *buffer)
Read data from the dataset of this 'quality' group.
Definition odimh5v20_classes.cpp:972
virtual bool existWhere()
Test is the WHERE attributes group exist.
Definition odimh5v20_classes.cpp:788
virtual void getQualityDimension(int *height, int *width)
Get height and width (rows and cols num) of the matrix associated to this quality group.
Definition odimh5v20_classes.cpp:867
OdimH5 v2.0 SCAN quantity data.
Definition odimh5v20_classes.hpp:1272
virtual double getOffset()
Get the value of 'offset' attribute.
Definition odimh5v20_classes.cpp:1795
virtual time_t getDateTime()
Get the joined value of 'date' and 'time' attributes.
Definition odimh5v20_classes.cpp:1776
virtual int getNumRays()
Get the number of rays in the matrix.
Definition odimh5v20_classes.cpp:1807
virtual std::string getVersion()
Get the value of 'version' attribute.
Definition odimh5v20_classes.cpp:1774
virtual void setNodata(double val)
Set the value of 'nodata' attribute.
Definition odimh5v20_classes.cpp:1798
virtual void writeAndTranslate(RayMatrix< float > &matrix, float offset, float gain, H5::DataType type)
Write the given matrix of data into the quantity matrix.
Definition odimh5v20_classes.cpp:1903
virtual double getUndetect()
Get the value of 'undetect' attribute.
Definition odimh5v20_classes.cpp:1799
virtual SourceInfo getSource()
Get the value of 'source' attribute.
Definition odimh5v20_classes.cpp:1778
virtual void setEndDateTime(time_t val)
Set the value of 'enddate' and 'endtime' attributes.
Definition odimh5v20_classes.cpp:1792
virtual double getGain()
Get the value of 'gain' attribute.
Definition odimh5v20_classes.cpp:1793
virtual void setGain(double val)
Set the value of 'gain' attribute.
Definition odimh5v20_classes.cpp:1794
virtual void setVersion(const std::string &val)
Set the value of 'version' attribute.
Definition odimh5v20_classes.cpp:1775
virtual time_t getEndDateTime()
Get the value of 'enddate' and 'endtime' attributes.
Definition odimh5v20_classes.cpp:1791
virtual VILHeights getProdParVIL()
Get the value of 'prodpar' attribute as VILHeights pair.
Definition odimh5v20_classes.cpp:1784
virtual std::string getProduct()
Get the value of 'product' attribute.
Definition odimh5v20_classes.cpp:1781
virtual void setDateTime(const time_t val)
Set the value of 'date' and 'time' attributes.
Definition odimh5v20_classes.cpp:1777
virtual void setQuantity(const std::string &val)
Get the value of 'quantity' attribute.
Definition odimh5v20_classes.cpp:1788
virtual time_t getStartDateTime()
Get the value of 'startdate' and 'starttime' attributes.
Definition odimh5v20_classes.cpp:1789
virtual std::string getQuantity()
Set the value of 'quantity' attribute.
Definition odimh5v20_classes.cpp:1787
virtual int getNumBins()
Get the number of bins in each ray of the matrix.
Definition odimh5v20_classes.cpp:1812
virtual double getProdPar()
Get the value of 'prodpar' attribute as double value.
Definition odimh5v20_classes.cpp:1783
virtual void readTranslatedData(RayMatrix< float > &matrix)
Read the matrix data translating the values.
Definition odimh5v20_classes.cpp:1817
virtual void setObject(const std::string &val)
Set the value of 'object' attribute.
Definition odimh5v20_classes.cpp:1773
virtual void setProdPar(double val)
Set the value of 'prodpar' attribute.
Definition odimh5v20_classes.cpp:1785
virtual void setOffset(double val)
Set the value of 'offset' attribute.
Definition odimh5v20_classes.cpp:1796
H5::AtomType getBinType()
Get the type of each element in the matrix.
Definition odimh5v20_classes.cpp:1802
virtual void setUndetect(double val)
Set the value of 'undetect' attribute.
Definition odimh5v20_classes.cpp:1800
virtual std::string getObject()
Get the value of 'object' attribute.
Definition odimh5v20_classes.cpp:1772
virtual void setProduct(const std::string &val)
Set the value of 'product' attribute.
Definition odimh5v20_classes.cpp:1782
virtual void setStartDateTime(time_t val)
Set the value of 'startdate' and 'starttime' attributes.
Definition odimh5v20_classes.cpp:1790
virtual double getNodata()
Get the value of 'nodata' attribute.
Definition odimh5v20_classes.cpp:1797
virtual void setSource(const SourceInfo &val)
Set the value of 'source' attribute.
Definition odimh5v20_classes.cpp:1779
OdimH5 v2.0 Polar Volume SCAN.
Definition odimh5v20_classes.hpp:989
virtual void setMDS(double val)
Set the 'MDS' attribute value.
Definition odimh5v20_classes.cpp:1557
virtual bool getSimulated()
Get the 'simulated' attribute value.
Definition odimh5v20_classes.cpp:1410
virtual void setDClutter(const std::vector< std::string > &value)
Set the 'Dclutter' attribute value.
Definition odimh5v20_classes.cpp:1561
virtual double getS2N()
Get the 'S2N' attribute value.
Definition odimh5v20_classes.cpp:1594
virtual double getKR_A()
Get the 'kr_a' attribute value.
Definition odimh5v20_classes.cpp:1406
virtual void setOUR(double val)
Set the 'OUR' attribute value.
Definition odimh5v20_classes.cpp:1559
virtual void setMax(double val)
Set the 'max' attribute value.
Definition odimh5v20_classes.cpp:1577
virtual time_t getEndDateTime()
Get the value of 'enddate' and 'endtime' attributes.
Definition odimh5v20_classes.cpp:1353
virtual double getPulseWidth()
Get the 'pulsewidth' attribute value.
Definition odimh5v20_classes.cpp:1424
static int originaRayIndex(int index, int originalDirection, int numrays, int a1gate)
Calculate the original ray index of a scan.
Definition odimh5v20_classes.hpp:1240
virtual void setProdPar(double val)
Set the value of 'prodpar' attribute.
Definition odimh5v20_classes.cpp:1347
virtual PolarScanData * createQuantityData(const char *name)
Create a new group for a quantity in the scan.
Definition odimh5v20_classes.cpp:1621
virtual int getQuantityDataCount()
Get number of quantities stored in the scan.
Definition odimh5v20_classes.cpp:1601
virtual time_t getDateTime()
Get the joined value of 'date' and 'time' attributes.
Definition odimh5v20_classes.cpp:1336
virtual void setQuantity(const std::string &val)
Get the value of 'quantity' attribute.
Definition odimh5v20_classes.cpp:1350
virtual std::vector< std::string > getDClutter()
Get the 'Dclutter' attribute value.
Definition odimh5v20_classes.cpp:1560
virtual std::string getComment()
Get the 'comment' attribute value.
Definition odimh5v20_classes.cpp:1562
virtual void setNodata(double val)
Set the value of 'nodata' attribute.
Definition odimh5v20_classes.cpp:1360
virtual double getMax()
Get the 'max' attribute value.
Definition odimh5v20_classes.cpp:1576
virtual void setKR_B(double val)
Set the 'kr_b' attribute value.
Definition odimh5v20_classes.cpp:1409
virtual std::vector< AZAngles > getAzimuthAngles()
Get the 'azangles' attribute values.
Definition odimh5v20_classes.cpp:1438
virtual void setPointAccAZ(double val)
Set the 'pointaccAZ' attribute values.
Definition odimh5v20_classes.cpp:1549
virtual std::string getProduct()
Get the value of 'product' attribute.
Definition odimh5v20_classes.cpp:1343
virtual void removeQuantityData(const char *name)
Delete the data associated to a quantity.
Definition odimh5v20_classes.cpp:1694
virtual double getRangeScale()
Get the 'rscale' attribute value.
Definition odimh5v20_classes.cpp:1381
virtual void setRAC(double val)
Set the 'RAC' attribute value.
Definition odimh5v20_classes.cpp:1589
virtual void setRangeStart(double val)
Set the 'rstart' attribute value.
Definition odimh5v20_classes.cpp:1380
virtual double getWaveLength()
Get the 'wavelength' attribute value.
Definition odimh5v20_classes.cpp:1418
virtual double getPAC()
Get the 'PAC' attribute value.
Definition odimh5v20_classes.cpp:1592
virtual void setS2N(double val)
Set the 'S2N' attribute value.
Definition odimh5v20_classes.cpp:1595
virtual void setSQI(double val)
Set the 'SQI' attribute value.
Definition odimh5v20_classes.cpp:1565
virtual bool getMalfunc()
Get the 'malfunc' attribute value.
Definition odimh5v20_classes.cpp:1550
virtual void setAvgPwr(double val)
Set the 'awgpwr' attribute value.
Definition odimh5v20_classes.cpp:1585
virtual void setBeamWidth(double val)
Set the 'beamwidth' attribute value.
Definition odimh5v20_classes.cpp:1417
virtual double getProdPar()
Get the value of 'prodpar' attribute as double value.
Definition odimh5v20_classes.cpp:1345
virtual void setGain(double val)
Set the value of 'gain' attribute.
Definition odimh5v20_classes.cpp:1356
virtual bool getVPRCorr()
Get the 'VPRCoor' attribute value.
Definition odimh5v20_classes.cpp:1570
virtual void setSoftware(const std::string &val)
Set the 'software' attribute value.
Definition odimh5v20_classes.cpp:1399
virtual void setPulseWidth(double val)
Get the 'pulsewidth' attribute value.
Definition odimh5v20_classes.cpp:1426
virtual PolarScanData * getQuantityData(int index)
Get the data associated to a quantity.
Definition odimh5v20_classes.cpp:1673
virtual void setEndDateTime(time_t val)
Set the value of 'enddate' and 'endtime' attributes.
Definition odimh5v20_classes.cpp:1354
virtual time_t getEndEpochs()
Get the 'endepochs' attribute value.
Definition odimh5v20_classes.cpp:1394
virtual void setPAC(double val)
Set the 'PAC' attribute value.
Definition odimh5v20_classes.cpp:1593
virtual double getRadarHorizon()
Get the 'radhoriz' attribute value.
Definition odimh5v20_classes.cpp:1554
virtual double getStep()
Get the 'step' attribute value.
Definition odimh5v20_classes.cpp:1578
virtual double getRPM()
Get the 'prm' attribute value.
Definition odimh5v20_classes.cpp:1421
virtual double getZR_B()
Get the 'zr_b' attribute value.
Definition odimh5v20_classes.cpp:1404
virtual int getDirection()
Get the direction of the scan.
Definition odimh5v20_classes.cpp:1701
virtual void setZR_B(double val)
Set the 'zr_b' attribute value.
Definition odimh5v20_classes.cpp:1405
virtual void setLOG(double val)
Set the 'LOG' attribute value.
Definition odimh5v20_classes.cpp:1569
virtual double getAvgPwr()
Get the 'avgpwr' attribute value.
Definition odimh5v20_classes.cpp:1584
virtual std::string getSoftwareVer()
Get the 'sw_version' attribute value.
Definition odimh5v20_classes.cpp:1400
virtual double getPointAccEl()
Get the 'pointaccEL' attribute values.
Definition odimh5v20_classes.cpp:1546
virtual void setKR_A(double val)
Set the 'kr_a' attribute value.
Definition odimh5v20_classes.cpp:1407
virtual void setTaskOrProdGen(const std::string &val)
Set the 'task' attribute value.
Definition odimh5v20_classes.cpp:1391
std::set< std::string > getStoredQuantities()
Get the name of all quantities present in this scan.
Definition odimh5v20_classes.cpp:1290
virtual void setCSR(double val)
Set the 'CSR' attribute value.
Definition odimh5v20_classes.cpp:1567
virtual time_t getStartDateTime()
Get the value of 'startdate' and 'starttime' attributes.
Definition odimh5v20_classes.cpp:1351
virtual void setSoftwareVer(const std::string &val)
Set the 'sw_version' attribute value.
Definition odimh5v20_classes.cpp:1401
virtual double getEAngle()
Get the 'elangle' attribute value.
Definition odimh5v20_classes.cpp:1375
virtual void setEndEpochs(time_t val)
Set the 'endepochs' attribute value.
Definition odimh5v20_classes.cpp:1395
virtual double getOUR()
Get the 'OUR' attribute value.
Definition odimh5v20_classes.cpp:1558
virtual void setPolarization(const std::string &val)
Set the 'polarization' attribute value.
Definition odimh5v20_classes.cpp:1597
virtual std::string getSoftware()
Get the 'software' attribute value.
Definition odimh5v20_classes.cpp:1398
virtual std::string getAzimuthMethod()
Get the 'azmethod' attribute value.
Definition odimh5v20_classes.cpp:1434
virtual double getRangeStart()
Get the 'rstart' attribute value.
Definition odimh5v20_classes.cpp:1379
virtual time_t getStartEpochs()
Get the 'startepochs' attribute value.
Definition odimh5v20_classes.cpp:1392
virtual void setDateTime(const time_t val)
Set the value of 'date' and 'time' attributes.
Definition odimh5v20_classes.cpp:1337
virtual double getNodata()
Get the value of 'nodata' attribute.
Definition odimh5v20_classes.cpp:1359
virtual void setRangeScale(double val)
Set the 'rscale' attribute value.
Definition odimh5v20_classes.cpp:1382
virtual void setLongitude(double val)
Set the value of 'longitude' attribute.
Definition odimh5v20_classes.cpp:1367
virtual double getRAC()
Get the 'RAC' attribute value.
Definition odimh5v20_classes.cpp:1588
virtual void setFreeze(double val)
Set the 'freeze' attribute value.
Definition odimh5v20_classes.cpp:1573
virtual void setStartEpochs(time_t val)
Set the 'startepochs' attribute value.
Definition odimh5v20_classes.cpp:1393
virtual double getMin()
Get the 'min' attribute value.
Definition odimh5v20_classes.cpp:1574
virtual void setBinMethod(const std::string &val)
Set the 'binmethod' attribute value.
Definition odimh5v20_classes.cpp:1437
virtual int getLevels()
Get the 'levels' attribute value.
Definition odimh5v20_classes.cpp:1580
virtual void setProduct(const std::string &val)
Set the value of 'product' attribute.
Definition odimh5v20_classes.cpp:1344
virtual void setAltitude(double val)
Set the value of 'altitude' attribute.
Definition odimh5v20_classes.cpp:1371
virtual double getPointAccAZ()
Get the 'pointaccAZ' attribute values.
Definition odimh5v20_classes.cpp:1548
virtual std::string getTaskOrProdGen()
Get the 'task' attribute value.
Definition odimh5v20_classes.cpp:1390
virtual void setRPM(double val)
Get the 'rpm' attribute value.
Definition odimh5v20_classes.cpp:1423
virtual void setUndetect(double val)
Set the value of 'undetect' attribute.
Definition odimh5v20_classes.cpp:1362
virtual double getFreeze()
Get the 'freeze' attribute value.
Definition odimh5v20_classes.cpp:1572
virtual void setPointAccEl(double val)
Set the 'pointaccEL' attribute values.
Definition odimh5v20_classes.cpp:1547
virtual double getBeamWidth()
Get the 'beamwidth' attribute value.
Definition odimh5v20_classes.cpp:1415
virtual int getNumBins()
Get the 'numbins' attribute value.
Definition odimh5v20_classes.cpp:1377
virtual void setComment(const std::string &val)
Set the 'comment' attribute value.
Definition odimh5v20_classes.cpp:1563
virtual void setRadarHorizon(double val)
Set the 'radhoriz' attribute value.
Definition odimh5v20_classes.cpp:1555
virtual void setStartDateTime(time_t val)
Set the value of 'startdate' and 'starttime' attributes.
Definition odimh5v20_classes.cpp:1352
virtual void setPeakPwr(double val)
Set the 'peakpwr' attribute value.
Definition odimh5v20_classes.cpp:1583
virtual std::string getVersion()
Get the value of 'version' attribute.
Definition odimh5v20_classes.cpp:1334
virtual double getZR_A()
Get the 'zr_a' attribute value.
Definition odimh5v20_classes.cpp:1402
virtual int getNumRays()
Get the 'numrays' attribute value.
Definition odimh5v20_classes.cpp:1383
virtual void setMin(double val)
Set the 'min' attribute value.
Definition odimh5v20_classes.cpp:1575
virtual double getOffset()
Get the value of 'offset' attribute.
Definition odimh5v20_classes.cpp:1357
virtual std::string getSystem()
Get the 'system' attribute value.
Definition odimh5v20_classes.cpp:1396
virtual void setAzimuthTimes(const std::vector< AZTimes > &val)
Set the 'aztimes' attribute values.
Definition odimh5v20_classes.cpp:1542
virtual void setStep(double val)
Set the 'step' attribute value.
Definition odimh5v20_classes.cpp:1579
virtual void setSimulated(bool val)
Set the 'simulated' attribute value.
Definition odimh5v20_classes.cpp:1411
virtual void setZR_A(double val)
Set the 'zr_a' attribute value.
Definition odimh5v20_classes.cpp:1403
virtual void setOffset(double val)
Set the value of 'offset' attribute.
Definition odimh5v20_classes.cpp:1358
virtual bool getBBC()
Get the 'BBC' attribute value.
Definition odimh5v20_classes.cpp:1590
virtual void setVPRCorr(bool val)
Set the 'VPRCoor' attribute value.
Definition odimh5v20_classes.cpp:1571
virtual int getHighPRF()
Get the 'highprf' attribute value.
Definition odimh5v20_classes.cpp:1430
virtual VILHeights getProdParVIL()
Get the value of 'prodpar' attribute as VILHeights pair.
Definition odimh5v20_classes.cpp:1346
virtual double getGain()
Get the value of 'gain' attribute.
Definition odimh5v20_classes.cpp:1355
virtual double getCSR()
Get the 'CSR' attribute value.
Definition odimh5v20_classes.cpp:1566
virtual double getMDS()
Get the 'MDS' attribute value.
Definition odimh5v20_classes.cpp:1556
virtual void setMalfunc(bool val)
Set the 'malfunc' attribute value.
Definition odimh5v20_classes.cpp:1551
virtual void setDynRange(double val)
Set the 'dynrange' attribute value.
Definition odimh5v20_classes.cpp:1587
virtual void setObject(const std::string &val)
Set the value of 'object' attribute.
Definition odimh5v20_classes.cpp:1333
virtual double getDynRange()
Get the 'dynrange' attribute value.
Definition odimh5v20_classes.cpp:1586
virtual double getUndetect()
Get the value of 'undetect' attribute.
Definition odimh5v20_classes.cpp:1361
virtual void setLowPRF(int val)
Get the 'lowprf' attribute value.
Definition odimh5v20_classes.cpp:1429
virtual void setHighPRF(int val)
Get the 'highprf' attribute value.
Definition odimh5v20_classes.cpp:1432
virtual void setLatitude(double val)
Set the value of 'latitude' attribute.
Definition odimh5v20_classes.cpp:1369
virtual double getLatitude()
Get the value of 'longitude' attribute.
Definition odimh5v20_classes.cpp:1368
virtual int getA1Gate()
Get the 'a1gate' attribute value.
Definition odimh5v20_classes.cpp:1385
virtual std::string getObject()
Get the value of 'object' attribute.
Definition odimh5v20_classes.cpp:1332
virtual std::vector< AZTimes > getAzimuthTimes()
Get the 'aztimes' attribute values.
Definition odimh5v20_classes.cpp:1505
virtual std::string getRadarMsg()
Get the 'radarmsg' attribute value.
Definition odimh5v20_classes.cpp:1552
virtual std::vector< double > getElevationAngles()
Get the 'elangles' attribute values.
Definition odimh5v20_classes.cpp:1472
virtual void setBBC(bool val)
Set the 'BBC' attribute value.
Definition odimh5v20_classes.cpp:1591
virtual void setSystem(const std::string &val)
Set the 'system' attribute value.
Definition odimh5v20_classes.cpp:1397
virtual void setNumRays(int val)
Set the 'numrays' attribute value.
Definition odimh5v20_classes.cpp:1384
virtual void setRadarMsg(const std::string &val)
Set the 'radarmsg' attribute value.
Definition odimh5v20_classes.cpp:1553
virtual int getQuantityDataIndex(const char *name)
Return the index of the 'data' group containing the given quantity.
Definition odimh5v20_classes.cpp:1728
virtual void setElevationAngles(const std::vector< double > &val, int precision=10)
Set the 'elangles' attribute values.
Definition odimh5v20_classes.cpp:1504
virtual void setWaveLength(double val)
Get the 'wavelength' attribute value.
Definition odimh5v20_classes.cpp:1420
virtual std::string getBinMethod()
Get the 'binmethod' attribute value.
Definition odimh5v20_classes.cpp:1436
virtual double getLOG()
Get the 'LOG' attribute value.
Definition odimh5v20_classes.cpp:1568
virtual void setA1Gate(int val)
Set the 'a1gate' attribute value.
Definition odimh5v20_classes.cpp:1386
virtual void setEAngle(double val)
Set the 'elangle' attribute value.
Definition odimh5v20_classes.cpp:1376
virtual void setAzimuthMethod(const std::string &val)
Set the 'azmethod' attribute value.
Definition odimh5v20_classes.cpp:1435
virtual double getPeakPwr()
Get the 'peakpwr' attribute value.
Definition odimh5v20_classes.cpp:1582
virtual int getLowPRF()
Get the 'lowprf' attribute value.
Definition odimh5v20_classes.cpp:1427
virtual SourceInfo getSource()
Get the value of 'source' attribute.
Definition odimh5v20_classes.cpp:1338
virtual double getKR_B()
Get the 'kr_b' attribute value.
Definition odimh5v20_classes.cpp:1408
virtual void setVersion(const std::string &val)
Set the value of 'version' attribute.
Definition odimh5v20_classes.cpp:1335
virtual void setSource(const SourceInfo &val)
Set the value of 'source' attribute.
Definition odimh5v20_classes.cpp:1339
virtual void setLevels(int val)
Set the 'levels' attribute value.
Definition odimh5v20_classes.cpp:1581
virtual void setNumBins(int val)
Set the 'numbins' attribute value.
Definition odimh5v20_classes.cpp:1378
virtual void setAzimuthAngles(const std::vector< AZAngles > &val, int precision=10)
Set the 'azangles' attribute values.
Definition odimh5v20_classes.cpp:1471
virtual std::string getPolarization()
Get the 'polarization' attribute value.
Definition odimh5v20_classes.cpp:1596
virtual bool hasQuantityData(const char *name)
Check if the scan contains the data associated to a quantity.
Definition odimh5v20_classes.cpp:1611
virtual std::string getQuantity()
Set the value of 'quantity' attribute.
Definition odimh5v20_classes.cpp:1349
virtual double getAltitude()
Get the value of 'altitude' attribute.
Definition odimh5v20_classes.cpp:1370
virtual double getSQI()
Get the 'SQI' attribute value.
Definition odimh5v20_classes.cpp:1564
OdimH5 v2.0 Polar Volume.
Definition odimh5v20_classes.hpp:846
virtual double getZR_A()
Get the 'zr_a' attribute value.
Definition odimh5v20_classes.cpp:1034
virtual void setStartEpochs(time_t val)
Set the 'startepochs' attribute value.
Definition odimh5v20_classes.cpp:1025
virtual void removeScan(int index)
Remove a scan from the volume.
Definition odimh5v20_classes.cpp:1117
virtual double getKR_B()
Get the 'kr_b' attribute value.
Definition odimh5v20_classes.cpp:1040
virtual std::string getSoftwareVer()
Get the 'sw_version' attribute value.
Definition odimh5v20_classes.cpp:1032
virtual void setSoftwareVer(const std::string &val)
Set the 'sw_version' attribute value.
Definition odimh5v20_classes.cpp:1033
virtual void setSimulated(bool val)
Set the 'simulated' attribute value.
Definition odimh5v20_classes.cpp:1043
virtual std::string getSystem()
Get the 'system' attribute value.
Definition odimh5v20_classes.cpp:1028
virtual int getScanCount()
Get the number of scans store in this volume.
Definition odimh5v20_classes.cpp:1075
virtual void setSystem(const std::string &val)
Set the 'system' attribute value.
Definition odimh5v20_classes.cpp:1029
virtual void setKR_B(double val)
Set the 'kr_b' attribute value.
Definition odimh5v20_classes.cpp:1041
virtual std::vector< double > getScanAngles()
Get the elevation angle for each scan in the volume.
Definition odimh5v20_classes.cpp:1146
virtual void setKR_A(double val)
Set the 'kr_a' attribute value.
Definition odimh5v20_classes.cpp:1039
virtual double getAltitude()
Get the value of 'altitude' attribute.
Definition odimh5v20_classes.cpp:1019
virtual double getLatitude()
Get the value of 'longitude' attribute.
Definition odimh5v20_classes.cpp:1017
virtual void setSoftware(const std::string &val)
Set the 'software' attribute value.
Definition odimh5v20_classes.cpp:1031
virtual double getZR_B()
Get the 'zr_b' attribute value.
Definition odimh5v20_classes.cpp:1036
virtual std::string getTaskOrProdGen()
Get the 'task' attribute value.
Definition odimh5v20_classes.cpp:1022
virtual void setLongitude(double val)
Set the value of 'longitude' attribute.
Definition odimh5v20_classes.cpp:1016
virtual time_t getEndEpochs()
Get the 'endepochs' attribute value.
Definition odimh5v20_classes.cpp:1026
virtual bool getSimulated()
Get the 'simulated' attribute value.
Definition odimh5v20_classes.cpp:1042
virtual void setTaskOrProdGen(const std::string &val)
Set the 'task' attribute value.
Definition odimh5v20_classes.cpp:1023
virtual std::string getSoftware()
Get the 'software' attribute value.
Definition odimh5v20_classes.cpp:1030
virtual double getKR_A()
Get the 'kr_a' attribute value.
Definition odimh5v20_classes.cpp:1038
virtual std::vector< double > getElevationAngles()
Get the elevation angles for all the scans in the volumes without duplicates.
Definition odimh5v20_classes.cpp:1122
virtual std::vector< PolarScan * > getScans()
Get the pointers to all the scans in the volume.
Definition odimh5v20_classes.cpp:1168
virtual std::set< std::string > getStoredQuantities()
Get the set of radar quantities stored in the scans.
Definition odimh5v20_classes.cpp:1264
virtual PolarScan * createScan()
Create a new scan in this volume.
Definition odimh5v20_classes.cpp:1080
virtual void setAltitude(double val)
Set the value of 'altitude' attribute.
Definition odimh5v20_classes.cpp:1020
virtual time_t getStartEpochs()
Get the 'startepochs' attribute value.
Definition odimh5v20_classes.cpp:1024
virtual void setLatitude(double val)
Set the value of 'latitude' attribute.
Definition odimh5v20_classes.cpp:1018
virtual void setZR_B(double val)
Set the 'zr_b' attribute value.
Definition odimh5v20_classes.cpp:1037
virtual PolarScan * getScan(int index)
Get a pointer to a scan of the volume.
Definition odimh5v20_classes.cpp:1100
virtual void setEndEpochs(time_t val)
Set the 'endepochs' attribute value.
Definition odimh5v20_classes.cpp:1027
virtual void setZR_A(double val)
Set the 'zr_a' attribute value.
Definition odimh5v20_classes.cpp:1035
virtual std::vector< PolarScan * > getScansBetween(double minElevation, double maxElevation)
Get the pointers to all the scans with an elevation angle between the given limits.
Definition odimh5v20_classes.cpp:1178
OdimH5 v2.0 2d product quantity data.
Definition odimh5v20_classes.hpp:2542
virtual void setProduct(const std::string &val)
Set the value of 'product' attribute.
Definition odimh5v20_classes.cpp:3415
virtual void setSource(const SourceInfo &val)
Set the value of 'source' attribute.
Definition odimh5v20_classes.cpp:3412
virtual time_t getEndDateTime()
Get the value of 'enddate' and 'endtime' attributes.
Definition odimh5v20_classes.cpp:3424
virtual int getNumXElem()
Get the number of x elements of the matrix.
Definition odimh5v20_classes.cpp:3445
virtual void setProdPar(double val)
Set the value of 'prodpar' attribute.
Definition odimh5v20_classes.cpp:3418
virtual std::string getObject()
Get the value of 'object' attribute.
Definition odimh5v20_classes.cpp:3405
virtual double getNodata()
Get the value of 'nodata' attribute.
Definition odimh5v20_classes.cpp:3430
virtual int getNumYElem()
Get the number of y elements of the matrix.
Definition odimh5v20_classes.cpp:3440
virtual void setVersion(const std::string &val)
Set the value of 'version' attribute.
Definition odimh5v20_classes.cpp:3408
virtual void removeQualityData(int index)
Delete the data associated to a quality.
Definition odimh5v20_classes.cpp:3622
virtual int getQualityDataCount()
Get number of quality fields stored in the scan.
Definition odimh5v20_classes.cpp:3602
virtual void writeAndTranslate(DataMatrix< float > &matrix, float offset, float gain, H5::DataType type)
Write the given matrix of data into the quantity matrix.
Definition odimh5v20_classes.cpp:3536
virtual SourceInfo getSource()
Get the value of 'source' attribute.
Definition odimh5v20_classes.cpp:3411
virtual std::string getQuantity()
Set the value of 'quantity' attribute.
Definition odimh5v20_classes.cpp:3420
virtual double getUndetect()
Get the value of 'undetect' attribute.
Definition odimh5v20_classes.cpp:3432
virtual std::string getProduct()
Get the value of 'product' attribute.
Definition odimh5v20_classes.cpp:3414
virtual double getProdPar()
Get the value of 'prodpar' attribute as double value.
Definition odimh5v20_classes.cpp:3416
virtual void setDateTime(const time_t val)
Set the value of 'date' and 'time' attributes.
Definition odimh5v20_classes.cpp:3410
virtual void setOffset(double val)
Set the value of 'offset' attribute.
Definition odimh5v20_classes.cpp:3429
virtual OdimQuality * createQualityData()
Create a new group for quality within the 'data' group.
Definition odimh5v20_classes.cpp:3627
virtual void readTranslatedData(DataMatrix< float > &matrix)
Read the matrix data translating the values.
Definition odimh5v20_classes.cpp:3450
virtual void setNodata(double val)
Set the value of 'nodata' attribute.
Definition odimh5v20_classes.cpp:3431
virtual void setUndetect(double val)
Set the value of 'undetect' attribute.
Definition odimh5v20_classes.cpp:3433
virtual VILHeights getProdParVIL()
Get the value of 'prodpar' attribute as VILHeights pair.
Definition odimh5v20_classes.cpp:3417
virtual OdimQuality * getQualityData(int index)
Get the data associated to a quality.
Definition odimh5v20_classes.cpp:3606
virtual void setStartDateTime(time_t val)
Set the value of 'startdate' and 'starttime' attributes.
Definition odimh5v20_classes.cpp:3423
H5::AtomType getElemType()
Get the type of each element in the matrix.
Definition odimh5v20_classes.cpp:3435
virtual void setQuantity(const std::string &val)
Get the value of 'quantity' attribute.
Definition odimh5v20_classes.cpp:3421
virtual void setEndDateTime(time_t val)
Set the value of 'enddate' and 'endtime' attributes.
Definition odimh5v20_classes.cpp:3425
virtual std::string getVersion()
Get the value of 'version' attribute.
Definition odimh5v20_classes.cpp:3407
virtual void setGain(double val)
Set the value of 'gain' attribute.
Definition odimh5v20_classes.cpp:3427
virtual void setObject(const std::string &val)
Set the value of 'object' attribute.
Definition odimh5v20_classes.cpp:3406
virtual time_t getStartDateTime()
Get the value of 'startdate' and 'starttime' attributes.
Definition odimh5v20_classes.cpp:3422
virtual time_t getDateTime()
Get the joined value of 'date' and 'time' attributes.
Definition odimh5v20_classes.cpp:3409
virtual double getOffset()
Get the value of 'offset' attribute.
Definition odimh5v20_classes.cpp:3428
virtual double getGain()
Get the value of 'gain' attribute.
Definition odimh5v20_classes.cpp:3426
OdimH5 v2.0 Product_2D Dataset.
Definition odimh5v20_classes.hpp:1786
virtual double getAvgPwr()
Get the 'avgpwr' attribute value.
Definition odimh5v20_classes.cpp:2851
virtual std::string getPolarization()
Get the 'polarization' attribute value.
Definition odimh5v20_classes.cpp:2863
virtual void setLOG(double val)
Set the 'LOG' attribute value.
Definition odimh5v20_classes.cpp:2836
virtual void setBinMethod(const std::string &val)
Set the 'binmethod' attribute value.
Definition odimh5v20_classes.cpp:2769
virtual void setStep(double val)
Set the 'step' attribute value.
Definition odimh5v20_classes.cpp:2846
virtual time_t getStartEpochs()
Get the 'startepochs' attribute value.
Definition odimh5v20_classes.cpp:2723
virtual std::string getAzimuthMethod()
Get the 'azmethod' attribute value.
Definition odimh5v20_classes.cpp:2766
virtual double getMax()
Get the 'max' attribute value.
Definition odimh5v20_classes.cpp:2843
virtual SourceInfo getSource()
Get the value of 'source' attribute.
Definition odimh5v20_classes.cpp:2717
virtual double getDynRange()
Get the 'dynrange' attribute value.
Definition odimh5v20_classes.cpp:2853
virtual double getPAC()
Get the 'PAC' attribute value.
Definition odimh5v20_classes.cpp:2859
virtual time_t getStartDateTime()
Get the value of 'startdate' and 'starttime' attributes.
Definition odimh5v20_classes.cpp:2753
virtual std::string getSystem()
Get the 'system' attribute value.
Definition odimh5v20_classes.cpp:2727
virtual void setOffset(double val)
Set the value of 'offset' attribute.
Definition odimh5v20_classes.cpp:2760
virtual void setDateTime(const time_t val)
Set the value of 'date' and 'time' attributes.
Definition odimh5v20_classes.cpp:2716
virtual double getRadarHorizon()
Get the 'radhoriz' attribute value.
Definition odimh5v20_classes.cpp:2821
virtual std::string getSoftware()
Get the 'software' attribute value.
Definition odimh5v20_classes.cpp:2729
virtual void setOUR(double val)
Set the 'OUR' attribute value.
Definition odimh5v20_classes.cpp:2826
virtual double getGain()
Get the value of 'gain' attribute.
Definition odimh5v20_classes.cpp:2757
virtual std::string getRadarMsg()
Get the 'radarmsg' attribute value.
Definition odimh5v20_classes.cpp:2819
virtual void setPulseWidth(double val)
Get the 'pulsewidth' attribute value.
Definition odimh5v20_classes.cpp:2878
virtual std::string getBinMethod()
Get the 'binmethod' attribute value.
Definition odimh5v20_classes.cpp:2768
virtual void setQuantity(const std::string &val)
Get the value of 'quantity' attribute.
Definition odimh5v20_classes.cpp:2752
virtual time_t getEndEpochs()
Get the 'endepochs' attribute value.
Definition odimh5v20_classes.cpp:2725
virtual double getPulseWidth()
Get the 'pulsewidth' attribute value.
Definition odimh5v20_classes.cpp:2876
virtual void setSoftware(const std::string &val)
Set the 'software' attribute value.
Definition odimh5v20_classes.cpp:2730
virtual void setBBC(bool val)
Set the 'BBC' attribute value.
Definition odimh5v20_classes.cpp:2858
virtual VILHeights getProdParVIL()
Get the value of 'prodpar' attribute as VILHeights pair.
Definition odimh5v20_classes.cpp:2748
virtual void setVPRCorr(bool val)
Set the 'VPRCoor' attribute value.
Definition odimh5v20_classes.cpp:2838
virtual double getRPM()
Get the 'prm' attribute value.
Definition odimh5v20_classes.cpp:2873
virtual double getPointAccAZ()
Get the 'pointaccAZ' attribute values.
Definition odimh5v20_classes.cpp:2815
virtual double getPointAccEl()
Get the 'pointaccEL' attribute values.
Definition odimh5v20_classes.cpp:2813
virtual double getProdPar()
Get the value of 'prodpar' attribute as double value.
Definition odimh5v20_classes.cpp:2747
virtual double getUndetect()
Get the value of 'undetect' attribute.
Definition odimh5v20_classes.cpp:2763
virtual void setLowPRF(int val)
Get the 'lowprf' attribute value.
Definition odimh5v20_classes.cpp:2881
virtual bool getBBC()
Get the 'BBC' attribute value.
Definition odimh5v20_classes.cpp:2857
virtual void setElevationAngles(const std::vector< double > &val, int precision=10)
Set the 'elangles' attribute values.
Definition odimh5v20_classes.cpp:2796
virtual bool getSimulated()
Get the 'simulated' attribute value.
Definition odimh5v20_classes.cpp:2741
virtual double getCSR()
Get the 'CSR' attribute value.
Definition odimh5v20_classes.cpp:2833
virtual void setSource(const SourceInfo &val)
Set the value of 'source' attribute.
Definition odimh5v20_classes.cpp:2718
virtual bool hasQuantityData(const char *name)
Check if the scan contains the data associated to a quantity.
Definition odimh5v20_classes.cpp:2925
virtual void setUndetect(double val)
Set the value of 'undetect' attribute.
Definition odimh5v20_classes.cpp:2764
virtual void setAvgPwr(double val)
Set the 'awgpwr' attribute value.
Definition odimh5v20_classes.cpp:2852
virtual int getQuantityDataCount()
Get number of quantities stored in the scan.
Definition odimh5v20_classes.cpp:2915
virtual void setAzimuthMethod(const std::string &val)
Set the 'azmethod' attribute value.
Definition odimh5v20_classes.cpp:2767
virtual std::string getComment()
Get the 'comment' attribute value.
Definition odimh5v20_classes.cpp:2829
virtual double getBeamWidth()
Get the 'beamwidth' attribute value.
Definition odimh5v20_classes.cpp:2867
virtual void setDynRange(double val)
Set the 'dynrange' attribute value.
Definition odimh5v20_classes.cpp:2854
virtual std::vector< double > getElevationAngles()
Get the 'elangles' attribute values.
Definition odimh5v20_classes.cpp:2783
virtual void setCSR(double val)
Set the 'CSR' attribute value.
Definition odimh5v20_classes.cpp:2834
virtual double getRAC()
Get the 'RAC' attribute value.
Definition odimh5v20_classes.cpp:2855
virtual void setSimulated(bool val)
Set the 'simulated' attribute value.
Definition odimh5v20_classes.cpp:2742
virtual int getQuantityDataIndex(const char *name)
Return the index of the 'data' group containing the given quantity.
Definition odimh5v20_classes.cpp:2930
virtual std::string getObject()
Get the value of 'object' attribute.
Definition odimh5v20_classes.cpp:2711
virtual void setMin(double val)
Set the 'min' attribute value.
Definition odimh5v20_classes.cpp:2842
virtual void setRadarHorizon(double val)
Set the 'radhoriz' attribute value.
Definition odimh5v20_classes.cpp:2822
virtual int getHighPRF()
Get the 'highprf' attribute value.
Definition odimh5v20_classes.cpp:2882
virtual void setProdPar(double val)
Set the value of 'prodpar' attribute.
Definition odimh5v20_classes.cpp:2749
virtual time_t getEndDateTime()
Get the value of 'enddate' and 'endtime' attributes.
Definition odimh5v20_classes.cpp:2755
virtual double getStep()
Get the 'step' attribute value.
Definition odimh5v20_classes.cpp:2845
virtual void setEndDateTime(time_t val)
Set the value of 'enddate' and 'endtime' attributes.
Definition odimh5v20_classes.cpp:2756
virtual std::string getSoftwareVer()
Get the 'sw_version' attribute value.
Definition odimh5v20_classes.cpp:2731
virtual void setZR_A(double val)
Set the 'zr_a' attribute value.
Definition odimh5v20_classes.cpp:2734
virtual void setAzimuthAngles(const std::vector< AZAngles > &val, int precision=10)
Set the 'azangles' attribute values.
Definition odimh5v20_classes.cpp:2782
virtual std::string getProduct()
Get the value of 'product' attribute.
Definition odimh5v20_classes.cpp:2745
virtual void setMalfunc(bool val)
Set the 'malfunc' attribute value.
Definition odimh5v20_classes.cpp:2818
virtual void setVersion(const std::string &val)
Set the value of 'version' attribute.
Definition odimh5v20_classes.cpp:2714
virtual void setPAC(double val)
Set the 'PAC' attribute value.
Definition odimh5v20_classes.cpp:2860
virtual double getOUR()
Get the 'OUR' attribute value.
Definition odimh5v20_classes.cpp:2825
virtual std::vector< AZTimes > getAzimuthTimes()
Get the 'aztimes' attribute values.
Definition odimh5v20_classes.cpp:2797
virtual int getLowPRF()
Get the 'lowprf' attribute value.
Definition odimh5v20_classes.cpp:2879
virtual void setPeakPwr(double val)
Set the 'peakpwr' attribute value.
Definition odimh5v20_classes.cpp:2850
virtual double getMDS()
Get the 'MDS' attribute value.
Definition odimh5v20_classes.cpp:2823
virtual double getS2N()
Get the 'S2N' attribute value.
Definition odimh5v20_classes.cpp:2861
virtual double getOffset()
Get the value of 'offset' attribute.
Definition odimh5v20_classes.cpp:2759
virtual Product_2D_Data * createQuantityData(const char *name)
Create a new group for a quantity in the product.
Definition odimh5v20_classes.cpp:2895
virtual void setSystem(const std::string &val)
Set the 'system' attribute value.
Definition odimh5v20_classes.cpp:2728
virtual double getZR_B()
Get the 'zr_b' attribute value.
Definition odimh5v20_classes.cpp:2735
virtual void setObject(const std::string &val)
Set the value of 'object' attribute.
Definition odimh5v20_classes.cpp:2712
virtual void setKR_B(double val)
Set the 'kr_b' attribute value.
Definition odimh5v20_classes.cpp:2740
virtual double getLOG()
Get the 'LOG' attribute value.
Definition odimh5v20_classes.cpp:2835
virtual void setStartDateTime(time_t val)
Set the value of 'startdate' and 'starttime' attributes.
Definition odimh5v20_classes.cpp:2754
virtual void setRadarMsg(const std::string &val)
Set the 'radarmsg' attribute value.
Definition odimh5v20_classes.cpp:2820
virtual std::string getQuantity()
Set the value of 'quantity' attribute.
Definition odimh5v20_classes.cpp:2751
virtual void setRPM(double val)
Get the 'rpm' attribute value.
Definition odimh5v20_classes.cpp:2875
virtual double getMin()
Get the 'min' attribute value.
Definition odimh5v20_classes.cpp:2841
virtual Product_2D_Data * getQuantityData(int index)
Get the data associated to a quantity.
Definition odimh5v20_classes.cpp:2982
virtual void setPointAccEl(double val)
Set the 'pointaccEL' attribute values.
Definition odimh5v20_classes.cpp:2814
virtual void setStartEpochs(time_t val)
Set the 'startepochs' attribute value.
Definition odimh5v20_classes.cpp:2724
virtual double getSQI()
Get the 'SQI' attribute value.
Definition odimh5v20_classes.cpp:2831
virtual void setZR_B(double val)
Set the 'zr_b' attribute value.
Definition odimh5v20_classes.cpp:2736
virtual void setPolarization(const std::string &val)
Set the 'polarization' attribute value.
Definition odimh5v20_classes.cpp:2864
virtual int getLevels()
Get the 'levels' attribute value.
Definition odimh5v20_classes.cpp:2847
virtual void setWaveLength(double val)
Get the 'wavelength' attribute value.
Definition odimh5v20_classes.cpp:2872
virtual void setMDS(double val)
Set the 'MDS' attribute value.
Definition odimh5v20_classes.cpp:2824
virtual void setEndEpochs(time_t val)
Set the 'endepochs' attribute value.
Definition odimh5v20_classes.cpp:2726
virtual std::string getVersion()
Get the value of 'version' attribute.
Definition odimh5v20_classes.cpp:2713
virtual double getPeakPwr()
Get the 'peakpwr' attribute value.
Definition odimh5v20_classes.cpp:2849
virtual void setMax(double val)
Set the 'max' attribute value.
Definition odimh5v20_classes.cpp:2844
virtual double getZR_A()
Get the 'zr_a' attribute value.
Definition odimh5v20_classes.cpp:2733
virtual bool getMalfunc()
Get the 'malfunc' attribute value.
Definition odimh5v20_classes.cpp:2817
virtual void setComment(const std::string &val)
Set the 'comment' attribute value.
Definition odimh5v20_classes.cpp:2830
virtual void setPointAccAZ(double val)
Set the 'pointaccAZ' attribute values.
Definition odimh5v20_classes.cpp:2816
virtual std::vector< std::string > getDClutter()
Get the 'Dclutter' attribute value.
Definition odimh5v20_classes.cpp:2827
virtual void setTaskOrProdGen(const std::string &val)
Set the 'task' attribute value.
Definition odimh5v20_classes.cpp:2722
std::set< std::string > getStoredQuantities()
Get the name of all quantities present in this scan.
Definition odimh5v20_classes.cpp:2960
virtual void setBeamWidth(double val)
Set the 'beamwidth' attribute value.
Definition odimh5v20_classes.cpp:2869
virtual void setRAC(double val)
Set the 'RAC' attribute value.
Definition odimh5v20_classes.cpp:2856
virtual void setAzimuthTimes(const std::vector< AZTimes > &val)
Set the 'aztimes' attribute values.
Definition odimh5v20_classes.cpp:2810
virtual void setLevels(int val)
Set the 'levels' attribute value.
Definition odimh5v20_classes.cpp:2848
virtual void setDClutter(const std::vector< std::string > &value)
Set the 'Dclutter' attribute value.
Definition odimh5v20_classes.cpp:2828
virtual void removeQuantityData(const char *name)
Delete the data associated to a quantity.
Definition odimh5v20_classes.cpp:3031
virtual void setKR_A(double val)
Set the 'kr_a' attribute value.
Definition odimh5v20_classes.cpp:2738
virtual std::vector< AZAngles > getAzimuthAngles()
Get the 'azangles' attribute values.
Definition odimh5v20_classes.cpp:2770
virtual void setGain(double val)
Set the value of 'gain' attribute.
Definition odimh5v20_classes.cpp:2758
virtual void setSQI(double val)
Set the 'SQI' attribute value.
Definition odimh5v20_classes.cpp:2832
virtual void setFreeze(double val)
Set the 'freeze' attribute value.
Definition odimh5v20_classes.cpp:2840
virtual double getKR_A()
Get the 'kr_a' attribute value.
Definition odimh5v20_classes.cpp:2737
virtual double getKR_B()
Get the 'kr_b' attribute value.
Definition odimh5v20_classes.cpp:2739
virtual void setS2N(double val)
Set the 'S2N' attribute value.
Definition odimh5v20_classes.cpp:2862
virtual double getWaveLength()
Get the 'wavelength' attribute value.
Definition odimh5v20_classes.cpp:2870
virtual void setProduct(const std::string &val)
Set the value of 'product' attribute.
Definition odimh5v20_classes.cpp:2746
virtual time_t getDateTime()
Get the joined value of 'date' and 'time' attributes.
Definition odimh5v20_classes.cpp:2715
virtual void setSoftwareVer(const std::string &val)
Set the 'sw_version' attribute value.
Definition odimh5v20_classes.cpp:2732
virtual std::string getTaskOrProdGen()
Get the 'task' attribute value.
Definition odimh5v20_classes.cpp:2721
virtual double getFreeze()
Get the 'freeze' attribute value.
Definition odimh5v20_classes.cpp:2839
virtual bool getVPRCorr()
Get the 'VPRCoor' attribute value.
Definition odimh5v20_classes.cpp:2837
virtual double getNodata()
Get the value of 'nodata' attribute.
Definition odimh5v20_classes.cpp:2761
virtual void setNodata(double val)
Set the value of 'nodata' attribute.
Definition odimh5v20_classes.cpp:2762
virtual void setHighPRF(int val)
Get the 'highprf' attribute value.
Definition odimh5v20_classes.cpp:2884
OdimH5 v2.0 CAPPI Product Dataset.
Definition odimh5v20_classes.hpp:2141
OdimH5 v2.0 COMP Product Dataset.
Definition odimh5v20_classes.hpp:2325
OdimH5 v2.0 ETOP Product Dataset.
Definition odimh5v20_classes.hpp:2193
OdimH5 v2.0 HSP Product Dataset.
Definition odimh5v20_classes.hpp:2490
OdimH5 v2.0 PPI Product Dataset.
Definition odimh5v20_classes.hpp:2298
OdimH5 v2.0 MAX Product Dataset.
Definition odimh5v20_classes.hpp:2219
OdimH5 v2.0 PCAPPI Product Dataset.
Definition odimh5v20_classes.hpp:2167
OdimH5 v2.0 PPI Product Dataset.
Definition odimh5v20_classes.hpp:2115
OdimH5 v2.0 Panel Product Dataset.
Definition odimh5v20_classes.hpp:2455
virtual double getStartLongitude()
Get the 'StartLongitude' attribute value.
Definition odimh5v20_classes.cpp:3348
virtual void setStopLongitude(double val)
set the 'StopLongitude' attribute value
Definition odimh5v20_classes.cpp:3353
virtual double getStopLatitude()
Get the 'StopLatitude' attribute value.
Definition odimh5v20_classes.cpp:3354
virtual void setStartLongitude(double val)
set the 'StartLongitude' attribute value
Definition odimh5v20_classes.cpp:3349
virtual double getStartLatitude()
Get the 'StartLatitide' attribute value.
Definition odimh5v20_classes.cpp:3350
virtual void setStartLatitude(double val)
set the 'StartLatitude' attribute value
Definition odimh5v20_classes.cpp:3351
virtual void setStopLatitude(double val)
set the 'StopLatitude' attribute value
Definition odimh5v20_classes.cpp:3355
virtual double getStopLongitude()
Get the 'StopLongitude' attribute value.
Definition odimh5v20_classes.cpp:3352
OdimH5 v2.0 RHI Product Dataset.
Definition odimh5v20_classes.hpp:2417
virtual double getAzimuthAngle()
Get the 'Azimuth Angles' attribute value.
Definition odimh5v20_classes.cpp:3326
virtual void setAngles(const std::vector< Angles > &val, int precision=0)
set the 'Angles' attribute value
Definition odimh5v20_classes.cpp:3329
virtual double getRange()
Get the 'Range' attribute value.
Definition odimh5v20_classes.cpp:3330
virtual double getRHILon()
Get the 'RHI longitude' attribute value.
Definition odimh5v20_classes.cpp:3322
virtual void setRHILon(double val)
set the 'RHI Longitude' attribute value
Definition odimh5v20_classes.cpp:3323
virtual void setRHILat(double val)
set the 'RHI Latitude' attribute value
Definition odimh5v20_classes.cpp:3325
virtual void setAzimuthAngle(double val)
set the 'Azimuth Angles' attribute value
Definition odimh5v20_classes.cpp:3327
virtual void setRange(double val)
set the 'Range' attribute value
Definition odimh5v20_classes.cpp:3331
virtual std::vector< Angles > getAngles()
Get the 'Angles' attribute value.
Definition odimh5v20_classes.cpp:3328
virtual double getRHILat()
Get the 'RHI Latitude' attribute value.
Definition odimh5v20_classes.cpp:3324
OdimH5 v2.0 RR Product Dataset.
Definition odimh5v20_classes.hpp:2246
OdimH5 v2.0 VIL Product Dataset.
Definition odimh5v20_classes.hpp:2272
OdimH5 v2.0 VSP Product Dataset.
Definition odimh5v20_classes.hpp:2517
OdimH5 v2.0 XSEC Product Dataset.
Definition odimh5v20_classes.hpp:2390
OdimH5 rays matrix.
Definition odimh5v20_support.hpp:616
OdimH5 object source informations.
Definition odimh5v20_support.hpp:111
Bottom and top heights (m) of the integration layer.
Definition odimh5v20_support.hpp:418
OdimH5 v2.0 Vericat Product_2D Dataset.
Definition odimh5v20_classes.hpp:2352
virtual void setYScale(double val)
set the 'Y scale' attribute value
Definition odimh5v20_classes.cpp:3282
virtual void setYSize(int val)
set the 'Y size' attribute value
Definition odimh5v20_classes.cpp:3278
virtual void setMinHeight(double val)
set the 'Min Height' attribute value
Definition odimh5v20_classes.cpp:3285
virtual double getYScale()
Get the 'Y scale' attribute value.
Definition odimh5v20_classes.cpp:3281
virtual int getYSize()
Get the 'Y size' attribute value.
Definition odimh5v20_classes.cpp:3277
virtual double getXScale()
get the 'X scale' attribute value
Definition odimh5v20_classes.cpp:3279
virtual void setMaxHeight(double val)
set the 'Max Height' attribute value
Definition odimh5v20_classes.cpp:3287
virtual double getMaxHeight()
Get the 'Max Height' attribute value.
Definition odimh5v20_classes.cpp:3286
virtual int getXSize()
Get the 'X size' attribute value.
Definition odimh5v20_classes.cpp:3275
virtual double getMinHeight()
Get the 'Min Height' attribute value.
Definition odimh5v20_classes.cpp:3284
virtual void setXSize(int val)
set the 'X size' attribute value
Definition odimh5v20_classes.cpp:3276
virtual void setXScale(double val)
set the 'X scale' attribute value
Definition odimh5v20_classes.cpp:3280
Interface fot WHAT dataset attributes methods.
Definition odimh5v20_metadata.hpp:1035
Interface fot WHAT root attributes methods.
Definition odimh5v20_metadata.hpp:976
Interface fot WHERE dataset attributes methods for images.
Definition odimh5v20_metadata.hpp:1367
Interface for WHERE dataset attributes methods for Panel.
Definition odimh5v20_metadata.hpp:1660
Interface for WHERE dataset attributes methods for RHI.
Definition odimh5v20_metadata.hpp:1596
Interface fot WHERE root attributes methods.
Definition odimh5v20_metadata.hpp:1174
Interface fot WHERE dataset attributes methods for polar scan.
Definition odimh5v20_metadata.hpp:1211
Interface for WHERE dataset attributes methods for XSEC.
Definition odimh5v20_metadata.hpp:1522
OdimH5 v2.0 XsecObject.
Definition odimh5v20_classes.hpp:1725
virtual double getAzimuthAngle()
Get the 'Azimuth Angles' attribute value.
Definition odimh5v20_classes.cpp:2668
virtual void setRange(double val)
set the 'Range' attribute value
Definition odimh5v20_classes.cpp:2673
virtual void setAngles(const std::vector< Angles > &val, int precision=0)
set the 'Angles' attribute value
Definition odimh5v20_classes.cpp:2671
virtual int getYSize()
Get the 'Y size' attribute value.
Definition odimh5v20_classes.cpp:2651
virtual void setStopLatitude(double val)
set the 'StopLatitude' attribute value
Definition odimh5v20_classes.cpp:2682
virtual double getMinHeight()
Get the 'Min Height' attribute value.
Definition odimh5v20_classes.cpp:2658
virtual double getStopLongitude()
Get the 'StopLongitude' attribute value.
Definition odimh5v20_classes.cpp:2679
virtual void setStopLongitude(double val)
set the 'StopLongitude' attribute value
Definition odimh5v20_classes.cpp:2680
virtual void setMaxHeight(double val)
set the 'Max Height' attribute value
Definition odimh5v20_classes.cpp:2661
virtual double getYScale()
Get the 'Y scale' attribute value.
Definition odimh5v20_classes.cpp:2655
virtual void setStartLatitude(double val)
set the 'StartLatitude' attribute value
Definition odimh5v20_classes.cpp:2678
virtual void setAzimuthAngle(double val)
set the 'Azimuth Angles' attribute value
Definition odimh5v20_classes.cpp:2669
virtual double getXScale()
get the 'X scale' attribute value
Definition odimh5v20_classes.cpp:2653
virtual double getStartLongitude()
Get the 'StartLongitude' attribute value.
Definition odimh5v20_classes.cpp:2675
virtual int getXSize()
Get the 'X size' attribute value.
Definition odimh5v20_classes.cpp:2649
virtual void setYScale(double val)
set the 'Y scale' attribute value
Definition odimh5v20_classes.cpp:2656
virtual double getStartLatitude()
Get the 'StartLatitide' attribute value.
Definition odimh5v20_classes.cpp:2677
virtual void setXScale(double val)
set the 'X scale' attribute value
Definition odimh5v20_classes.cpp:2654
virtual double getStopLatitude()
Get the 'StopLatitude' attribute value.
Definition odimh5v20_classes.cpp:2681
virtual double getMaxHeight()
Get the 'Max Height' attribute value.
Definition odimh5v20_classes.cpp:2660
virtual double getRHILat()
Get the 'RHI Latitude' attribute value.
Definition odimh5v20_classes.cpp:2666
virtual void setMinHeight(double val)
set the 'Min Height' attribute value
Definition odimh5v20_classes.cpp:2659
virtual std::vector< Angles > getAngles()
Get the 'Angles' attribute value.
Definition odimh5v20_classes.cpp:2670
virtual void setXSize(int val)
set the 'X size' attribute value
Definition odimh5v20_classes.cpp:2650
virtual void setRHILon(double val)
set the 'RHI Longitude' attribute value
Definition odimh5v20_classes.cpp:2665
virtual double getRHILon()
Get the 'RHI longitude' attribute value.
Definition odimh5v20_classes.cpp:2664
virtual void setRHILat(double val)
set the 'RHI Latitude' attribute value
Definition odimh5v20_classes.cpp:2667
virtual void setStartLongitude(double val)
set the 'StartLongitude' attribute value
Definition odimh5v20_classes.cpp:2676
virtual double getRange()
Get the 'Range' attribute value.
Definition odimh5v20_classes.cpp:2672
virtual void setYSize(int val)
set the 'Y size' attribute value
Definition odimh5v20_classes.cpp:2652
Internal library macros.
Namespace related to ODIMH5 version 2.0.
Definition odimh5v20.hpp:46
Constants and values used by OdimH5 library.
OdimH5 exceptions.
Classes about attributes groups for OdimH5 objects.
Classes and struct used by main OdimH5 classes.