-AliITShit::AliITShit(Int_t shunt, Int_t track, Int_t *vol, Float_t *hits):
- AliHit(shunt, track){
-////////////////////////////////////////////////////////////////////////
-// Create ITS hit
-// The creator of the AliITShit class. The variables shunt and
-// track are passed to the creator of the AliHit class. See the AliHit
-// class for a full description. the integer array *vol contains, in order,
-// fLayer = vol[0], fDet = vol[1], fLadder = vol[2], fStatus = vol[3].
-// The array *hits contains, in order, fX = hits[0], fY = hits[1],
-// fZ = hits[2], fPx = hits[3], fPy = hits[4], fPz = hits[5],
-// fDestep = hits[6], and fTof = hits[7]. In the units of the Monte Carlo
-////////////////////////////////////////////////////////////////////////
- fLayer = vol[0]; // Layer number
- fLadder = vol[2]; // Ladder number
- fDet = vol[1]; // Detector number
- fStatus = vol[3]; // Track status flags
- fX = hits[0]; // Track X position
- fY = hits[1]; // Track Y position
- fZ = hits[2]; // Track Z position
- fPx = hits[3]; // Track X Momentum
- fPy = hits[4]; // Track Y Momentum
- fPz = hits[5]; // Track Z Momentum
- fDestep = hits[6]; // Track dE/dx for this step
- fTof = hits[7]; // Track Time of Flight for this step
+AliITShit::AliITShit():AliHit(),
+fStatus(0), // Track Status
+fModule(0), // Module number
+fPx(0.0), // PX of particle at the point of the hit
+fPy(0.0), // PY of particle at the point of the hit
+fPz(0.0), // PZ of particle at the point of the hit
+fDestep(0.0), // Energy deposited in the current step
+fTof(0.0), // Time of flight at the point of the hit
+fStatus0(0),// Track Status of Starting point
+fx0(0.0), // Starting point of this step
+fy0(0.0), // Starting point of this step
+fz0(0.0), // Starting point of this step
+ft0(0.0) // Starting point of this step
+{
+ // Default Constructor
+ // Zero data member just to be safe.
+ // Intputs:
+ // none.
+ // Outputs:
+ // none.
+ // Return:
+ // A default created AliITShit class.
+
+}
+//----------------------------------------------------------------------
+AliITShit::AliITShit(Int_t shunt,Int_t track,Int_t *vol,Float_t edep,
+ Float_t tof,TLorentzVector &x,TLorentzVector &x0,
+ TLorentzVector &p) :
+AliHit(shunt, track), // AliHit
+fStatus(vol[3]), // Track Status
+fModule(vol[0]), // Module number
+fPx(p.Px()), // PX of particle at the point of the hit
+fPy(p.Py()), // PY of particle at the point of the hit
+fPz(p.Pz()), // PZ of particle at the point of the hit
+fDestep(edep), // Energy deposited in the current step
+fTof(tof), // Time of flight at the point of the hit
+fStatus0(vol[4]),// Track Status of Starting point
+fx0(x0.X()), // Starting point of this step
+fy0(x0.Y()), // Starting point of this step
+fz0(x0.Z()), // Starting point of this step
+ft0(x0.T()) // Starting point of this step
+{
+ // Create ITS hit
+ // The creator of the AliITShit class. The variables shunt and
+ // track are passed to the creator of the AliHit class. See the AliHit
+ // class for a full description. In the units of the Monte Carlo
+ // Inputs:
+ // Int_t shunt See AliHit
+ // Int_t track Track number, see AliHit
+ // Int_t *vol Array of integer hit data,
+ // vol[0] module
+ // vol[1] not used
+ // vol[2] not used
+ // vol[3] Set of status bits
+ // vol[4] Set of status bits at start
+ // Float_t edep The energy deposited GeV during the transport
+ // of this step
+ // Float_t tof The time of flight of this particle at this step
+ // TLorenzVector &x The Global position of this step [cm]
+ // TLorenzVector &x0 The Global position of where this step
+ // started from [cm]
+ // TLorenzVector &p The Global momentum of the particle at this
+ // step [GeV/c]
+ // Outputs:
+ // none.
+ // Return:
+ // A default created AliITShit class.
+
+ SetPosition(x);