HdfDefines.h 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. /// \copyright Copyright (c) Catalysts GmbH
  2. /// \author Patrik Kovacs, Catalysts GmbH
  3. #ifndef HDF4CPP_HDFDEFINES_H
  4. #define HDF4CPP_HDFDEFINES_H
  5. #include <map>
  6. #include <hdf/mfhdf.h>
  7. #define MAX_DIMENSION 32
  8. #define MAX_NAME_LENGTH 1000
  9. namespace hdf4cpp {
  10. /// \enum Type
  11. /// The type of the HdfObject.
  12. /// \var HFILE
  13. /// file type
  14. /// \var SDATA
  15. /// SData type
  16. /// \var VGROUP
  17. /// VGroup type
  18. /// \var VDATA
  19. /// VData type
  20. enum Type {HFILE, SDATA, VGROUP, VDATA};
  21. /// \enum ClassType
  22. /// What kind of object it represents:
  23. /// \var FILE
  24. /// file
  25. /// \var ITEM
  26. /// item
  27. /// \var ATTRIBUTE
  28. /// attribute
  29. /// \var ITERATOR
  30. /// iterator
  31. enum ClassType {FILE, ITEM, ATTRIBUTE, ITERATOR};
  32. /// \enum ExceptionType The type of the HdfException
  33. enum ExceptionType {
  34. INVALID_ID,
  35. INVALID_OPERATION,
  36. INVALID_NAME,
  37. OUT_OF_RANGE,
  38. BUFFER_SIZE_NOT_ENOUGH,
  39. BUFFER_SIZE_NOT_DIVISIBLE,
  40. INVALID_RANGES,
  41. STATUS_RETURN_FAIL,
  42. INVALID_DATA_TYPE,
  43. OTHER
  44. };
  45. const std::multimap<int32, int32> typeSizeMap = {
  46. {DFNT_CHAR, SIZE_CHAR},
  47. {DFNT_CHAR8, SIZE_CHAR8},
  48. {DFNT_CHAR16, SIZE_CHAR16},
  49. {DFNT_FLOAT32, SIZE_FLOAT32},
  50. {DFNT_FLOAT64, SIZE_FLOAT64},
  51. {DFNT_FLOAT128, SIZE_FLOAT128},
  52. {DFNT_INT8, SIZE_INT8},
  53. {DFNT_INT16, SIZE_INT16},
  54. {DFNT_INT32, SIZE_INT32},
  55. {DFNT_INT64, SIZE_INT64},
  56. {DFNT_UINT8, SIZE_UINT8},
  57. {DFNT_UINT16, SIZE_UINT16},
  58. {DFNT_UINT32, SIZE_UINT32},
  59. {DFNT_UINT64, SIZE_UINT64},
  60. {DFNT_UCHAR, SIZE_UCHAR},
  61. {DFNT_UCHAR8, SIZE_UCHAR8},
  62. {DFNT_UCHAR16, SIZE_UCHAR16},
  63. };
  64. }
  65. #endif //HDF4CPP_HDFDEFINES_H