74 GFTrackCand(
double curv,
double dip,
double inv, std::vector<unsigned int> detIDs, std::vector<unsigned int> hitIDs);
76 GFTrackCand(
double curv,
double dip,
double inv, std::vector<unsigned int> detIDs, std::vector<unsigned int> hitIDs, std::vector<double> rhos);
86 unsigned int& hitId)
const {
88 throw GFException(
"genf::GFTrackCand::getHit(int, int, int): hit index out of range", __LINE__, __FILE__).
setFatal();
99 throw GFException(
"genf::GFTrackCand::getHit(int, int, int, double): hit index out of range", __LINE__, __FILE__).
setFatal();
109 unsigned int& planeId)
const {
111 throw GFException(
"genf::GFTrackCand::getHitWithPlane(): hit index out of range", __LINE__, __FILE__).
setFatal();
120 std::vector<unsigned int>
GetHitIDs(
int detId=-1);
124 std::set<unsigned int> retVal;
125 for(
unsigned int i=0;i<
fDetId.size();++i){
126 retVal.insert(
fDetId.at(i));
146 void addHit(
unsigned int detId,
unsigned int hitId,
double rho=0.,
unsigned int planeId=0);
155 bool HitInTrack(
unsigned int detId,
unsigned int hitId);
162 void setComplTrackSeed(
const TVector3& pos,
const TVector3& mom,
const int pdgCode, TVector3 posError = TVector3(1.0,1.0,1.0), TVector3 dirError = TVector3(1.0,1.0,1.0));
171 void Print(std::ostream& out = std::cout)
const ;
196 {
throw GFException(std::string(__func__) +
"::Print(Option_t*) not available", __LINE__, __FILE__).
setFatal(); }
friend bool operator==(const GFTrackCand &lhs, const GFTrackCand &rhs)
TVector3 getPosError() const
void setTrackSeed(const TVector3 &p, const TVector3 &d, double qop)
set the seed values for track: pos, direction, q/p
TVector3 getPosSeed() const
get the seed value for track: pos
void setPdgCode(int pdgCode)
set a particle hypothesis in form of a PDG code
void Print(std::ostream &out=std::cout) const
Generic Interface to magnetic fields in GENFIT.
void getHitWithPlane(unsigned int i, unsigned int &detId, unsigned int &hitId, unsigned int &planeId) const
Get detector ID and cluster index (hitId) for hit number i with plane id.
virtual void Print(Option_t *) const
void getHit(unsigned int i, unsigned int &detId, unsigned int &hitId, double &rho) const
Get detector ID and cluster index (hitId) for hit number i with ordering parameter rho...
TVector3 getDirSeed() const
get the seed value for track: direction
void append(const GFTrackCand &)
void setComplTrackSeed(const TVector3 &pos, const TVector3 &mom, const int pdgCode, TVector3 posError=TVector3(1.0, 1.0, 1.0), TVector3 dirError=TVector3(1.0, 1.0, 1.0))
bool HitInTrack(unsigned int detId, unsigned int hitId)
Test if hit already is part of this track candidate.
std::vector< double > GetRhos() const
std::vector< unsigned int > fPlaneId
int getPdgCode() const
get the PDG code
void getHit(unsigned int i, unsigned int &detId, unsigned int &hitId) const
Get detector ID and cluster index (hitId) for hit number i.
unsigned int getNHits() const
void setMcTrackId(int i)
set the MCT track id, for MC simulations
Exception class for error handling in GENFIT (provides storage for diagnostic information) ...
std::vector< unsigned int > GetHitIDs(int detId=-1)
std::set< unsigned int > GetUniqueDetIDs() const
GFException & setFatal(bool b=true)
set fatal flag. if this is true, the fit stops for this current track repr.
void addHit(unsigned int detId, unsigned int hitId, double rho=0., unsigned int planeId=0)
void setInverted(bool f=true)
TVector3 getDirError() const
get the seed value for track: error on direction (standard deviation)
int getMcTrackId() const
get the MCT track id, for MC simulations - def. value -1
std::vector< unsigned int > fDetId
std::vector< unsigned int > GetDetIDs() const
std::vector< unsigned int > fHitId
double getQoverPseed() const
get the seed value for track: qoverp
std::vector< double > fRho