93 int getTrackID()
const {
return track_id_; };
95 void setPdgID(
int pdgID) { pdg_id_ = pdgID; };
96 int getPdgID()
const {
return pdg_id_; };
98 void setNhits(
int nHits) { n_hits_ = nHits; };
99 int getNhits()
const {
return n_hits_; }
102 int q()
const {
return perigee_pars_[4] > 0 ? 1 : -1; }
105 void setPerigeeParameters(
const std::vector<double>& par) {
108 std::vector<double> getPerigeeParameters()
const {
return perigee_pars_; }
110 void setPerigeeLocation(
const std::vector<double>& perigee) {
114 void setPerigeeLocation(
const double& x_,
const double& y_,
121 void setMomentum(
const double& px,
const double& py,
const double& pz) {
127 void setPosition(
const double& x_,
const double& y_,
const double& z_) {
133 std::vector<double> getPerigeeLocation()
const {
return perigee_; };
134 double getPerigeeX()
const {
return perigee_[0]; };
135 double getPerigeeY()
const {
return perigee_[1]; };
136 double getPerigeeZ()
const {
return perigee_[2]; };
138 std::vector<double> getMomentum()
const {
return momentum_; };
139 std::vector<double> getPosition()
const {
return position_; };
143 double getD0()
const {
return perigee_pars_[0]; };
144 double getZ0()
const {
return perigee_pars_[1]; };
145 double getPhi()
const {
return perigee_pars_[2]; };
146 double getTheta()
const {
return perigee_pars_[3]; };
147 double getQoP()
const {
return perigee_pars_[4]; };
148 double getT()
const {
return perigee_pars_[5]; };
155 std::vector<double> perigee_pars_{0., 0., 0., 0., 0., 0.};
158 std::vector<double> perigee_{0., 0., 0.};
161 std::vector<double> momentum_{0., 0., 0.};
164 std::vector<double> position_{0., 0., 0.};
void setTrackID(int trackid)
Use the scoring plane hit at the target to extract (x_, y_, z_, px, py, pz) and create a track seed.
friend std::ostream & operator<<(std::ostream &o, const TruthTrack &d)
Use the vertex position of the SimParticle to extract (x_, y_, z_, px, py, pz, q) and create a track ...