6#include <h5gt/H5DataType.hpp>
8#include "h5enum_operators.h"
24enum class ContainerAttributes :
unsigned{
28typedef std::underlying_type<ContainerAttributes>::type ContainerAttributesUType;
29inline h5gt::EnumType<ContainerAttributesUType> create_enum_ContainerAttributes() {
30 return {{
"ContainerType",
static_cast<ContainerAttributesUType
>(ContainerAttributes::ContainerType)}};
33enum class PointsAttributes :
unsigned{
37typedef std::underlying_type<PointsAttributes>::type PointsAttributesUType;
38inline h5gt::EnumType<PointsAttributesUType> create_enum_PointsAttributes() {
39 return {{
"Domain",
static_cast<PointsAttributesUType
>(PointsAttributes::Domain)}};
42enum class PointsDatasets :
unsigned{
46typedef std::underlying_type<PointsDatasets>::type PointsDatasetsUType;
47inline h5gt::EnumType<PointsDatasetsUType> create_enum_PointsDatasets() {
48 return {{
"points_data",
static_cast<PointsDatasetsUType
>(PointsDatasets::points_data)}};
51enum class HorizonAttributes :
unsigned{
55typedef std::underlying_type<HorizonAttributes>::type HorizonAttributesUType;
56inline h5gt::EnumType<HorizonAttributesUType> create_enum_HorizonAttributes() {
57 return {{
"Domain",
static_cast<HorizonAttributesUType
>(HorizonAttributes::Domain)}};
60enum class HorizonDatasets :
unsigned{
64typedef std::underlying_type<HorizonDatasets>::type HorizonDatasetsUType;
65inline h5gt::EnumType<HorizonDatasetsUType> create_enum_HorizonDatasets() {
66 return {{
"horizon_data",
static_cast<HorizonDatasetsUType
>(HorizonDatasets::horizon_data)}};
69enum class SeisAttributes :
unsigned{
76typedef std::underlying_type<SeisAttributes>::type SeisAttributesUType;
77inline h5gt::EnumType<SeisAttributesUType> create_enum_SeisAttributes() {
78 return {{
"Domain",
static_cast<SeisAttributesUType
>(SeisAttributes::Domain)},
79 {
"SeisDataType",
static_cast<SeisAttributesUType
>(SeisAttributes::SeisDataType)},
80 {
"SurveyType",
static_cast<SeisAttributesUType
>(SeisAttributes::SurveyType)},
81 {
"SRD",
static_cast<SeisAttributesUType
>(SeisAttributes::SRD)}};
84enum class SeisDatasets :
unsigned{
91typedef std::underlying_type<SeisDatasets>::type SeisDatasetsUType;
92inline h5gt::EnumType<SeisDatasetsUType> create_enum_SeisDatasets() {
93 return {{
"text_header",
static_cast<SeisDatasetsUType
>(SeisDatasets::text_header)},
94 {
"bin_header",
static_cast<SeisDatasetsUType
>(SeisDatasets::bin_header)},
95 {
"trace_header",
static_cast<SeisDatasetsUType
>(SeisDatasets::trace_header)},
96 {
"trace",
static_cast<SeisDatasetsUType
>(SeisDatasets::trace)}};
99enum class SeisGroups :
unsigned{
105typedef std::underlying_type<SeisGroups>::type SeisGroupsUType;
106inline h5gt::EnumType<SeisGroupsUType> create_enum_SeisGroups() {
107 return {{
"sort",
static_cast<SeisGroupsUType
>(SeisGroups::sort)},
108 {
"indexes",
static_cast<SeisGroupsUType
>(SeisGroups::indexes)},
109 {
"unique_values",
static_cast<SeisGroupsUType
>(SeisGroups::unique_values)}};
112enum class SeisSEGYGroups :
unsigned{
116typedef std::underlying_type<SeisSEGYGroups>::type SeisSEGYGroupsUType;
117inline h5gt::EnumType<SeisSEGYGroupsUType> create_enum_SeisSEGYGroups() {
118 return {{
"segy",
static_cast<SeisSEGYGroupsUType
>(SeisSEGYGroups::segy)}};
121enum class SeisSEGYDatasets :
unsigned{
123 bin_header_2bytes = 2,
124 bin_header_4bytes = 3,
125 trace_header_2bytes = 4,
126 trace_header_4bytes = 5,
130typedef std::underlying_type<SeisSEGYDatasets>::type SeisSEGYDatasetsUType;
131inline h5gt::EnumType<SeisSEGYDatasetsUType> create_enum_SeisSEGYDatasets() {
132 return {{
"text_header",
static_cast<SeisSEGYDatasetsUType
>(SeisSEGYDatasets::text_header)},
133 {
"bin_header_2bytes",
static_cast<SeisSEGYDatasetsUType
>(SeisSEGYDatasets::bin_header_2bytes)},
134 {
"bin_header_4bytes",
static_cast<SeisSEGYDatasetsUType
>(SeisSEGYDatasets::bin_header_4bytes)},
135 {
"trace_header_2bytes",
static_cast<SeisSEGYDatasetsUType
>(SeisSEGYDatasets::trace_header_2bytes)},
136 {
"trace_header_4bytes",
static_cast<SeisSEGYDatasetsUType
>(SeisSEGYDatasets::trace_header_4bytes)},
137 {
"trace_float",
static_cast<SeisSEGYDatasetsUType
>(SeisSEGYDatasets::trace_float)}};
140enum class MapAttributes :
unsigned{
147typedef std::underlying_type<MapAttributes>::type MapAttributesUType;
148inline h5gt::EnumType<MapAttributesUType> create_enum_MapAttributes() {
149 return {{
"Domain",
static_cast<MapAttributesUType
>(MapAttributes::Domain)},
150 {
"origin",
static_cast<MapAttributesUType
>(MapAttributes::origin)},
151 {
"point1",
static_cast<MapAttributesUType
>(MapAttributes::point1)},
152 {
"point2",
static_cast<MapAttributesUType
>(MapAttributes::point2)}};
155enum class MapDatasets :
unsigned{
159typedef std::underlying_type<MapDatasets>::type MapDatasetsUType;
160inline h5gt::EnumType<MapDatasetsUType> create_enum_MapDatasets() {
161 return {{
"map_data",
static_cast<MapDatasetsUType
>(MapDatasets::map_data)}};
164enum class VolAttributes :
unsigned{
171typedef std::underlying_type<VolAttributes>::type VolAttributesUType;
172inline h5gt::EnumType<VolAttributesUType> create_enum_VolAttributes() {
173 return {{
"Domain",
static_cast<VolAttributesUType
>(VolAttributes::Domain)},
174 {
"origin",
static_cast<VolAttributesUType
>(VolAttributes::origin)},
175 {
"spacings",
static_cast<VolAttributesUType
>(VolAttributes::spacings)},
176 {
"orientation",
static_cast<VolAttributesUType
>(VolAttributes::orientation)}};
179enum class VolDatasets :
unsigned{
183typedef std::underlying_type<VolDatasets>::type VolDatasetsUType;
184inline h5gt::EnumType<VolDatasetsUType> create_enum_VolDatasets() {
185 return {{
"vol_data",
static_cast<VolDatasetsUType
>(VolDatasets::vol_data)}};
188enum class WellAttributes :
unsigned{
194typedef std::underlying_type<WellAttributes>::type WellAttributesUType;
195inline h5gt::EnumType<WellAttributesUType> create_enum_WellAttributes() {
196 return {{
"head_coord",
static_cast<WellAttributesUType
>(WellAttributes::head_coord)},
197 {
"KB",
static_cast<WellAttributesUType
>(WellAttributes::KB)},
198 {
"UWI",
static_cast<WellAttributesUType
>(WellAttributes::UWI)}};
201enum class WellGroups :
unsigned{
206typedef std::underlying_type<WellGroups>::type WellGroupsUType;
207inline h5gt::EnumType<WellGroupsUType> create_enum_WellGroups() {
208 return {{
"LOG",
static_cast<WellGroupsUType
>(WellGroups::LOG)},
209 {
"DEV",
static_cast<WellGroupsUType
>(WellGroups::DEV)}};
212enum class DevDatasets :
unsigned{
216typedef std::underlying_type<DevDatasets>::type DevDatasetsUType;
217inline h5gt::EnumType<DevDatasetsUType> create_enum_DevDatasets() {
218 return {{
"dev_data",
static_cast<DevDatasetsUType
>(DevDatasets::dev_data)}};
221enum class LogDatasets :
unsigned{
225typedef std::underlying_type<LogDatasets>::type LogDatasetsUType;
226inline h5gt::EnumType<LogDatasetsUType> create_enum_LogDatasets() {
227 return {{
"log_data",
static_cast<LogDatasetsUType
>(LogDatasets::log_data)}};
233enum class ContainerType :
unsigned{
241typedef std::underlying_type<ContainerType>::type ContainerTypeUType;
242inline h5gt::EnumType<ContainerTypeUType> create_enum_ContainerType() {
243 return {{
"MAP",
static_cast<ContainerTypeUType
>(ContainerType::MAP)},
244 {
"WELL",
static_cast<ContainerTypeUType
>(ContainerType::WELL)},
245 {
"SEISMIC",
static_cast<ContainerTypeUType
>(ContainerType::SEISMIC)},
246 {
"VOLUME",
static_cast<ContainerTypeUType
>(ContainerType::VOLUME)}};
249enum class ObjectType:
unsigned{
265typedef std::underlying_type<ObjectType>::type ObjectTypeUType;
266inline h5gt::EnumType<ObjectTypeUType> create_enum_ObjectType() {
267 return {{
"MAP",
static_cast<ObjectTypeUType
>(ObjectType::MAP)},
268 {
"WELL",
static_cast<ObjectTypeUType
>(ObjectType::WELL)},
269 {
"LOGCURVE",
static_cast<ObjectTypeUType
>(ObjectType::LOGCURVE)},
270 {
"DEVCURVE",
static_cast<ObjectTypeUType
>(ObjectType::DEVCURVE)},
271 {
"SEISMIC",
static_cast<ObjectTypeUType
>(ObjectType::SEISMIC)},
272 {
"VOLUME",
static_cast<ObjectTypeUType
>(ObjectType::VOLUME)},
273 {
"POINTS_1",
static_cast<ObjectTypeUType
>(ObjectType::POINTS_1)},
274 {
"POINTS_2",
static_cast<ObjectTypeUType
>(ObjectType::POINTS_2)},
275 {
"POINTS_3",
static_cast<ObjectTypeUType
>(ObjectType::POINTS_3)},
276 {
"POINTS_4",
static_cast<ObjectTypeUType
>(ObjectType::POINTS_4)},
277 {
"WELLTOPS",
static_cast<ObjectTypeUType
>(ObjectType::WELLTOPS)},
278 {
"HORIZON",
static_cast<ObjectTypeUType
>(ObjectType::HORIZON)}};
281enum class Domain :
unsigned{
288typedef std::underlying_type<Domain>::type DomainUType;
289inline h5gt::EnumType<DomainUType> create_enum_Domain() {
290 return {{
"OWT",
static_cast<DomainUType
>(Domain::OWT)},
291 {
"TWT",
static_cast<DomainUType
>(Domain::TWT)},
292 {
"TVD",
static_cast<DomainUType
>(Domain::TVD)},
293 {
"TVDSS",
static_cast<DomainUType
>(Domain::TVDSS)}};
296enum class SeisDataType :
unsigned{
301typedef std::underlying_type<SeisDataType>::type SeisDataTypeUType;
302inline h5gt::EnumType<SeisDataTypeUType> create_enum_SeisDataType() {
303 return {{
"STACK",
static_cast<SeisDataTypeUType
>(SeisDataType::STACK)},
304 {
"PRESTACK",
static_cast<SeisDataTypeUType
>(SeisDataType::PRESTACK)}};
307enum class SurveyType :
unsigned{
312typedef std::underlying_type<SurveyType>::type SurveyTypeUType;
313inline h5gt::EnumType<SurveyTypeUType> create_enum_SurveyType() {
314 return {{
"TWO_D",
static_cast<SurveyTypeUType
>(SurveyType::TWO_D)},
315 {
"THREE_D",
static_cast<SurveyTypeUType
>(SurveyType::THREE_D)}};
318enum class TextEncoding :
unsigned{
323typedef std::underlying_type<TextEncoding>::type TextEncodingUType;
324inline h5gt::EnumType<TextEncodingUType> create_enum_TextEncoding() {
325 return {{
"ASCII",
static_cast<TextEncodingUType
>(TextEncoding::ASCII)},
326 {
"EBCDIC",
static_cast<TextEncodingUType
>(TextEncoding::EBCDIC)}};
329enum class Endian :
unsigned{
334typedef std::underlying_type<Endian>::type EndianUType;
335inline h5gt::EnumType<EndianUType> create_enum_Endian() {
336 return {{
"Little",
static_cast<EndianUType
>(Endian::Little)},
337 {
"Big",
static_cast<EndianUType
>(Endian::Big)}};
340enum class SegyFormat :
unsigned{
346typedef std::underlying_type<SegyFormat>::type SegyFormatUType;
347inline h5gt::EnumType<SegyFormatUType> create_enum_SegyFormat() {
348 return {{
"FourByte_IBM",
static_cast<SegyFormatUType
>(SegyFormat::FourByte_IBM)},
349 {
"FourByte_IEEE",
static_cast<SegyFormatUType
>(SegyFormat::FourByte_IEEE)},
350 {
"FourByte_integer",
static_cast<SegyFormatUType
>(SegyFormat::FourByte_integer)}};
353enum class WellDataType :
unsigned{
365typedef std::underlying_type<WellDataType>::type WellDataTypeUType;
366inline h5gt::EnumType<WellDataTypeUType> create_enum_WellDataType() {
367 return {{
"WELL",
static_cast<WellDataTypeUType
>(WellDataType::WELL)},
368 {
"DEV",
static_cast<WellDataTypeUType
>(WellDataType::DEV)},
369 {
"LOG",
static_cast<WellDataTypeUType
>(WellDataType::LOG)},
370 {
"INTERVAL_VEL",
static_cast<WellDataTypeUType
>(WellDataType::INTERVAL_VEL)},
371 {
"AVG_VEL",
static_cast<WellDataTypeUType
>(WellDataType::AVG_VEL)},
372 {
"RMS_VEL",
static_cast<WellDataTypeUType
>(WellDataType::RMS_VEL)},
373 {
"FWAL",
static_cast<WellDataTypeUType
>(WellDataType::FWAL)},
374 {
"CHECKSHOTS",
static_cast<WellDataTypeUType
>(WellDataType::CHECKSHOTS)},
375 {
"WELL_TIE",
static_cast<WellDataTypeUType
>(WellDataType::WELL_TIE)}};
378enum class WellName :
unsigned{
383typedef std::underlying_type<WellName>::type WellNameUType;
384inline h5gt::EnumType<WellNameUType> create_enum_WellName() {
385 return {{
"FROM_LAS",
static_cast<WellNameUType
>(WellName::FROM_LAS)},
386 {
"FROM_FILE_NAME",
static_cast<WellNameUType
>(WellName::FROM_FILE_NAME)}};
389enum class LogDataType :
unsigned{
394typedef std::underlying_type<LogDataType>::type LogDataTypeUType;
395inline h5gt::EnumType<LogDataTypeUType> create_enum_LogDataType() {
396 return {{
"MD",
static_cast<LogDataTypeUType
>(LogDataType::MD)},
397 {
"VAL",
static_cast<LogDataTypeUType
>(LogDataType::VAL)}};
400enum class DevDataType :
unsigned{
415typedef std::underlying_type<DevDataType>::type DevDataTypeUType;
416inline h5gt::EnumType<DevDataTypeUType> create_enum_DevDataType() {
417 return {{
"MD",
static_cast<DevDataTypeUType
>(DevDataType::MD)},
418 {
"X",
static_cast<DevDataTypeUType
>(DevDataType::X)},
419 {
"Y",
static_cast<DevDataTypeUType
>(DevDataType::Y)},
420 {
"Z",
static_cast<DevDataTypeUType
>(DevDataType::Z)},
421 {
"TVD",
static_cast<DevDataTypeUType
>(DevDataType::TVD)},
422 {
"TVDSS",
static_cast<DevDataTypeUType
>(DevDataType::TVDSS)},
423 {
"DX",
static_cast<DevDataTypeUType
>(DevDataType::DX)},
424 {
"DY",
static_cast<DevDataTypeUType
>(DevDataType::DY)},
425 {
"AZIM",
static_cast<DevDataTypeUType
>(DevDataType::AZIM)},
426 {
"INCL",
static_cast<DevDataTypeUType
>(DevDataType::INCL)},
427 {
"OWT",
static_cast<DevDataTypeUType
>(DevDataType::OWT)},
428 {
"TWT",
static_cast<DevDataTypeUType
>(DevDataType::TWT)}};
431enum class WellType :
unsigned{
441typedef std::underlying_type<WellType>::type WellTypeUType;
442inline h5gt::EnumType<WellTypeUType> create_enum_WellType() {
443 return {{
"PROPOSED",
static_cast<WellTypeUType
>(WellType::PROPOSED)},
444 {
"DRY",
static_cast<WellTypeUType
>(WellType::DRY)},
445 {
"OIL",
static_cast<WellTypeUType
>(WellType::OIL)},
446 {
"GAS",
static_cast<WellTypeUType
>(WellType::GAS)},
447 {
"WATER",
static_cast<WellTypeUType
>(WellType::WATER)},
448 {
"CONDENSATE",
static_cast<WellTypeUType
>(WellType::CONDENSATE)}};
451enum class TrajectoryFormat :
unsigned{
459typedef std::underlying_type<TrajectoryFormat>::type TrajectoryFormatUType;
460inline h5gt::EnumType<TrajectoryFormatUType> create_enum_TrajectoryFormat() {
461 return {{
"MD_AZIM_INCL",
static_cast<TrajectoryFormatUType
>(TrajectoryFormat::MD_AZIM_INCL)},
462 {
"TVD_X_Y",
static_cast<TrajectoryFormatUType
>(TrajectoryFormat::TVD_X_Y)},
463 {
"TVD_DX_DY",
static_cast<TrajectoryFormatUType
>(TrajectoryFormat::TVD_DX_DY)},
464 {
"TVDSS_X_Y",
static_cast<TrajectoryFormatUType
>(TrajectoryFormat::TVDSS_X_Y)},
465 {
"TVDSS_DX_DY",
static_cast<TrajectoryFormatUType
>(TrajectoryFormat::TVDSS_DX_DY)}};
476typedef std::underlying_type<CreationType>::type CreationTypeUType;
477inline h5gt::EnumType<CreationTypeUType> create_enum_CreationType() {
485enum class CaseSensitivity :
unsigned{
490typedef std::underlying_type<CaseSensitivity>::type CaseSensitivityUType;
491inline h5gt::EnumType<CaseSensitivityUType> create_enum_CaseSensitivity() {
492 return {{
"CASE_SENSITIVE",
static_cast<CaseSensitivityUType
>(CaseSensitivity::CASE_SENSITIVE)},
493 {
"CASE_INSENSITIVE",
static_cast<CaseSensitivityUType
>(CaseSensitivity::CASE_INSENSITIVE)}};
496enum class Delimiter :
unsigned{
503ENABLE_BITMASK_OPERATORS(Delimiter);
505typedef std::underlying_type<Delimiter>::type DelimiterUType;
506inline h5gt::EnumType<DelimiterUType> create_enum_Delimiter() {
507 return {{
"TABULATION",
static_cast<DelimiterUType
>(Delimiter::TABULATION)},
508 {
"SEMICOLON",
static_cast<DelimiterUType
>(Delimiter::SEMICOLON)},
509 {
"DOT",
static_cast<DelimiterUType
>(Delimiter::DOT)},
510 {
"SPACE",
static_cast<DelimiterUType
>(Delimiter::SPACE)},
511 {
"COMMA",
static_cast<DelimiterUType
>(Delimiter::COMMA)}};
518H5GT_REGISTER_TYPE(h5geo::detail::ContainerAttributes, h5geo::detail::create_enum_ContainerAttributes)
519H5GT_REGISTER_TYPE(h5geo::detail::PointsAttributes, h5geo::detail::create_enum_PointsAttributes)
520H5GT_REGISTER_TYPE(h5geo::detail::PointsDatasets, h5geo::detail::create_enum_PointsDatasets)
521H5GT_REGISTER_TYPE(h5geo::detail::HorizonAttributes, h5geo::detail::create_enum_HorizonAttributes)
522H5GT_REGISTER_TYPE(h5geo::detail::HorizonDatasets, h5geo::detail::create_enum_HorizonDatasets)
523H5GT_REGISTER_TYPE(h5geo::detail::SeisAttributes, h5geo::detail::create_enum_SeisAttributes)
524H5GT_REGISTER_TYPE(h5geo::detail::SeisDatasets, h5geo::detail::create_enum_SeisDatasets)
525H5GT_REGISTER_TYPE(h5geo::detail::SeisGroups, h5geo::detail::create_enum_SeisGroups)
526H5GT_REGISTER_TYPE(h5geo::detail::SeisSEGYGroups, h5geo::detail::create_enum_SeisSEGYGroups)
527H5GT_REGISTER_TYPE(h5geo::detail::SeisSEGYDatasets, h5geo::detail::create_enum_SeisSEGYDatasets)
528H5GT_REGISTER_TYPE(h5geo::detail::MapAttributes, h5geo::detail::create_enum_MapAttributes)
529H5GT_REGISTER_TYPE(h5geo::detail::MapDatasets, h5geo::detail::create_enum_MapDatasets)
530H5GT_REGISTER_TYPE(h5geo::detail::VolAttributes, h5geo::detail::create_enum_VolAttributes)
531H5GT_REGISTER_TYPE(h5geo::detail::VolDatasets, h5geo::detail::create_enum_VolDatasets)
532H5GT_REGISTER_TYPE(h5geo::detail::WellAttributes, h5geo::detail::create_enum_WellAttributes)
533H5GT_REGISTER_TYPE(h5geo::detail::WellGroups, h5geo::detail::create_enum_WellGroups)
534H5GT_REGISTER_TYPE(h5geo::detail::DevDatasets, h5geo::detail::create_enum_DevDatasets)
535H5GT_REGISTER_TYPE(h5geo::detail::LogDatasets, h5geo::detail::create_enum_LogDatasets)
537H5GT_REGISTER_TYPE(h5geo::ContainerType, h5geo::create_enum_ContainerType)
538H5GT_REGISTER_TYPE(h5geo::ObjectType, h5geo::create_enum_ObjectType)
539H5GT_REGISTER_TYPE(h5geo::Domain, h5geo::create_enum_Domain)
540H5GT_REGISTER_TYPE(h5geo::SeisDataType, h5geo::create_enum_SeisDataType)
541H5GT_REGISTER_TYPE(h5geo::SurveyType, h5geo::create_enum_SurveyType)
542H5GT_REGISTER_TYPE(h5geo::TextEncoding, h5geo::create_enum_TextEncoding)
543H5GT_REGISTER_TYPE(h5geo::Endian, h5geo::create_enum_Endian)
544H5GT_REGISTER_TYPE(h5geo::SegyFormat, h5geo::create_enum_SegyFormat)
545H5GT_REGISTER_TYPE(h5geo::WellDataType, h5geo::create_enum_WellDataType)
546H5GT_REGISTER_TYPE(h5geo::WellName, h5geo::create_enum_WellName)
547H5GT_REGISTER_TYPE(h5geo::LogDataType, h5geo::create_enum_LogDataType)
548H5GT_REGISTER_TYPE(h5geo::DevDataType, h5geo::create_enum_DevDataType)
549H5GT_REGISTER_TYPE(h5geo::WellType, h5geo::create_enum_WellType)
550H5GT_REGISTER_TYPE(h5geo::TrajectoryFormat, h5geo::create_enum_TrajectoryFormat)
552H5GT_REGISTER_TYPE(h5geo::CaseSensitivity, h5geo::create_enum_CaseSensitivity)
553H5GT_REGISTER_TYPE(h5geo::Delimiter, h5geo::create_enum_Delimiter)
Basic namespace.
Definition h5base.h:29
CreationType
Definition h5enum.h:468