 |
Belle II Software
release-05-01-25
|
12 #include <tracking/trackFindingCDC/findlets/minimal/FacetCreator.h>
13 #include <tracking/trackFindingCDC/findlets/minimal/SegmentCreatorFacetAutomaton.h>
14 #include <tracking/trackFindingCDC/findlets/minimal/SegmentLinker.h>
16 #include <tracking/trackFindingCDC/findlets/minimal/SegmentFitter.h>
17 #include <tracking/trackFindingCDC/findlets/minimal/SegmentAliasResolver.h>
18 #include <tracking/trackFindingCDC/findlets/minimal/SegmentOrienter.h>
20 #include <tracking/trackFindingCDC/filters/facetRelation/ChooseableFacetRelationFilter.h>
22 #include <tracking/trackFindingCDC/eventdata/segments/CDCSegment2D.h>
23 #include <tracking/trackFindingCDC/eventdata/segments/CDCWireHitCluster.h>
24 #include <tracking/trackFindingCDC/eventdata/hits/CDCFacet.h>
26 #include <tracking/trackFindingCDC/findlets/minimal/WeightedRelationCreator.h>
27 #include <tracking/trackFindingCDC/findlets/base/StoreVectorSwapper.h>
36 namespace TrackFindingCDC {
38 class SegmentFinderFacetAutomaton :
public Findlet<CDCWireHitCluster&, CDCSegment2D> {
42 using Super = Findlet<CDCWireHitCluster&, CDCSegment2D>;
Refines the clustering of wire hits from clusters to clusters.
Fits segments with the Riemann method.
std::vector< WeightedRelation< const CDCFacet > > m_facetRelations
Memory for the generated facet relations.
Findlet that combines geometrical constrained pairs of objects to relations and selects them by the f...
Convenvience wrapper to setup a Chooseable filter from a specific factory object.
StoreVectorSwapper< CDCFacet > m_facetSwapper
Puts the internal facets on the DataStore.
SegmentCreatorFacetAutomaton m_segmentCreatorFacetAutomaton
Find the segments by composition of facets path from a cellular automaton.
WeightedRelationCreator< const CDCFacet, ChooseableFacetRelationFilter > m_facetRelationCreator
Creates the facet (hit triplet) relations of the cellular automaton.
SegmentLinker m_segmentLinker
Link segments with closeby segments of the same super cluster.
void exposeParameters(ModuleParamList *moduleParamList, const std::string &prefix) final
Expose the parameters to a module.
Class providing construction combinatorics for the facets.
Links segments in the same super cluster by linking paths of segments in a cellular automaton.
Abstract base class for different kinds of events.
Findlet< CDCWireHitCluster &, CDCSegment2D > Super
Type of the base class.
void apply(std::vector< CDCWireHitCluster > &clusters, std::vector< CDCSegment2D > &outputSegments) final
Generates the segment from wire hits.
Fixes the orientation of segments by a simple heuristic.
SegmentAliasResolver m_segmentAliasResolver
Resolves ambiguous right left information alias segments and hits.
std::vector< CDCSegment2D > m_intermediateSegments
Memory for the reconstructed segments.
SegmentFinderFacetAutomaton()
Constructor registering the subordinary findlets to the processing signal distribution machinery.
SegmentFitter m_segmentFitter
Fits the generated segments.
std::string getDescription() final
Short description of the findlet.
Class representing a triple of neighboring oriented wire with additional trajectory information.
std::vector< CDCSegment2D > m_segments
Memory for the reconstructed segments.
An aggregation of CDCWireHits.
Resolves between the potential alias versions of the segments and contained hits.
std::vector< CDCFacet > m_facets
Memory for the generated facets.
A reconstructed sequence of two dimensional hits in one super layer.
Findlet that generates segments within clusters based on a cellular automaton on triples of hits.
FacetCreator m_facetCreator
Creates the facet (hit triplet) cells of the cellular automaton.
SegmentOrienter m_segmentOrienter
Adjustes the orientation of the generated segments to a prefered direction of flight.
The Module parameter list class.
void beginEvent() final
Signal the beginning of a new event.