DUNE-DAQ
DUNE Trigger and Data Acquisition software
Toggle main menu visibility
Loading...
Searching...
No Matches
dunedaq
sourcecode
hdf5libs
include
hdf5libs
HDF5FileLayoutParameters.hpp
Go to the documentation of this file.
1
10
11
#ifndef HDF5LIBS_INCLUDE_HDF5LIBS_HDF5FILELAYOUTPARAMETERS_HPP_
12
#define HDF5LIBS_INCLUDE_HDF5LIBS_HDF5FILELAYOUTPARAMETERS_HPP_
13
14
#include "
appmodel/HDF5FileLayoutParams.hpp
"
15
#include "
appmodel/HDF5PathParams.hpp
"
16
17
#include "nlohmann/json.hpp"
18
19
#include <vector>
20
21
namespace
dunedaq
{
22
23
namespace
hdf5libs
{
24
25
struct
HDF5PathParameters
26
{
27
std::string
detector_group_type
=
"unspecified"
;
28
std::string
detector_group_name
=
"unspecified"
;
29
std::string
element_name_prefix
=
"Element"
;
30
int32_t
digits_for_element_number
= 5;
31
32
HDF5PathParameters
() =
default
;
33
HDF5PathParameters
(
appmodel::HDF5PathParams
const
* from_conf)
34
{
35
detector_group_type
= from_conf->
get_detector_group_type
();
36
detector_group_name
= from_conf->
get_detector_group_name
();
37
element_name_prefix
= from_conf->
get_element_name_prefix
();
38
digits_for_element_number
= from_conf->
get_digits_for_element_number
();
39
}
40
HDF5PathParameters
(nlohmann::json from_json)
41
{
42
detector_group_type
= from_json[
"detector_group_type"
];
43
detector_group_name
= from_json[
"detector_group_name"
];
44
element_name_prefix
= from_json[
"element_name_prefix"
];
45
digits_for_element_number
= from_json[
"digits_for_element_number"
];
46
}
47
48
nlohmann::json
to_json
()
49
{
50
nlohmann::json output;
51
52
output[
"detector_group_type"
] =
detector_group_type
;
53
output[
"detector_group_name"
] =
detector_group_name
;
54
output[
"element_name_prefix"
] =
element_name_prefix
;
55
output[
"digits_for_element_number"
] =
digits_for_element_number
;
56
57
return
output;
58
}
59
};
60
61
struct
HDF5FileLayoutParameters
62
{
63
std::string
record_name_prefix
=
"TriggerRecord"
;
64
int32_t
digits_for_record_number
= 6;
65
int32_t
digits_for_sequence_number
= 4;
66
std::string
record_header_dataset_name
=
"TriggerRecordHeader"
;
67
std::string
raw_data_group_name
=
"RawData"
;
68
std::string
view_group_name
=
"Views"
;
69
std::vector<HDF5PathParameters>
path_params_list
;
70
71
HDF5FileLayoutParameters
() =
default
;
72
HDF5FileLayoutParameters
(
appmodel::HDF5FileLayoutParams
const
* from_conf) {
73
record_name_prefix
= from_conf->
get_record_name_prefix
();
74
digits_for_record_number
= from_conf->
get_digits_for_record_number
();
75
digits_for_sequence_number
= from_conf->
get_digits_for_sequence_number
();
76
record_header_dataset_name
= from_conf->
get_record_header_dataset_name
();
77
raw_data_group_name
= from_conf->
get_raw_data_group_name
();
78
view_group_name
= from_conf->
get_view_group_name
();
79
80
for
(
auto
& pp : from_conf->
get_path_params_list
()) {
81
path_params_list
.emplace_back(pp);
82
}
83
84
}
85
HDF5FileLayoutParameters
(nlohmann::json from_json)
86
{
87
record_name_prefix
= from_json[
"record_name_prefix"
];
88
digits_for_record_number
= from_json[
"digits_for_record_number"
];
89
digits_for_sequence_number
= from_json[
"digits_for_sequence_number"
];
90
record_header_dataset_name
= from_json[
"record_header_dataset_name"
];
91
raw_data_group_name
= from_json[
"raw_data_group_name"
];
92
view_group_name
= from_json[
"view_group_name"
];
93
94
for
(
auto
& pp : from_json[
"path_param_list"
]) {
95
path_params_list
.emplace_back(pp);
96
}
97
98
}
99
100
nlohmann::json
to_json
() {
101
102
nlohmann::json output;
103
104
output[
"record_name_prefix"
] =
record_name_prefix
;
105
output[
"digits_for_record_number"
] =
digits_for_record_number
;
106
output[
"digits_for_sequence_number"
] =
digits_for_sequence_number
;
107
output[
"record_header_dataset_name"
] =
record_header_dataset_name
;
108
output[
"raw_data_group_name"
] =
raw_data_group_name
;
109
output[
"view_group_name"
] =
view_group_name
;
110
output[
"path_param_list"
] = nlohmann::json::array();
111
112
for
(
auto
& pp :
path_params_list
) {
113
output[
"path_param_list"
].push_back(pp.to_json());
114
}
115
116
return
output;
117
}
118
};
119
120
}
// namespace hdf5libs
121
122
}
// namespace dunedaq
123
124
#endif
// HDF5LIBS_INCLUDE_HDF5LIBS_HDF5FILELAYOUTPARAMETERS_HPP_
dunedaq::appmodel::HDF5FileLayoutParams
Definition
HDF5FileLayoutParams.hpp:29
dunedaq::appmodel::HDF5FileLayoutParams::get_record_header_dataset_name
const std::string & get_record_header_dataset_name() const
Get "record_header_dataset_name" attribute value.
Definition
HDF5FileLayoutParams.hpp:208
dunedaq::appmodel::HDF5FileLayoutParams::get_view_group_name
const std::string & get_view_group_name() const
Get "view_group_name" attribute value.
Definition
HDF5FileLayoutParams.hpp:270
dunedaq::appmodel::HDF5FileLayoutParams::get_path_params_list
const std::vector< const dunedaq::appmodel::HDF5PathParams * > & get_path_params_list() const
Get "path_params_list" relationship value.
Definition
HDF5FileLayoutParams.hpp:308
dunedaq::appmodel::HDF5FileLayoutParams::get_record_name_prefix
const std::string & get_record_name_prefix() const
Get "record_name_prefix" attribute value.
Definition
HDF5FileLayoutParams.hpp:115
dunedaq::appmodel::HDF5FileLayoutParams::get_raw_data_group_name
const std::string & get_raw_data_group_name() const
Get "raw_data_group_name" attribute value.
Definition
HDF5FileLayoutParams.hpp:239
dunedaq::appmodel::HDF5FileLayoutParams::get_digits_for_sequence_number
int32_t get_digits_for_sequence_number() const
Get "digits_for_sequence_number" attribute value.
Definition
HDF5FileLayoutParams.hpp:177
dunedaq::appmodel::HDF5FileLayoutParams::get_digits_for_record_number
int32_t get_digits_for_record_number() const
Get "digits_for_record_number" attribute value.
Definition
HDF5FileLayoutParams.hpp:146
dunedaq::appmodel::HDF5PathParams
Definition
HDF5PathParams.hpp:20
dunedaq::appmodel::HDF5PathParams::get_detector_group_name
const std::string & get_detector_group_name() const
Get "detector_group_name" attribute value.
Definition
HDF5PathParams.hpp:130
dunedaq::appmodel::HDF5PathParams::get_detector_group_type
const std::string & get_detector_group_type() const
Get "detector_group_type" attribute value.
Definition
HDF5PathParams.hpp:99
dunedaq::appmodel::HDF5PathParams::get_element_name_prefix
const std::string & get_element_name_prefix() const
Get "element_name_prefix" attribute value.
Definition
HDF5PathParams.hpp:161
dunedaq::appmodel::HDF5PathParams::get_digits_for_element_number
int32_t get_digits_for_element_number() const
Get "digits_for_element_number" attribute value.
Definition
HDF5PathParams.hpp:192
HDF5FileLayoutParams.hpp
HDF5PathParams.hpp
dunedaq
Including Qt Headers.
Definition
module.cpp:16
hdf5libs
Definition
__init__.py:1
dunedaq::hdf5libs::HDF5FileLayoutParameters::record_header_dataset_name
std::string record_header_dataset_name
Definition
HDF5FileLayoutParameters.hpp:66
dunedaq::hdf5libs::HDF5FileLayoutParameters::digits_for_record_number
int32_t digits_for_record_number
Definition
HDF5FileLayoutParameters.hpp:64
dunedaq::hdf5libs::HDF5FileLayoutParameters::record_name_prefix
std::string record_name_prefix
Definition
HDF5FileLayoutParameters.hpp:63
dunedaq::hdf5libs::HDF5FileLayoutParameters::HDF5FileLayoutParameters
HDF5FileLayoutParameters()=default
dunedaq::hdf5libs::HDF5FileLayoutParameters::to_json
nlohmann::json to_json()
Definition
HDF5FileLayoutParameters.hpp:100
dunedaq::hdf5libs::HDF5FileLayoutParameters::raw_data_group_name
std::string raw_data_group_name
Definition
HDF5FileLayoutParameters.hpp:67
dunedaq::hdf5libs::HDF5FileLayoutParameters::HDF5FileLayoutParameters
HDF5FileLayoutParameters(nlohmann::json from_json)
Definition
HDF5FileLayoutParameters.hpp:85
dunedaq::hdf5libs::HDF5FileLayoutParameters::HDF5FileLayoutParameters
HDF5FileLayoutParameters(appmodel::HDF5FileLayoutParams const *from_conf)
Definition
HDF5FileLayoutParameters.hpp:72
dunedaq::hdf5libs::HDF5FileLayoutParameters::view_group_name
std::string view_group_name
Definition
HDF5FileLayoutParameters.hpp:68
dunedaq::hdf5libs::HDF5FileLayoutParameters::digits_for_sequence_number
int32_t digits_for_sequence_number
Definition
HDF5FileLayoutParameters.hpp:65
dunedaq::hdf5libs::HDF5FileLayoutParameters::path_params_list
std::vector< HDF5PathParameters > path_params_list
Definition
HDF5FileLayoutParameters.hpp:69
dunedaq::hdf5libs::HDF5PathParameters::HDF5PathParameters
HDF5PathParameters()=default
dunedaq::hdf5libs::HDF5PathParameters::detector_group_type
std::string detector_group_type
Definition
HDF5FileLayoutParameters.hpp:27
dunedaq::hdf5libs::HDF5PathParameters::digits_for_element_number
int32_t digits_for_element_number
Definition
HDF5FileLayoutParameters.hpp:30
dunedaq::hdf5libs::HDF5PathParameters::detector_group_name
std::string detector_group_name
Definition
HDF5FileLayoutParameters.hpp:28
dunedaq::hdf5libs::HDF5PathParameters::element_name_prefix
std::string element_name_prefix
Definition
HDF5FileLayoutParameters.hpp:29
dunedaq::hdf5libs::HDF5PathParameters::HDF5PathParameters
HDF5PathParameters(nlohmann::json from_json)
Definition
HDF5FileLayoutParameters.hpp:40
dunedaq::hdf5libs::HDF5PathParameters::HDF5PathParameters
HDF5PathParameters(appmodel::HDF5PathParams const *from_conf)
Definition
HDF5FileLayoutParameters.hpp:33
dunedaq::hdf5libs::HDF5PathParameters::to_json
nlohmann::json to_json()
Definition
HDF5FileLayoutParameters.hpp:48
Generated on
for DUNE-DAQ by
1.17.0