Belle II Software  release-05-02-19
DATCONTrack.h
1 /**************************************************************************
2  * BASF2 (Belle Analysis Framework 2) *
3  * Copyright(C) 2012 - Belle II Collaboration *
4  * *
5  * Author: The Belle II Collaboration *
6  * Contributors: Christian Wessel *
7  * *
8  * This software is provided "as is" without any warranty. *
9  **************************************************************************/
10 
11 #pragma once
12 
13 #include <root/TObject.h>
14 #include <root/TMath.h>
15 
16 namespace Belle2 {
27  class DATCONTrack : public TObject {
28 
29  public:
41 
52  DATCONTrack(const unsigned int ID, double radius, double phi, double zzero, double theta, int charge, int curvsign):
53  trackID(ID), trackRadius(radius), trackPhi(phi), trackZzero(zzero), trackTheta(theta), trackCharge(charge),
54  trackCurvsign(curvsign) {}
55 
67  DATCONTrack(const std::vector<unsigned int>& hitIDList, const unsigned int ID, double radius, double phi, double zzero,
68  double theta,
69  int charge, int curvsign):
70  m_HitIDList(hitIDList), trackID(ID), trackRadius(radius), trackPhi(phi), trackZzero(zzero), trackTheta(theta), trackCharge(charge),
71  trackCurvsign(curvsign) {}
72 
74  unsigned int getTrackID() const { return trackID; }
75 
78  double getTrackRadius() const { return trackRadius; }
80  double getTrackPhi() const { return trackPhi; }
82  double getTrackZzero() const { return trackZzero; }
84  double getTrackTheta() const { return trackTheta; }
86  int getTrackCharge() const { return trackCharge; }
88  int getTrackCurvature() const { return trackCurvsign; }
90  std::vector<unsigned int> getHitIDList() const { return m_HitIDList; }
91 
94  void setHitIDList(const std::vector<unsigned int>& hitIDList) { m_HitIDList = hitIDList; }
95 
96 
97  private:
99  std::vector<unsigned int> m_HitIDList;
101  unsigned int trackID = -1;
103  double trackRadius = TMath::QuietNaN();
105  double trackPhi = TMath::QuietNaN();
107  double trackZzero = TMath::QuietNaN();
109  double trackTheta = TMath::QuietNaN();
111  int trackCharge = TMath::QuietNaN();
113  int trackCurvsign = TMath::QuietNaN();
114 
115  ClassDef(DATCONTrack, 1)
116 
117  }; // class DATCONTRACK_H
118 
120 }; // end namespace Belle2
121 
Belle2::EvtPDLUtil::charge
double charge(int pdgCode)
Returns electric charge of a particle with given pdg code.
Definition: EvtPDLUtil.cc:46
Belle2::DATCONTrack::getTrackID
unsigned int getTrackID() const
Get track ID.
Definition: DATCONTrack.h:82
Belle2::DATCONTrack::trackRadius
double trackRadius
radius of track
Definition: DATCONTrack.h:111
Belle2::DATCONTrack::getTrackCharge
int getTrackCharge() const
Get (hough) charge of track.
Definition: DATCONTrack.h:94
Belle2::DATCONTrack::trackTheta
double trackTheta
theta of track
Definition: DATCONTrack.h:117
Belle2::DATCONTrack::m_HitIDList
std::vector< unsigned int > m_HitIDList
List of IDs of hits assigned to this track.
Definition: DATCONTrack.h:107
Belle2::DATCONTrack::trackID
unsigned int trackID
track ID
Definition: DATCONTrack.h:109
Belle2::DATCONTrack
The DATCON Track class.
Definition: DATCONTrack.h:35
Belle2::DATCONTrack::setHitIDList
void setHitIDList(const std::vector< unsigned int > &hitIDList)
Set functions.
Definition: DATCONTrack.h:102
Belle2::DATCONTrack::getHitIDList
std::vector< unsigned int > getHitIDList() const
Get the list of hit assigned to the track.
Definition: DATCONTrack.h:98
Belle2::DATCONTrack::getTrackCurvature
int getTrackCurvature() const
Get curvature of track as integer.
Definition: DATCONTrack.h:96
Belle2::DATCONTrack::getTrackTheta
double getTrackTheta() const
Get theta of track.
Definition: DATCONTrack.h:92
Belle2::DATCONTrack::trackPhi
double trackPhi
phi of track
Definition: DATCONTrack.h:113
Belle2
Abstract base class for different kinds of events.
Definition: MillepedeAlgorithm.h:19
Belle2::DATCONTrack::getTrackRadius
double getTrackRadius() const
Get helix parameters.
Definition: DATCONTrack.h:86
Belle2::DATCONTrack::getTrackPhi
double getTrackPhi() const
Get phi of track.
Definition: DATCONTrack.h:88
Belle2::DATCONTrack::trackZzero
double trackZzero
vertical coordinate of the theta Hough Space to compute z0
Definition: DATCONTrack.h:115
Belle2::DATCONTrack::trackCharge
int trackCharge
charge of track
Definition: DATCONTrack.h:119
Belle2::DATCONTrack::DATCONTrack
DATCONTrack()
Standard constructor.
Definition: DATCONTrack.h:48
Belle2::DATCONTrack::trackCurvsign
int trackCurvsign
curvature of track as integer
Definition: DATCONTrack.h:121
Belle2::DATCONTrack::getTrackZzero
double getTrackZzero() const
Get d of track.
Definition: DATCONTrack.h:90