27 #ifndef GRIBFILEINDEX_H_ 28 #define GRIBFILEINDEX_H_ 30 #include <boost/date_time/posix_time/posix_time.hpp> 31 #include <boost/filesystem/operations.hpp> 36 #include <libxml/xmlreader.h> 38 #include <boost/date_time/posix_time/posix_time_types.hpp> 39 #include <boost/regex.hpp> 64 bool isValid()
const {
return fileURL_ !=
"";}
135 long timeRangeIndicator_;
138 long perturbationNo_;
139 long totalNumberOfEnsembles_;
152 boost::posix_time::ptime time_;
158 GribFileMessageEqualLevelTime(
long edition,
long levelType,
long levelNo, boost::posix_time::ptime time) : edition_(edition), levelType_(levelType), levelNo_(levelNo), time_(time) {}
165 boost::posix_time::ptime time_;
241 void initByXML(
const boost::filesystem::path& xmlFilePath);
242 void initByXMLReader(
const boost::filesystem::path& xmlFilePath);
const std::vector< GribFileMessage > & listMessages() const
Definition: GribFileIndex.h:233
const std::string & getFileURL() const
const std::string & getUrl() const
Definition: GribFileIndex.h:234
Functor to find Messages with equal time.
Definition: GribFileIndex.h:146
boost::posix_time::ptime getValidTime() const
basic_string< char > string
const GridDefinition & getGridDefinition() const
const std::string & getName() const
size_t getTotalNumberOfEnsembles() const
Definition: GribFileIndex.h:84
const std::vector< long > & getParameterIds() const
const long getEdition() const
accessors
const off_t getFilePosition() const
const size_t getMessageNumber() const
messages number within a multi-message
Functor to find messages with equal level and time.
Definition: GribFileIndex.h:156
bool isValid() const
test if this is a proper GribFileMessage or just the default constructor
Definition: GribFileIndex.h:64
const std::string & getShortName() const
basic_ostream< char > ostream
~GribFileMessageEqualTime()
Definition: GribFileIndex.h:149
Definition: GribFileIndex.h:169
~GribFileMessageEqualLevelTime()
Definition: GribFileIndex.h:159
std::string toString() const
give a xml-string representation
size_t readLevelData(std::vector< double > &levelData, double missingValue, bool asimofHeader=false) const
Definition: GridDefinition.h:40
xmlNode * xmlNodePtr
Definition: XMLDoc.h:39
Definition: C_CDMReader.h:35
Definition: GribFileIndex.h:46
GribFileMessageEqualLevelTime(long edition, long levelType, long levelNo, boost::posix_time::ptime time)
Definition: GribFileIndex.h:158
bool operator()(const GribFileMessage &gfm)
Definition: GribFileIndex.h:150
long getTimeRangeIndicator() const
return gribs timeRangeIndicator (0=instant, 2,4=accumulated)
boost::posix_time::ptime getReferenceTime() const
std::ostream & operator<<(std::ostream &out, CoordinateAxis ca)
const std::map< std::string, long > & getOtherKeys() const
GribFileMessageEqualTime(boost::posix_time::ptime time)
Definition: GribFileIndex.h:148
bool operator()(const GribFileMessage &gfm)
Definition: GribFileIndex.h:160
long getLevelType() const
size_t readData(std::vector< double > &data, double missingValue) const
size_t getPerturbationNumber() const
Definition: GribFileIndex.h:88
long getLevelNumber() const
const std::string & getTypeOfGrid() const