10 SimTrack(), mom_(0), id_(-1), endv_(-1),
11 layer1(0), layer2(0),
ecal(0),
hcal(0), vfcal(0),
12 prop(
false), closestDaughterId_(-1), info_(0),
13 properDecayTime(1E99) {;}
16 int iv,
int ig,
int id,
21 mom_(mom), id_(id), endv_(-1),
22 layer1(0), layer2(0),
ecal(0),
hcal(0), vfcal(0), prop(
false),
23 closestDaughterId_(-1), momentum_(p->momentum()),
95 o.setf(std::ios::fixed, std::ios::floatfield);
96 o.setf(std::ios::right, std::ios::adjustfield);
98 o << std::setw(4) << t.
id() <<
" "
102 for(
unsigned int k=0;
k<11-name.length() &&
k<12;
k++) o <<
" ";
104 o << std::setw(6) << std::setprecision(2) << momentum1.eta() <<
" "
105 << std::setw(6) << std::setprecision(2) << momentum1.phi() <<
" "
106 << std::setw(6) << std::setprecision(2) << momentum1.pt() <<
" "
107 << std::setw(6) << std::setprecision(2) << momentum1.e() <<
" "
108 << std::setw(4) << vertexId1 <<
" "
109 << std::setw(6) << std::setprecision(1) << vertex1.x() <<
" "
110 << std::setw(6) << std::setprecision(1) << vertex1.y() <<
" "
111 << std::setw(6) << std::setprecision(1) << vertex1.z() <<
" "
112 << std::setw(4) << t.
mother().
id() <<
" ";
118 o << std::setw(4) << vertexId2 <<
" "
119 << std::setw(6) << std::setprecision(2) << vertex2.eta() <<
" "
120 << std::setw(6) << std::setprecision(2) << vertex2.phi() <<
" "
121 << std::setw(5) << std::setprecision(1) << vertex2.pt() <<
" "
122 << std::setw(6) << std::setprecision(1) << vertex2.z() <<
" ";
132 o << std::setw(4) << -t.
onLayer1() <<
" "
133 << std::setw(6) << std::setprecision(2) << vertex2.eta() <<
" "
134 << std::setw(6) << std::setprecision(2) << vertex2.phi() <<
" "
135 << std::setw(5) << std::setprecision(1) << vertex2.pt() <<
" "
136 << std::setw(6) << std::setprecision(1) << vertex2.z() <<
" "
137 << std::setw(6) << std::setprecision(2) << t.
layer1Entrance().pt() <<
" "
138 << std::setw(6) << std::setprecision(2) << t.
layer1Entrance().e() <<
" ";
140 }
else if ( t.
onEcal() ) {
144 o << std::setw(4) << -t.
onEcal() <<
" "
145 << std::setw(6) << std::setprecision(2) << vertex2.eta() <<
" "
146 << std::setw(6) << std::setprecision(2) << vertex2.phi() <<
" "
147 << std::setw(5) << std::setprecision(1) << vertex2.pt() <<
" "
148 << std::setw(6) << std::setprecision(1) << vertex2.z() <<
" "
149 << std::setw(6) << std::setprecision(2) << t.
ecalEntrance().pt() <<
" "
150 << std::setw(6) << std::setprecision(2) << t.
ecalEntrance().e() <<
" ";
const double Z[kNumberCalorimeter]
int id() const
the index in FBaseSimEvent
bool noEndVertex() const
no end vertex
const HepPDT::ParticleData * particleInfo() const
particle info...
const FSimVertex & endVertex() const
end vertex
RawParticle Layer1_Entrance
const HepPDT::ParticleData * info_
RawParticle VFCAL_Entrance
const XYZTLorentzVector & momentum() const
Temporary (until move of SimTrack to Mathcore) - No! Actually very useful.
virtual ~FSimTrack()
Destructor.
const HepPDT::ParticleDataTable * theTable() const
Get the pointer to the particle data table.
const RawParticle & layer1Entrance() const
The particle at Preshower Layer 1.
const FSimTrack & daughter(int i) const
Ith daughter.
void setEcal(const RawParticle &pp, int success)
Set the ecal variables.
void setPropagate()
The particle has been propgated through the tracker.
int nDaughters() const
Number of daughters.
void setLayer2(const RawParticle &pp, int success)
Set the preshower layer2 variables.
std::ostream & operator<<(std::ostream &out, const ALILine &li)
bool notYetToEndVertex(const XYZTLorentzVector &pos) const
Compare the end vertex position with another position.
static int position[TOTALCHAMBERS][3]
void setLayer1(const RawParticle &pp, int success)
Set the preshower layer1 variables.
math::XYZVector XYZVector
const math::XYZTLorentzVector & position() const
Temporary (until CMSSW moves to Mathcore) - No ! Actually very useful.
int genpartIndex() const
index of the corresponding Generator particle in the Event container (-1 if no Genpart) ...
const RawParticle & ecalEntrance() const
The particle at ECAL entrance.
const FSimVertex & vertex() const
Origin vertex.
FSimTrack()
Default constructor.
const XYZTLorentzVector & vertex() const
the vertex fourvector
RawParticle HCAL_Entrance
void setTrackId(unsigned int t)
int type() const
particle type (HEP PDT convension)
int id() const
the index in FBaseSimEvent and other vectors
void setVFcal(const RawParticle &pp, int success)
Set the hcal variables.
RawParticle Layer2_Entrance
void setHcal(const RawParticle &pp, int success)
Set the hcal variables.
RawParticle ECAL_Entrance
const FSimTrack & mother() const
mother
math::XYZTLorentzVector XYZTLorentzVector