7using TV = boost::property_tree::ptree::value_type;
37 return data().get_child(
"chains").size();
53 return {
data().get_child(
"chains"), 0, [](
auto &
x){
auto chain =
Chain(
x.first,
x.second);
return chain; }};
59 auto & pt =
data().get_child(
"chains");
60 return { pt, pt.size(), [](
auto &
x){
return Chain(
x.second);} };
64std::vector<TrigConf::DataStructure>
67 std::vector<DataStructure> strlist;
68 auto streams =
data().get_child_optional(
"streams");
70 strlist.reserve(
streams->size());
71 for(
auto & strData : *
streams ) {
72 strlist.emplace_back( strData.second );
79std::map<std::string, std::vector<std::string>>
82 std::map<std::string, std::vector<std::string>>
result;
85 for(
auto & sequence :
sequencers.getKeys() ) {
86 for(
auto & alg :
sequencers.getList(sequence) ) {
87 result[sequence].emplace_back(alg.getValue<std::string>());
98 cout <<
"HLT menu '" <<
name() <<
"'" << endl;
99 cout <<
"Streams: " <<
streams().size() << endl;
100 cout <<
"Chains: " <<
size() << endl;
103 for(
auto & chain : *
this ) {
104 cout <<
" " << c++ <<
": " << chain.name() << endl;
char data[hepevt_bytes_allocation_ATLAS]
static const Attributes_t empty
virtual const std::string & name() const final
bool isInitialized() const
const ptree & data() const
Access to the underlying data, if needed.
DataStructure()
Default constructor, leading to an uninitialized configuration object.
T getAttribute(const std::string &key, bool ignoreIfMissing=false, const T &def=T()) const
Access to simple attribute.
DataStructure getObject(const std::string &pathToChild, bool ignoreIfMissing=false) const
Access to configuration object.