diff --git a/edm4eic.yaml b/edm4eic.yaml index 0efd92c..9de1462 100644 --- a/edm4eic.yaml +++ b/edm4eic.yaml @@ -179,7 +179,18 @@ components: - int32_t PDG // PDG code - float npe // Overall photoelectron count - float weight // Weight of this hypothesis, such as likelihood, moment, etc. - + + ## Representation of surfaces, including dynamic perigee surfaces (identical to ActsPodioEdm::Surface) + edm4eic::Surface: + Members: + - int surfaceType // Cone = 0, Cylinder = 1, Disc = 2, Perigee = 3, Plane = 4, Straw = 5, Curvilinear = 6, Other = 7 + - int boundsType // eCone = 0, eCylinder = 1, eDiamond = 2, eDisc = 3, eEllipse = 4, eLine = 5, eRectangle = 6, eTrapezoid = 7, eTriangle = 8, eDiscTrapezoid = 9, eConvexPolygon = 10, eAnnulus = 11, eBoundless = 12, eOther = 13 + - uint64_t geometryId // bit pattern volume:8,boundary:8,layer:12,approach:8,sensitive:20,extra:8 + - uint64_t identifier // identifier of associated detector element, if available + - std::array boundValues // bound values, e.g. for RectangleBounds, BoundValues are eMinX = 0, eMinY = 1, eMaxX = 2, eMaxY = 3, eSize = 4 + - uint32_t boundValuesSize // size of bound values + - std::array transform // row-wise 4x4 affine transform [R T; 0 1] with 3x3 rotation matrix R and translation column 3-vector T + datatypes: ## ==========================================================================