fix in Gain
[u/mrichter/AliRoot.git] / FMD / AliFMDHit.h
index 8cb59a6..e885088 100644 (file)
@@ -5,78 +5,18 @@
  *
  * See cxx source for full Copyright notice                               
  */
-////////////////////////////////////////////////
+//___________________________________________________________________
 //
-//  Manager and hits classes for set:FMD     
+// AliFMDhit is the hit class for the FMD. Hits are the information
+// that comes from a Monte Carlo at each step as a particle mass
+// through sensitive detector elements as particles are transported
+// through a detector.
 //
-////////////////////////////////////////////////
 #ifndef ALIHIT_H
-# include "AliHit.h"
+# include <AliHit.h>
 #endif
-
-///////////////////////////////////////////////////////////////////////
-// AliFMDhit is the hit class for the FMD. Hits are the information
-// that comes from a Monte Carlo at each step as a particle mass through
-// sensitive detector elements as particles are transported through a
-// detector.
-//
-// Data members:
-//
-// Int_t fTrack
-//     See AliHit for a full description. The track number of the track
-// that made this hit.
-//
-// Float_t fX
-//     See AliHit for a full description. The global x position of the
-// hit (in the standard units of the Monte Carlo).
-//
-// Float_t fY
-//     See AliHit for a full description. The global y position of the
-// hit (in the standard units of the Monte Carlo).
-//
-// Float_t fZ
-//     See AliHit for a full description. The global z position of the
-// hit (in the standard units of the Monte Carlo).
-//
-// Int_t fStatus
-//     The track status flag. This flag indicates the track status
-// at the time of creating this hit. It is made up of the following 8
-// status bits from highest order to lowest order bits
-// 0           :  IsTrackAlive():    IsTrackStop():IsTrackDisappeared():
-// IsTrackOut():IsTrackExiting():IsTrackEntering():IsTrackInside()     .
-// See AliMC for a description of these functions. If the function is
-// true then the bit is set to one, otherwise it is zero.
-
-// Int_t fVolume
-//     The number of the FMD detector that contains this hit. 
-
-// Float_t fEdep
-//     The energy lost by the particle during the step ending in this
-// hit. The units are those determined by the Monte Carlo.
-//
-// Float_t fPx
-//     The x momentum, in global coordinates, of the particle that
-// "created" the hit at the time and position of the hit. The units
-// are those determined by the Monte Carlo.
-//
-// Float_t fPy
-//     The y momentum, in global coordinates, of the particle that
-// "created" the hit at the time and position of the hit. The units
-// are those determined by the Monte Carlo.
-//
-// Float_t fPz
-//     The z momentum, in global coordinates, of the particle that
-// "created" the hit at the time and position of the hit. The units
-// are those determined by the Monte Carlo.
-//
-///
-// Float_t fTime
-//     The time of flight associated with the particle ending in this
-// hit. The time is typically measured from the point of creation of the
-// original particle (if this particle is a daughter).  The units
-// are those determined by the Monte Carlo. 
 
+//___________________________________________________________________
 class AliFMDHit : public AliHit 
 {
 public:
@@ -95,9 +35,11 @@ public:
            Float_t  pz=0,
            Float_t  edep=0,
            Int_t    pdg=0,
-           Float_t  t=0);
+           Float_t  t=0, 
+           Float_t  l=0, 
+           Bool_t   stop=kFALSE);
   virtual ~AliFMDHit() {}
-
+  
   UShort_t Detector()  const { return fDetector; }
   Char_t   Ring()      const { return fRing;     }
   UShort_t Sector()    const { return fSector;   }
@@ -106,12 +48,20 @@ public:
   Float_t  Px()         const { return fPx;       }
   Float_t  Py()         const { return fPy;       }
   Float_t  Pz()         const { return fPz;       } 
+  Float_t  P()          const;
+  Float_t  M()          const;
+  Float_t  Q()          const;
   Int_t    Pdg()        const { return fPdg;      }
   Float_t  Time()       const { return fTime;     }
-  void     Print(Option_t* opt="") const;
+  Float_t  Length()     const { return fLength;   }
+  Bool_t   IsStop()     const { return fStop;     }
+
+  void        Print(Option_t* opt="") const;
+  const char* GetName()               const;
+  const char* GetTitle()              const;
 
   void     SetEdep(Float_t edep) { fEdep = edep; }
-private:
+protected:
   UShort_t fDetector;  // (Sub) Detector # (1,2, or 3)
   Char_t   fRing;      // Ring ID ('I' or 'O')
   UShort_t fSector;    // Sector # (phi division)
@@ -122,8 +72,10 @@ private:
   Int_t    fPdg;       // Particles PDG code 
   Float_t  fEdep;      // Energy deposition
   Float_t  fTime;      // Particle's time of flight
-
-  ClassDef(AliFMDHit,1)  //Hits for detector FMD
+  Float_t  fLength;    // Track length through material. 
+  Bool_t   fStop;      // Whether track was stopped. 
+  
+  ClassDef(AliFMDHit,2)  //Hits for detector FMD
 };
 #endif
 //____________________________________________________________________