Belle II Software development
CDCSegmentPair Class Reference

Class representing a pair of one reconstructed axial segment and one stereo segment in adjacent superlayer. More...

#include <CDCSegmentPair.h>

Public Member Functions

 CDCSegmentPair ()
 Default constructor - for ROOT compatibility.
 
 CDCSegmentPair (const CDCSegment2D *fromSegment, const CDCSegment2D *toSegment)
 Constructor from two segments.
 
 CDCSegmentPair (const CDCSegment2D *fromSegment, const CDCSegment2D *toSegment, const CDCTrajectory3D &trajectory3D)
 Constructor from two segments and an associated trajectory.
 
bool operator== (CDCSegmentPair const &rhs) const
 Equality comparison based on the pointers to the stored segments.
 
bool operator< (CDCSegmentPair const &rhs) const
 Total ordering scheme comparing the segment pointers.
 
bool checkSegmentsNonNullptr () const
 Checks if both stored segments are not nullptr. Returns true if check is succeeded.
 
bool checkSegmentsStereoKinds () const
 Checks if the two segments are of different axial type.
 
bool checkSegments () const
 Checks the references to the contained three segment for nullptrs and exactly one of them is axial and one is stereo.
 
EStereoKind getFromStereoKind () const
 Getter for the stereo type of the first segment.
 
EStereoKind getToStereoKind () const
 Getter for the stereo type of the second segment.
 
ISuperLayer getFromISuperLayer () const
 Getter for the superlayer id of the from segment.
 
ISuperLayer getToISuperLayer () const
 Getter for the superlayer id of the to segment.
 
std::size_t size () const
 Getter for the total number of hits in this segment pair.
 
const CDCSegment2DgetFromSegment () const
 Getter for the from segment.
 
void setFromSegment (const CDCSegment2D *fromSegment)
 Setter for the from segment.
 
const CDCSegment2DgetToSegment () const
 Getter for the to segment.
 
void setToSegment (const CDCSegment2D *toSegment)
 Setter for the to segment.
 
const CDCSegment2DgetStereoSegment () const
 Getter for the stereo segment.
 
const CDCSegment2DgetAxialSegment () const
 Getter for the axial segment.
 
void setSegments (const CDCSegment2D *fromSegment, const CDCSegment2D *toSegment)
 Setter for both segments simultaneously.
 
double computeDeltaPhiAtSuperLayerBound () const
 Determines the angle between the last reconstructed position of the from segment and the first reconstructed position of the to segment.
 
double computeFromIsBeforeTo () const
 Indicator if the from segment lies before the to segment.
 
double computeToIsAfterFrom () const
 Indicator if the from segment lies before the to segment.
 
double computeIsCoaligned () const
 Indicator if the from segment and the to segment have roughly the same travel direction.
 
double computeFromIsBeforeToFitless () const
 Indicator if the from segment lies before the to segment, build without using the trajectories, which may not have been fitted yet.
 
double computeToIsAfterFromFitless () const
 Indicator if the from segment lies before the to segment, build without using the trajectories, which may not have been fitted yet.
 
double computeIsCoalignedFitless () const
 Indicator if the from segment and the to segment have roughly the same travel direction without using the common fit.
 
EForwardBackward isCoaligned (const CDCTrajectory2D &trajectory2D) const
 Checks if the last entity in the vector lies greater or lower travel distance than the last entity.
 
void setTrajectory3D (const CDCTrajectory3D &trajectory3D) const
 Setter for the three dimensional trajectory.
 
CDCTrajectory3DgetTrajectory3D () const
 Getter for the three dimensional trajectory.
 
CDCTrajectory2D getTrajectory2D () const
 Getter for the two dimensional projection of the common three dimensional trajectory.
 
CDCTrajectorySZ getTrajectorySZ () const
 Getter for the sz projection of the common three dimensional trajectory.
 
void clearTrajectory3D () const
 Invalides the currently stored trajectory information.
 
void unsetAndForwardMaskedFlag () const
 Unsets the masked flag of the segment triple's automaton cell and of the three contained segments.
 
void setAndForwardMaskedFlag () const
 Sets the masked flag of the segment triple's automaton cell and of the three contained segments.
 
void receiveMaskedFlag () const
 If one of the contained segments is marked as masked this segment triple is set be masked as well.
 
AutomatonCellgetAutomatonCell () const
 Mutable getter for the automaton cell.
 

Private Attributes

const CDCSegment2Dm_fromSegment
 Reference to the from segment.
 
const CDCSegment2Dm_toSegment
 Reference to the to segment.
 
CDCTrajectory3D m_trajectory3D
 Memory for the common three dimensional trajectory.
 
AutomatonCell m_automatonCell
 Automaton cell associated with the pair of segments.
 

Friends

bool operator< (const CDCSegmentPair &segmentPair, const CDCSegment2D *segment)
 Define reconstructed segments and axial stereo segment pairs as coaligned on the from segment.
 
bool operator< (const CDCSegment2D *segment, const CDCSegmentPair &segmentPair)
 Define reconstructed segments and axial stereo segment pairs as coaligned on the from segment.
 

Detailed Description

Class representing a pair of one reconstructed axial segment and one stereo segment in adjacent superlayer.

Definition at line 34 of file CDCSegmentPair.h.

Constructor & Destructor Documentation

◆ CDCSegmentPair() [1/3]

Default constructor - for ROOT compatibility.

Definition at line 33 of file CDCSegmentPair.cc.

34 : m_fromSegment(nullptr)
35 , m_toSegment(nullptr)
36{
37}
const CDCSegment2D * m_toSegment
Reference to the to segment.
const CDCSegment2D * m_fromSegment
Reference to the from segment.

◆ CDCSegmentPair() [2/3]

CDCSegmentPair ( const CDCSegment2D fromSegment,
const CDCSegment2D toSegment 
)

Constructor from two segments.

Definition at line 39 of file CDCSegmentPair.cc.

40 : m_fromSegment(fromSegment)
41 , m_toSegment(toSegment)
42{
43 B2ASSERT("CDCSegmentPair initialized with nullptr as from segment", fromSegment);
44 B2ASSERT("CDCSegmentPair initialized with nullptr as to segment", toSegment);
45}

◆ CDCSegmentPair() [3/3]

CDCSegmentPair ( const CDCSegment2D fromSegment,
const CDCSegment2D toSegment,
const CDCTrajectory3D trajectory3D 
)

Constructor from two segments and an associated trajectory.

Definition at line 47 of file CDCSegmentPair.cc.

50 : m_fromSegment(fromSegment)
51 , m_toSegment(toSegment)
52 , m_trajectory3D(trajectory3D)
53{
54 B2ASSERT("CDCSegmentPair initialized with nullptr as from segment", fromSegment);
55 B2ASSERT("CDCSegmentPair initialized with nullptr as to segment", toSegment);
56}
CDCTrajectory3D m_trajectory3D
Memory for the common three dimensional trajectory.

Member Function Documentation

◆ checkSegments()

bool checkSegments ( ) const
inline

Checks the references to the contained three segment for nullptrs and exactly one of them is axial and one is stereo.

Definition at line 89 of file CDCSegmentPair.h.

90 {
92 }
bool checkSegmentsNonNullptr() const
Checks if both stored segments are not nullptr. Returns true if check is succeeded.
bool checkSegmentsStereoKinds() const
Checks if the two segments are of different axial type.

◆ checkSegmentsNonNullptr()

bool checkSegmentsNonNullptr ( ) const
inline

Checks if both stored segments are not nullptr. Returns true if check is succeeded.

Definition at line 75 of file CDCSegmentPair.h.

76 {
77 return getFromSegment() != nullptr and getToSegment() != nullptr;
78 }
const CDCSegment2D * getToSegment() const
Getter for the to segment.
const CDCSegment2D * getFromSegment() const
Getter for the from segment.

◆ checkSegmentsStereoKinds()

bool checkSegmentsStereoKinds ( ) const
inline

Checks if the two segments are of different axial type.

Definition at line 81 of file CDCSegmentPair.h.

82 {
83 return (getFromStereoKind() == EStereoKind::c_Axial) xor
84 (getToStereoKind() == EStereoKind::c_Axial);
85 }
EStereoKind getToStereoKind() const
Getter for the stereo type of the second segment.
EStereoKind getFromStereoKind() const
Getter for the stereo type of the first segment.

◆ clearTrajectory3D()

void clearTrajectory3D ( ) const
inline

Invalides the currently stored trajectory information.

Definition at line 215 of file CDCSegmentPair.h.

216 {
218 }
CDCTrajectory3D & getTrajectory3D() const
Getter for the three dimensional trajectory.
void clear()
Clears all information from this trajectoy.

◆ computeDeltaPhiAtSuperLayerBound()

double computeDeltaPhiAtSuperLayerBound ( ) const

Determines the angle between the last reconstructed position of the from segment and the first reconstructed position of the to segment.

Definition at line 126 of file CDCSegmentPair.cc.

127{
128 const CDCSegment2D* ptrFromSegment = getFromSegment();
129 const CDCSegment2D* ptrToSegment = getToSegment();
130
131 if (not ptrFromSegment) {
132 return NAN;
133 }
134
135 if (not ptrToSegment) {
136 return NAN;
137 }
138
139 const CDCSegment2D& fromSegment = *ptrFromSegment;
140 const CDCSegment2D& toSegment = *ptrToSegment;
141
142 if (fromSegment.empty() or toSegment.empty()) {
143 return NAN;
144 }
145
146 const CDCRecoHit2D& lastRecoHit_fromSegment = fromSegment.back();
147 const CDCRecoHit2D& firstRecoHit_toSegment = toSegment.front();
148
149 const Vector2D lastPos2D_fromSegment = lastRecoHit_fromSegment.getRecoPos2D();
150 const Vector2D firstPos2D_toSegment = firstRecoHit_toSegment.getRecoPos2D();
151
152 return lastPos2D_fromSegment.angleWith(firstPos2D_toSegment);
153}
Class representing a two dimensional reconstructed hit in the central drift chamber.
Definition: CDCRecoHit2D.h:47
Vector2D getRecoPos2D() const
Getter for the position in the reference plane.
Definition: CDCRecoHit2D.h:238
A reconstructed sequence of two dimensional hits in one super layer.
Definition: CDCSegment2D.h:39
A two dimensional vector which is equipped with functions for correct handling of orientation relate...
Definition: Vector2D.h:32
double angleWith(const Vector2D &rhs) const
The angle between this and rhs.
Definition: Vector2D.h:197

◆ computeFromIsBeforeTo()

double computeFromIsBeforeTo ( ) const
inline

Indicator if the from segment lies before the to segment.

Definition at line 159 of file CDCSegmentPair.h.

160 {
162 }
double computeFromIsBeforeToFitless() const
Indicator if the from segment lies before the to segment, build without using the trajectories,...

◆ computeFromIsBeforeToFitless()

double computeFromIsBeforeToFitless ( ) const

Indicator if the from segment lies before the to segment, build without using the trajectories, which may not have been fitted yet.

Definition at line 155 of file CDCSegmentPair.cc.

156{
157 const CDCSegment2D* ptrFromSegment = getFromSegment();
158 const CDCSegment2D* ptrToSegment = getToSegment();
159
160 if (not ptrFromSegment) {
161 return NAN;
162 }
163
164 if (not ptrToSegment) {
165 return NAN;
166 }
167
168 const CDCSegment2D& fromSegment = *ptrFromSegment;
169 const CDCSegment2D& toSegment = *ptrToSegment;
170
171 if (fromSegment.empty() or toSegment.empty()) {
172 return NAN;
173 }
174
175 const CDCRecoHit2D& firstRecoHit_fromSegment = fromSegment.front();
176 const CDCRecoHit2D& lastRecoHit_fromSegment = fromSegment.back();
177
178 const CDCRecoHit2D& firstRecoHit_toSegment = toSegment.front();
179
180 const Vector2D firstPos2D_fromSegment = firstRecoHit_fromSegment.getRecoPos2D();
181 const Vector2D lastPos2D_fromSegment = lastRecoHit_fromSegment.getRecoPos2D();
182 const Vector2D firstPos2D_toSegment = firstRecoHit_toSegment.getRecoPos2D();
183
184 Vector2D firstToLast_fromSegment = lastPos2D_fromSegment - firstPos2D_fromSegment;
185 Vector2D firstToFirst = firstPos2D_toSegment - firstPos2D_fromSegment;
186
187 return firstToLast_fromSegment.angleWith(firstToFirst);
188}

◆ computeIsCoaligned()

double computeIsCoaligned ( ) const
inline

Indicator if the from segment and the to segment have roughly the same travel direction.

Definition at line 171 of file CDCSegmentPair.h.

172 {
174 }
double computeIsCoalignedFitless() const
Indicator if the from segment and the to segment have roughly the same travel direction without using...

◆ computeIsCoalignedFitless()

double computeIsCoalignedFitless ( ) const

Indicator if the from segment and the to segment have roughly the same travel direction without using the common fit.

Definition at line 225 of file CDCSegmentPair.cc.

226{
227 const CDCSegment2D* ptrFromSegment = getFromSegment();
228 const CDCSegment2D* ptrToSegment = getToSegment();
229
230 if (not ptrFromSegment) {
231 return NAN;
232 }
233
234 if (not ptrToSegment) {
235 return NAN;
236 }
237
238 const CDCSegment2D& fromSegment = *ptrFromSegment;
239 const CDCSegment2D& toSegment = *ptrToSegment;
240
241 if (fromSegment.empty() or toSegment.empty()) {
242 return NAN;
243 }
244
245 const CDCRecoHit2D& firstRecoHit_fromSegment = fromSegment.front();
246 const CDCRecoHit2D& lastRecoHit_fromSegment = fromSegment.back();
247
248 const CDCRecoHit2D& firstRecoHit_toSegment = toSegment.front();
249 const CDCRecoHit2D& lastRecoHit_toSegment = toSegment.back();
250
251 const Vector2D firstPos2D_fromSegment = firstRecoHit_fromSegment.getRecoPos2D();
252 const Vector2D lastPos2D_fromSegment = lastRecoHit_fromSegment.getRecoPos2D();
253
254 const Vector2D firstPos2D_toSegment = firstRecoHit_toSegment.getRecoPos2D();
255 const Vector2D lastPos2D_toSegment = lastRecoHit_toSegment.getRecoPos2D();
256
257 Vector2D firstToLast_fromSegment = lastPos2D_fromSegment - firstPos2D_fromSegment;
258 Vector2D firstToLast_toSegment = lastPos2D_toSegment - firstPos2D_toSegment;
259
260 return firstToLast_fromSegment.angleWith(firstToLast_toSegment);
261}

◆ computeToIsAfterFrom()

double computeToIsAfterFrom ( ) const
inline

Indicator if the from segment lies before the to segment.

Definition at line 165 of file CDCSegmentPair.h.

166 {
168 }
double computeToIsAfterFromFitless() const
Indicator if the from segment lies before the to segment, build without using the trajectories,...

◆ computeToIsAfterFromFitless()

double computeToIsAfterFromFitless ( ) const

Indicator if the from segment lies before the to segment, build without using the trajectories, which may not have been fitted yet.

Definition at line 190 of file CDCSegmentPair.cc.

191{
192 const CDCSegment2D* ptrFromSegment = getFromSegment();
193 const CDCSegment2D* ptrToSegment = getToSegment();
194
195 if (not ptrFromSegment) {
196 return NAN;
197 }
198
199 if (not ptrToSegment) {
200 return NAN;
201 }
202
203 const CDCSegment2D& fromSegment = *ptrFromSegment;
204 const CDCSegment2D& toSegment = *ptrToSegment;
205
206 if (fromSegment.empty() or toSegment.empty()) {
207 return NAN;
208 }
209
210 const CDCRecoHit2D& lastRecoHit_fromSegment = fromSegment.back();
211
212 const CDCRecoHit2D& firstRecoHit_toSegment = toSegment.front();
213 const CDCRecoHit2D& lastRecoHit_toSegment = toSegment.back();
214
215 const Vector2D lastPos2D_fromSegment = lastRecoHit_fromSegment.getRecoPos2D();
216 const Vector2D firstPos2D_toSegment = firstRecoHit_toSegment.getRecoPos2D();
217 const Vector2D lastPos2D_toSegment = lastRecoHit_toSegment.getRecoPos2D();
218
219 Vector2D firstToLast_toSegment = lastPos2D_toSegment - firstPos2D_toSegment;
220 Vector2D lastToLast = lastPos2D_toSegment - lastPos2D_fromSegment;
221
222 return firstToLast_toSegment.angleWith(lastToLast);
223}

◆ getAutomatonCell()

AutomatonCell & getAutomatonCell ( ) const
inline

Mutable getter for the automaton cell.

Definition at line 233 of file CDCSegmentPair.h.

234 {
235 return m_automatonCell;
236 }
AutomatonCell m_automatonCell
Automaton cell associated with the pair of segments.

◆ getAxialSegment()

const CDCSegment2D * getAxialSegment ( ) const
inline

Getter for the axial segment.

Definition at line 140 of file CDCSegmentPair.h.

141 {
142 return getFromStereoKind() == EStereoKind::c_Axial ? getFromSegment() : getToSegment();
143 }

◆ getFromISuperLayer()

ISuperLayer getFromISuperLayer ( ) const

Getter for the superlayer id of the from segment.

Definition at line 71 of file CDCSegmentPair.cc.

72{
73 return getFromSegment() == nullptr ? ISuperLayerUtil::c_Invalid
74 : getFromSegment()->back().getISuperLayer();
75}
static const ISuperLayer c_Invalid
Constant making an invalid superlayer id.
Definition: ISuperLayer.h:65

◆ getFromSegment()

const CDCSegment2D * getFromSegment ( ) const
inline

Getter for the from segment.

Definition at line 110 of file CDCSegmentPair.h.

111 {
112 return m_fromSegment;
113 }

◆ getFromStereoKind()

EStereoKind getFromStereoKind ( ) const

Getter for the stereo type of the first segment.

Definition at line 59 of file CDCSegmentPair.cc.

60{
61 return getFromSegment() == nullptr ? EStereoKind::c_Invalid
62 : getFromSegment()->back().getStereoKind();
63}

◆ getStereoSegment()

const CDCSegment2D * getStereoSegment ( ) const
inline

Getter for the stereo segment.

Definition at line 134 of file CDCSegmentPair.h.

135 {
136 return getFromStereoKind() != EStereoKind::c_Axial ? getFromSegment() : getToSegment();
137 }

◆ getToISuperLayer()

ISuperLayer getToISuperLayer ( ) const

Getter for the superlayer id of the to segment.

Definition at line 77 of file CDCSegmentPair.cc.

78{
79 return getToSegment() == nullptr ? ISuperLayerUtil::c_Invalid
80 : getToSegment()->front().getISuperLayer();
81}

◆ getToSegment()

const CDCSegment2D * getToSegment ( ) const
inline

Getter for the to segment.

Definition at line 122 of file CDCSegmentPair.h.

123 {
124 return m_toSegment;
125 }

◆ getToStereoKind()

EStereoKind getToStereoKind ( ) const

Getter for the stereo type of the second segment.

Definition at line 65 of file CDCSegmentPair.cc.

66{
67 return getToSegment() == nullptr ? EStereoKind::c_Invalid
68 : getToSegment()->front().getStereoKind();
69}

◆ getTrajectory2D()

CDCTrajectory2D getTrajectory2D ( ) const

Getter for the two dimensional projection of the common three dimensional trajectory.

Definition at line 88 of file CDCSegmentPair.cc.

89{
91}
CDCTrajectory2D getTrajectory2D() const
Getter for the two dimensional trajectory.

◆ getTrajectory3D()

CDCTrajectory3D & getTrajectory3D ( ) const
inline

Getter for the three dimensional trajectory.

Definition at line 203 of file CDCSegmentPair.h.

204 {
205 return m_trajectory3D;
206 }

◆ getTrajectorySZ()

CDCTrajectorySZ getTrajectorySZ ( ) const

Getter for the sz projection of the common three dimensional trajectory.

Definition at line 93 of file CDCSegmentPair.cc.

94{
96}
CDCTrajectorySZ getTrajectorySZ() const
Getter for the sz trajectory.

◆ isCoaligned()

EForwardBackward isCoaligned ( const CDCTrajectory2D trajectory2D) const

Checks if the last entity in the vector lies greater or lower travel distance than the last entity.

Returns:

  • EForwardBackward::c_Forward if the last entity lies behind the first.
  • EForwardBackward::c_Backward if the last entity lies before the first.

Definition at line 263 of file CDCSegmentPair.cc.

264{
265 EForwardBackward fromIsCoaligned = trajectory2D.isForwardOrBackwardTo(*(getFromSegment()));
266 EForwardBackward toIsCoaligned = trajectory2D.isForwardOrBackwardTo(*(getToSegment()));
267
268 if (fromIsCoaligned == EForwardBackward::c_Forward and
269 toIsCoaligned == EForwardBackward::c_Forward) {
270 return EForwardBackward::c_Forward;
271 } else if (fromIsCoaligned == EForwardBackward::c_Backward and
272 toIsCoaligned == EForwardBackward::c_Backward) {
273 return EForwardBackward::c_Backward;
274 } else {
275 return EForwardBackward::c_Invalid;
276 }
277}
EForwardBackward isForwardOrBackwardTo(const AHits &hits) const
Calculates if this trajectory and the hits are coaligned Returns:
EForwardBackward
Enumeration to represent the distinct possibilities of the right left passage information.

◆ operator<()

bool operator< ( CDCSegmentPair const &  rhs) const
inline

Total ordering scheme comparing the segment pointers.

Definition at line 54 of file CDCSegmentPair.h.

55 {
56 return (getFromSegment() < rhs.getFromSegment() or
57 (getFromSegment() == rhs.getFromSegment() and getToSegment() < rhs.getToSegment()));
58 }

◆ operator==()

bool operator== ( CDCSegmentPair const &  rhs) const
inline

Equality comparison based on the pointers to the stored segments.

Definition at line 48 of file CDCSegmentPair.h.

49 {
50 return getFromSegment() == rhs.getFromSegment() and getToSegment() == rhs.getToSegment();
51 }

◆ receiveMaskedFlag()

void receiveMaskedFlag ( ) const

If one of the contained segments is marked as masked this segment triple is set be masked as well.

Definition at line 114 of file CDCSegmentPair.cc.

115{
116 const bool fromHits = true;
117 getFromSegment()->receiveMaskedFlag(fromHits);
118 getToSegment()->receiveMaskedFlag(fromHits);
119
120 if (getFromSegment()->getAutomatonCell().hasMaskedFlag() or
121 getToSegment()->getAutomatonCell().hasMaskedFlag()) {
123 }
124}
void setMaskedFlag(bool setTo=true)
Sets the masked flag to the given value. Default value true.
AutomatonCell & getAutomatonCell() const
Mutable getter for the automaton cell.

◆ setAndForwardMaskedFlag()

void setAndForwardMaskedFlag ( ) const

Sets the masked flag of the segment triple's automaton cell and of the three contained segments.

Definition at line 106 of file CDCSegmentPair.cc.

107{
109 const bool toHits = true;
110 getFromSegment()->setAndForwardMaskedFlag(toHits);
111 getToSegment()->setAndForwardMaskedFlag(toHits);
112}

◆ setFromSegment()

void setFromSegment ( const CDCSegment2D fromSegment)
inline

Setter for the from segment.

Definition at line 116 of file CDCSegmentPair.h.

117 {
118 setSegments(fromSegment, getToSegment());
119 }
void setSegments(const CDCSegment2D *fromSegment, const CDCSegment2D *toSegment)
Setter for both segments simultaneously.

◆ setSegments()

void setSegments ( const CDCSegment2D fromSegment,
const CDCSegment2D toSegment 
)
inline

Setter for both segments simultaneously.

Definition at line 146 of file CDCSegmentPair.h.

147 {
148 m_fromSegment = fromSegment;
149 m_toSegment = toSegment;
150 assert(checkSegmentsNonNullptr());
151 assert(checkSegmentsStereoKinds());
152 }

◆ setToSegment()

void setToSegment ( const CDCSegment2D toSegment)
inline

Setter for the to segment.

Definition at line 128 of file CDCSegmentPair.h.

129 {
130 setSegments(getFromSegment(), toSegment);
131 }

◆ setTrajectory3D()

void setTrajectory3D ( const CDCTrajectory3D trajectory3D) const
inline

Setter for the three dimensional trajectory.

Definition at line 197 of file CDCSegmentPair.h.

198 {
199 m_trajectory3D = trajectory3D;
200 }

◆ size()

std::size_t size ( ) const

Getter for the total number of hits in this segment pair.

Definition at line 83 of file CDCSegmentPair.cc.

84{
85 return getFromSegment()->size() + getToSegment()->size();
86}

◆ unsetAndForwardMaskedFlag()

void unsetAndForwardMaskedFlag ( ) const

Unsets the masked flag of the segment triple's automaton cell and of the three contained segments.

Definition at line 98 of file CDCSegmentPair.cc.

99{
101 const bool toHits = true;
102 getFromSegment()->unsetAndForwardMaskedFlag(toHits);
103 getToSegment()->unsetAndForwardMaskedFlag(toHits);
104}
void unsetMaskedFlag()
Resets the masked flag to false.

Friends And Related Function Documentation

◆ operator< [1/2]

bool operator< ( const CDCSegment2D segment,
const CDCSegmentPair segmentPair 
)
friend

Define reconstructed segments and axial stereo segment pairs as coaligned on the from segment.

Definition at line 69 of file CDCSegmentPair.h.

70 {
71 return segment < segmentPair.getFromSegment();
72 }

◆ operator< [2/2]

bool operator< ( const CDCSegmentPair segmentPair,
const CDCSegment2D segment 
)
friend

Define reconstructed segments and axial stereo segment pairs as coaligned on the from segment.

Definition at line 62 of file CDCSegmentPair.h.

63 {
64 return segmentPair.getFromSegment() < segment;
65 }

Member Data Documentation

◆ m_automatonCell

AutomatonCell m_automatonCell
mutableprivate

Automaton cell associated with the pair of segments.

Definition at line 249 of file CDCSegmentPair.h.

◆ m_fromSegment

const CDCSegment2D* m_fromSegment
private

Reference to the from segment.

Definition at line 240 of file CDCSegmentPair.h.

◆ m_toSegment

const CDCSegment2D* m_toSegment
private

Reference to the to segment.

Definition at line 243 of file CDCSegmentPair.h.

◆ m_trajectory3D

CDCTrajectory3D m_trajectory3D
mutableprivate

Memory for the common three dimensional trajectory.

Definition at line 246 of file CDCSegmentPair.h.


The documentation for this class was generated from the following files: