16 #ifndef odc_core_Header_H
17 #define odc_core_Header_H
25 #include "eckit/memory/NonCopyable.h"
26 #include "eckit/io/Buffer.h"
28 namespace eckit {
class DataHandle; }
36 using Flags = std::vector<double>;
48 class Header :
private eckit::NonCopyable {
63 static bool readMagic(eckit::DataHandle& dh);
67 static std::pair<eckit::Buffer, size_t>
70 static std::pair<eckit::Buffer, size_t>
75 template <
typename ByteOrder>
void load(eckit::DataHandle& dh);
std::map< std::string, std::string > Properties
const int32_t FORMAT_VERSION_NUMBER_MAJOR
const uint16_t ODA_MAGIC_NUMBER
const int32_t BYTE_ORDER_INDICATOR
std::vector< double > Flags
const int32_t FORMAT_VERSION_NUMBER_MINOR