77 this->SetXYZT(right.Px(),right.Py(),right.Pz(),right.E());
158 SetXYZT(v.X(),v.Y(),v.Z(),E());
165 SetXYZT(v.X(),v.Y(),v.Z(),E());
172 SetXYZT(v.X(),v.Y(),v.Z(),E());
179 SetXYZT(v.X(),v.Y(),v.Z(),E());
184 Boost b(betax,betay,betaz);
186 SetXYZT(p.X(),p.Y(),p.Z(),p.T());
192 MyParticleName =
myInfo->name();
194 MyParticleName =
"unknown ";
202 if (MyParticleName.length() != 0) {
204 for(
unsigned int k=0;
k<9-MyParticleName.length() &&
k<10;
k++)
216 std::cout.setf(std::ios::right, std::ios::adjustfield);
217 std::cout << std::setw(8) << std::setprecision(2) << Px();
218 std::cout << std::setw(8) << std::setprecision(2) << Py();
219 std::cout << std::setw(8) << std::setprecision(2) << Pz();
220 std::cout << std::setw(8) << std::setprecision(2) << E();
221 std::cout << std::setw(8) << std::setprecision(2) << M();
224 std::cout << std::setw(8) << std::setprecision(2) <<
X();
225 std::cout << std::setw(8) << std::setprecision(2) <<
Y();
226 std::cout << std::setw(8) << std::setprecision(2) <<
Z();
227 std::cout << std::setw(8) << std::setprecision(2) <<
T();
234 o.setf(std::ios::right, std::ios::adjustfield);
237 o << std::setw(4) << std::setprecision(2) << p.
pid() <<
" (";
238 o << std::setw(2) << std::setprecision(2) << p.
status() <<
"): ";
239 o << std::setw(10) << std::setprecision(4) << p.
momentum() <<
" ";
240 o << std::setw(10) << std::setprecision(4) << p.
vertex();
258 m =
myInfo->mass().value();
272 double w =
myInfo->totalWidth().value();
273 if ( w != 0. &&
myId != 1000022 ) {
274 ct = 6.582119e-25 / w / 10.;
308 double mypp, tmpEt=-1.;
312 tmpEt = E() *
pt() / mypp;
void setCharge(float q)
set the MEASURED charge
const ParticleTable * tab
void boost(double bx, double by, double bz)
void rotateZ(double rphi)
std::ostream & operator<<(std::ostream &o, const RawParticle &p)
XYZTLorentzVector myVertex
the four vector of the vertex
int status() const
get the particle status
void rotateY(double rphi)
int myId
the particle id number HEP-PID
static PFTauRenderPlugin instance
double PDGmass() const
get the THEORETICAL mass
double PDGcTau() const
get the THEORETICAL lifetime
double myMass
the RECONSTRUCTED mass
static ParticleTable *const instance()
int pid() const
get the HEP particle ID number
void setT(const double t)
set the time of creation
double mass() const
get the MEASURED mass
ROOT::Math::RotationZ RotationZ
void setMass(float m)
set the RECONSTRUCTED mass
int myStatus
the status code according to PYTHIA
double PDGcharge() const
get the THEORETICAL charge
ROOT::Math::RotationX RotationX
const XYZTLorentzVector & momentum() const
the momentum fourvector
double t() const
vertex time
math::XYZVector XYZVector
double myCharge
the MEASURED charge
T mag2() const
The vector magnitude squared. Equivalent to vec.dot(vec)
double Y() const
y of vertex
double Z() const
z of vertex
ROOT::Math::RotationY RotationY
Abs< T >::type abs(const T &t)
const HepPDT::ParticleDataTable * theTable() const
Get the pointer to the particle data table.
void rotate(double rphi, const XYZVector &raxis)
double charge() const
get the MEASURED charge
int myUsed
status of the locking
const XYZTLorentzVector & vertex() const
the vertex fourvector
void setStatus(int istat)
void rotateX(double rphi)
double r() const
vertex radius
double X() const
x of vertex
std::string PDGname() const
get the PDG name
ROOT::Math::AxisAngle Rotation
double T() const
vertex time
const ParticleData * myInfo
The pointer to the PDG info.
RawParticle & operator=(const RawParticle &rhs)
double et() const
get the transverse energy
math::XYZTLorentzVector XYZTLorentzVector
T angle(T x1, T y1, T z1, T x2, T y2, T z2)