go-hep.org/x/hep@v0.38.1/cmd/podio-gen/testdata/datalayout.yaml (about)

     1  ---
     2  options :
     3    # should getters / setters be prefixed with get / set?
     4    getSyntax: False
     5    # should POD members be exposed with getters/setters in classes that have them as members?
     6    exposePODMembers: True
     7  
     8  components :
     9    SimpleStruct:
    10      x : int
    11      y : int
    12      z : int
    13      p: std::array<int, 4>
    14      # can also add c'tors:
    15      ExtraCode :
    16        declaration: "
    17        SimpleStruct() : x(0),y(0),z(0) {}
    18        SimpleStruct( const int* v) : x(v[0]),y(v[1]),z(v[2]) {}
    19        "
    20  
    21    NotSoSimpleStruct:
    22      data : SimpleStruct
    23  
    24    ex2::NamespaceStruct:
    25      x : int
    26      y : int
    27  
    28    ex2::NamespaceInNamespaceStruct:
    29      data : ex2::NamespaceStruct
    30  
    31  datatypes :
    32  
    33    EventInfo:
    34      Description : "Event info"
    35      Author : "B. Hegner"
    36      Members :
    37       - int Number // event number
    38      ExtraCode :
    39         const_declaration: "int getNumber() const; "
    40         const_implementation: "int {name}::getNumber() const { return Number(); } "
    41         declaration: "void setNumber(int n) { Number( n ) ; } "
    42  
    43    ExampleHit :
    44      Description : "Example Hit"
    45      Author : "B. Hegner"
    46      Members:
    47       - unsigned long long cellID      // cellID
    48       - double x      // x-coordinate
    49       - double y      // y-coordinate
    50       - double z      // z-coordinate
    51       - double energy // measured energy deposit
    52  
    53    ExampleMC :
    54      Description : "Example MC-particle"
    55      Author: "F.Gaede"
    56      Members:
    57        - double energy  // energy
    58        - int PDG  // PDG code
    59      OneToManyRelations:
    60        - ExampleMC parents   // parents
    61        - ExampleMC daughters  // daughters
    62  
    63    ExampleCluster :
    64      Description : "Cluster"
    65      Author : "B. Hegner"
    66      Members:
    67        - double energy // cluster energy
    68      OneToManyRelations:
    69       - ExampleHit Hits // hits contained in the cluster
    70       - ExampleCluster Clusters // sub clusters used to create this cluster
    71  
    72    ExampleReferencingType :
    73      Description : "Referencing Type"
    74      Author : "B. Hegner"
    75      OneToManyRelations:
    76       - ExampleCluster         Clusters  // some refs to Clusters
    77       - ExampleReferencingType Refs      // refs into same type
    78  
    79    ExampleWithVectorMember :
    80      Description : "Type with a vector member"
    81      Author : "B. Hegner"
    82      VectorMembers:
    83       - int count // various ADC counts
    84  
    85    ExampleWithOneRelation :
    86      Description : "Type with one relation member"
    87      Author : "Benedikt Hegner"
    88      OneToOneRelations:
    89       - ExampleCluster cluster // a particular cluster
    90  
    91    ExampleWithComponent :
    92      Description : "Type with one component"
    93      Author : "Benedikt Hegner"
    94      Members :
    95       - NotSoSimpleStruct component // a component
    96  
    97    ExampleForCyclicDependency1 :
    98      Description : "Type for cyclic dependency"
    99      Author : "Benedikt Hegner"
   100      OneToOneRelations :
   101        - ExampleForCyclicDependency2 ref // a ref
   102  
   103    ExampleForCyclicDependency2 :
   104      Description : "Type for cyclic dependency"
   105      Author : "Benedikt Hegner"
   106      OneToOneRelations :
   107        - ExampleForCyclicDependency1 ref // a ref
   108  
   109  #  ExampleWithArray :
   110  #    Description : "Type with an array"
   111  #    Author : "Benedikt Hegner"
   112  #    Members:
   113  #      - std::array<int,33> array // the array
   114  
   115    ExampleWithString :
   116      Description : "Type with a string"
   117      Author : "Benedikt Hegner"
   118      Members:
   119        - std::string theString // the string
   120  
   121    ex42::ExampleWithNamespace :
   122      Description : "Type with namespace and namespaced member"
   123      Author : "Joschka Lingemann"
   124      Members:
   125        - ex2::NamespaceStruct data // a component
   126  
   127    ex42::ExampleWithARelation :
   128      Description : "Type with namespace and namespaced relation"
   129      Author : "Joschka Lingemann"
   130      Members:
   131       - float number // just a number
   132      OneToOneRelations :
   133       - ex42::ExampleWithNamespace ref // a ref in a namespace
   134      OneToManyRelations :
   135       - ex42::ExampleWithNamespace refs // multiple refs in a namespace
   136  
   137    ExampleWithArray:
   138      Description: "Datatype with an array member"
   139      Author: "Joschka Lingemann"
   140      Members:
   141        - NotSoSimpleStruct arrayStruct // component that contains an array
   142        - std::array<int,4> myArray // array-member without space to test regex
   143        - std::array<int, 4> anotherArray2 // array-member with space to test regex
   144        - std::array<int, 4> snail_case_array // snail case to test regex
   145        - std::array<int, 4> snail_case_Array3 // mixing things up for regex
   146        - std::array<ex2::NamespaceStruct, 4> structArray // an array containing structs