print_allowed_configuration_optionalParameters_t.cc
Go to the documentation of this file.
6 #include "fhiclcpp/types/Table.h"
7 #include "fhiclcpp/types/Tuple.h"
8 
9 #include <iostream>
10 
11 namespace {
12 
13  using namespace fhicl;
14 
15  //============================================================================
16  // Job configuration
17  //
18 
19  struct Physics {
20  Tuple<std::string, double> energyCutoff{Name("energyCutoff")};
21  OptionalAtom<std::string> moniker{Name("moniker")};
22  };
23 
24  struct Composer {
25  Atom<std::string> composer{Name("composer")};
26  OptionalTuple<int, std::string> aSymphonyMoniker{
27  Name("aSymphonyMoniker"),
28  Comment("Symphony number/nickname pair")};
29  };
30 
31  struct Configuration {
32  OptionalAtom<int> atom{Name("atom")};
34  OptionalTable<Physics> physics{Name("physics")};
35  OptionalSequence<int> list1{Name("list1")};
36  OptionalSequence<int, 4> list2{Name("list2")};
37  OptionalSequence<Sequence<int, 2>> list3{Name("list3")};
38  OptionalSequence<Table<Composer>, 4> list4{Name("list4")};
39  };
40 }
41 
42 int
44 {
45  Table<Configuration> pset{Name("pset")};
46  pset.print_allowed_configuration(std::cout);
47 }
static QCString name
Definition: declinfo.cpp:673
ChannelGroupService::Name Name
#define Comment