libSplash
CollectionType.hpp
1 
26 #ifndef COLLECTIONTYPE_H
27 #define COLLECTIONTYPE_H
28 
29 #include <hdf5.h>
30 #include <string>
31 
32 #define H5DataType hid_t
33 
34 namespace splash
35 {
36 
41  {
42  public:
43 
49  const H5DataType& getDataType() const
50  {
51  return type;
52  }
53 
59  virtual size_t getSize() const = 0;
60 
66  virtual std::string toString() const = 0;
67 
71  virtual ~CollectionType()
72  {
73  }
74  protected:
75  explicit CollectionType(H5DataType inType = -1): type(inType)
76  {
77  }
78 
79  H5DataType type;
80  };
81 
82 } // namespace DataCollector
83 
84 #endif /* COLLECTIONTYPE_H */
virtual size_t getSize() const =0
virtual std::string toString() const =0
const H5DataType & getDataType() const