Belle II Software  release-06-01-15
CDCTrack Class Reference

Class representing a sequence of three dimensional reconstructed hits. More...

#include <CDCTrack.h>

Inheritance diagram for CDCTrack:
Collaboration diagram for CDCTrack:

Public Member Functions

 CDCTrack ()=default
 Default constructor for ROOT compatibility.
 
 CDCTrack (const std::vector< CDCRecoHit3D > &recoHits3D)
 Constructor from a series of hits.
 
 CDCTrack (const CDCSegment2D &segment)
 Constructor from a two dimensional segment filling the third dimension with 0 values.
 
bool operator< (const CDCTrack &track) const
 Comparision of track - no particular order has been defined so far, all tracks are equivalent.
 
std::vector< CDCSegment3DsplitIntoSegments () const
 Splits the track into segments. More...
 
ISuperLayer getStartISuperLayer () const
 Getter for the superlayer id the track starts from.
 
ISuperLayer getEndISuperLayer () const
 Getter for the superlayer id the track ends in.
 
const Vector3DgetStartRecoPos3D () const
 Getter for the position of the first reconstructed hit.
 
const Vector3DgetEndRecoPos3D () const
 Getter for the position of the last reconstructed hit.
 
void setStartTrajectory3D (const CDCTrajectory3D &startTrajectory3D)
 Setter for the two dimensional trajectory. More...
 
void setEndTrajectory3D (const CDCTrajectory3D &endTrajectory3D)
 Setter for the three dimensional trajectory. More...
 
const CDCTrajectory3DgetStartTrajectory3D () const
 Getter for the two dimensional trajectory. More...
 
const CDCTrajectory3DgetEndTrajectory3D () const
 Getter for the three dimensional trajectory. More...
 
AutomatonCellgetAutomatonCell () const
 Mutable getter for the automaton cell.
 
AutomatonCelloperator-> () const
 Indirection to the automaton cell for easier access to the flags.
 
void unsetAndForwardMaskedFlag () const
 Unset the masked flag of the automaton cell of this segment and of all contained wire hits.
 
void setAndForwardMaskedFlag () const
 Set the masked flag of the automaton cell of this segment and forward the masked flag to all contained wire hits.
 
void receiveMaskedFlag () const
 Check all contained wire hits if one has the masked flag. More...
 
void forwardTakenFlag (bool takenFlag=true) const
 Set the taken flag of all hits belonging to this track to the given value (default true), but do not touch the flag of the track itself.
 
void sortByArcLength2D ()
 Sort the recoHits according to their perpS information.
 
void shiftToPositiveArcLengths2D (bool doForAllTracks=false)
 Set all arcLengths to have positive values by shifting them by pi*radius if they are negative. More...
 
void reverse ()
 Reverse the track inplace.
 
CDCTrack reversed () const
 Return a reversed copy of the track.
 
MayBePtr< const CDCRecoHit3Dfind (const CDCWireHit &wireHit) const
 Finds the first CDCRecoHit3D that is based on the given wire hit - nullptr if none.
 
void setHasMatchingSegment (bool hasMatchingSegment=true)
 Set the flag which indicates that the track has a matching segment (probably only used in the SegmentTrackCombiner).
 
bool getHasMatchingSegment () const
 Get a flag which indicates that the track has a matching segment (probably set in the SegmentTrackCombiner). More...
 
float getQualityIndicator () const
 Get the multivariate quality indicator in [0, 1] attached the CDCTrack.
 
void setQualityIndicator (const float qualityIndicator)
 Set the multivariate quality indicator in [0, 1] attached the CDCTrack.
 

Static Public Member Functions

static CDCTrack condense (const Path< const CDCTrack > &trackPath)
 Concats several tracks from a path.
 
static CDCTrack condense (const Path< const CDCSegmentTriple > &segmentTriplePath)
 Reconstructs the hit content of the segment triple track to a CDCTrack averaging overlapping parts.
 
static CDCTrack condense (const Path< const CDCSegmentPair > &segmentPairPath)
 Reconstructs the hit content of the axial stereo segment pair path to a CDCTrack averaging overlapping parts.
 

Public Attributes

elements
 STL member.
 

Private Attributes

AutomatonCell m_automatonCell
 Memory for the automaton cell.
 
CDCTrajectory3D m_startTrajectory3D
 Memory for the three dimensional trajectory at the start of the track.
 
CDCTrajectory3D m_endTrajectory3D
 Memory for the three dimensional trajectory at the end of the track.
 
bool m_hasMatchingSegment = false
 Flag which indicates that the track had a matching segment (can be used for filter decisions)
 
float m_qualityIndicator = NAN
 Multivariate classifier output in [0, 1] correlated with probability that track is good match. More...
 

Detailed Description

Class representing a sequence of three dimensional reconstructed hits.

Definition at line 41 of file CDCTrack.h.

Member Function Documentation

◆ getEndTrajectory3D()

const CDCTrajectory3D& getEndTrajectory3D ( ) const
inline

Getter for the three dimensional trajectory.

The trajectory should start at the END of the track and follow its direction.

Definition at line 119 of file CDCTrack.h.

120  {
121  return m_endTrajectory3D;
122  }
CDCTrajectory3D m_endTrajectory3D
Memory for the three dimensional trajectory at the end of the track.
Definition: CDCTrack.h:207

◆ getHasMatchingSegment()

bool getHasMatchingSegment ( ) const
inline

Get a flag which indicates that the track has a matching segment (probably set in the SegmentTrackCombiner).

This flag can be used for filter decisions (e.g. if the track is fake).

Definition at line 182 of file CDCTrack.h.

◆ getStartTrajectory3D()

const CDCTrajectory3D& getStartTrajectory3D ( ) const
inline

Getter for the two dimensional trajectory.

The trajectory should start at the start of the track and follow its direction.

Definition at line 112 of file CDCTrack.h.

◆ receiveMaskedFlag()

void receiveMaskedFlag ( ) const

Check all contained wire hits if one has the masked flag.

Set the masked flag of this segment in case at least one of the contained wire hits is flagged as masked.

Definition at line 394 of file CDCTrack.cc.

395 {
396  for (const CDCRecoHit3D& recoHit3D : *this) {
397  const CDCWireHit& wireHit = recoHit3D.getWireHit();
398  if (wireHit.getAutomatonCell().hasMaskedFlag()) {
400  return;
401  }
402  }
403 }
void setMaskedFlag(bool setTo=true)
Sets the masked flag to the given value. Default value true.
bool hasMaskedFlag() const
Gets the current state of the masked marker flag.
Class representing a three dimensional reconstructed hit.
Definition: CDCRecoHit3D.h:52
const CDCWireHit & getWireHit() const
Getter for the wire hit.
Definition: CDCRecoHit3D.h:238
AutomatonCell & getAutomatonCell() const
Mutable getter for the automaton cell.
Definition: CDCTrack.h:125
Class representing a hit wire in the central drift chamber.
Definition: CDCWireHit.h:55
AutomatonCell & getAutomatonCell() const
Mutable getter for the automaton cell.
Definition: CDCWireHit.h:286

◆ setEndTrajectory3D()

void setEndTrajectory3D ( const CDCTrajectory3D endTrajectory3D)
inline

Setter for the three dimensional trajectory.

The trajectory should start at the END of the track and follow its direction.

Definition at line 105 of file CDCTrack.h.

◆ setStartTrajectory3D()

void setStartTrajectory3D ( const CDCTrajectory3D startTrajectory3D)
inline

Setter for the two dimensional trajectory.

The trajectory should start at the start of the track and follow its direction.

Definition at line 98 of file CDCTrack.h.

◆ shiftToPositiveArcLengths2D()

void shiftToPositiveArcLengths2D ( bool  doForAllTracks = false)

Set all arcLengths to have positive values by shifting them by pi*radius if they are negative.

This can only be done if the radius is not infinity (for example cosmics). The flag can be used to do this for all tracks (default is to do this only for curlers)

Definition at line 423 of file CDCTrack.cc.

◆ splitIntoSegments()

std::vector< CDCSegment3D > splitIntoSegments ( ) const

Splits the track into segments.

Note : No trajectory information is copied

Definition at line 321 of file CDCTrack.cc.

Member Data Documentation

◆ m_qualityIndicator

float m_qualityIndicator = NAN
private

Multivariate classifier output in [0, 1] correlated with probability that track is good match.

Used to reject fakes and clones. Implemented here to be forwarded to RecoTrack.

Definition at line 214 of file CDCTrack.h.


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