Belle II Software development
CDCFacet.h
1/**************************************************************************
2 * basf2 (Belle II Analysis Software Framework) *
3 * Author: The Belle II Collaboration *
4 * *
5 * See git log for contributors and copyright holders. *
6 * This file is licensed under LGPL-3.0, see LICENSE.md. *
7 **************************************************************************/
8#pragma once
9
10#include <tracking/trackFindingCDC/eventdata/hits/CDCRLWireHitTriple.h>
11#include <tracking/trackFindingCDC/geometry/UncertainParameterLine2D.h>
12
13#include <tracking/trackFindingCDC/ca/AutomatonCell.h>
14
15namespace Belle2 {
20 namespace TrackFindingCDC {
21 class CDCTangent;
22 class CDCRecoHit2D;
23 class CDCRLWireHit;
24 class ParameterLine2D;
25 class Vector2D;
26
33 public:
35 CDCFacet() = default;
36
38 CDCFacet(const CDCRLWireHit& startRLWireHit,
39 const CDCRLWireHit& middleRLWireHit,
40 const CDCRLWireHit& endRLWireHit);
41
43 CDCFacet(const CDCRLWireHit& startRLWireHit,
44 const CDCRLWireHit& middleRLWireHit,
45 const CDCRLWireHit& endRLWireHit,
46 const UncertainParameterLine2D& fitLine);
47
49 void reverse();
50
52 CDCFacet reversed() const;
53
55 void adjustFitLine() const;
56
58 void invalidateFitLine();
59
62 {
63 return m_fitLine;
64 }
65
67 void setFitLine(const UncertainParameterLine2D& fitLine) const
68 {
69 m_fitLine = fitLine;
70 }
71
78
85
92
95
98
101
104
107
110
113
116
119
121 void unsetAndForwardMaskedFlag() const;
122
124 void setAndForwardMaskedFlag() const;
125
127 void receiveMaskedFlag() const;
128
131 {
132 return m_automatonCell;
133 }
134
135 private:
138
141 };
142 }
144}
Cell used by the cellular automata.
Definition: AutomatonCell.h:29
Class representing a triple of neighboring oriented wire with additional trajectory information.
Definition: CDCFacet.h:32
void adjustFitLine() const
Adjusts the contained fit line to touch such that it touches the first and third hit.
Definition: CDCFacet.cc:61
ParameterLine2D getStartToEndLine() const
Getter for the tangential line from the first to the third hit.
Definition: CDCFacet.cc:94
CDCRecoHit2D getEndRecoHit2D() const
Getter for the third reconstructed hit.
Definition: CDCFacet.cc:120
void reverse()
Reverses the facet in place including the fit line.
Definition: CDCFacet.cc:47
CDCRecoHit2D getMiddleRecoHit2D() const
Getter for the second reconstructed hit.
Definition: CDCFacet.cc:115
CDCFacet()=default
Default constructor for ROOT.
AutomatonCell & getAutomatonCell() const
Mutable getter for the automaton cell.
Definition: CDCFacet.h:130
UncertainParameterLine2D m_fitLine
Memory for a line fit to the three contained hits.
Definition: CDCFacet.h:137
void setAndForwardMaskedFlag() const
Sets the masked flag of the facet's automaton cell and of the three contained wire hits.
Definition: CDCFacet.cc:148
Vector2D getEndRecoPos2D() const
Getter for the reconstructed position at the third hit on the fit line.
Definition: CDCFacet.cc:81
void unsetAndForwardMaskedFlag() const
Unset the masked flag of the facet's automaton cell and of the three contained wire hits.
Definition: CDCFacet.cc:140
const UncertainParameterLine2D & getFitLine() const
Getter for the contained line fit information.
Definition: CDCFacet.h:61
void setFitLine(const UncertainParameterLine2D &fitLine) const
Setter for the contained line fit information.
Definition: CDCFacet.h:67
CDCRecoHit2D getStartRecoHit2D() const
Getter for the first reconstructed hit.
Definition: CDCFacet.cc:110
void invalidateFitLine()
Clear all information in the fit.
Definition: CDCFacet.cc:66
CDCTangent getStartToEnd() const
Getter for the tangential line including the hits from the first to the third hit.
Definition: CDCFacet.cc:130
CDCFacet reversed() const
Constructs the reverse triple from this one.
Definition: CDCFacet.cc:53
CDCTangent getMiddleToEnd() const
Getter for the tangential line including the hits from the second to the third hit.
Definition: CDCFacet.cc:135
AutomatonCell m_automatonCell
Memory for the cellular automaton cell associated with the facet.
Definition: CDCFacet.h:140
void receiveMaskedFlag() const
If one of the contained wire hits is marked as masked this facet is set be masked as well.
Definition: CDCFacet.cc:156
Vector2D getMiddleRecoPos2D() const
Getter for the reconstructed position at the second hit on the fit line.
Definition: CDCFacet.cc:76
ParameterLine2D getStartToMiddleLine() const
Getter for the tangential line from the first to the second hit.
Definition: CDCFacet.cc:86
CDCTangent getStartToMiddle() const
Getter for the tangential line including the hits from the first to the second hit.
Definition: CDCFacet.cc:125
ParameterLine2D getMiddleToEndLine() const
Getter for the tangential line from the second to the third hit.
Definition: CDCFacet.cc:102
Vector2D getStartRecoPos2D() const
Getter for the reconstructed position at the first hit on the fit line.
Definition: CDCFacet.cc:71
Class representing a triple of neighboring wire hits.
Class representing an oriented hit wire including a hypotheses whether the causing track passes left ...
Definition: CDCRLWireHit.h:41
Class representing a two dimensional reconstructed hit in the central drift chamber.
Definition: CDCRecoHit2D.h:47
Class representing a linear track piece between two oriented wire hits.
Definition: CDCTangent.h:40
A line with a support point and tangential vector.
A parameter line including including an line covariance matrix which is interpreted as located in the...
A two dimensional vector which is equipped with functions for correct handling of orientation relate...
Definition: Vector2D.h:32
Abstract base class for different kinds of events.