#include "AliRun.h"
#include "AliHit.h"
#include "AliPoints.h"
-#include "AliMC.h"
#include <TClass.h>
#include <TNode.h>
#include <TRandom.h>
//
fNhits = 0;
fNdigits = 0;
- fHistograms = 0;
- fNodes = 0;
fPoints = 0;
fHits = 0;
fDigits = 0;
fTimeGate = 200.e-9;
- fActive = kTRUE;
fBufferSize = 16000;
}
//_____________________________________________________________________________
-AliDetector::AliDetector(const char* name,const char *title):TNamed(name,title)
+AliDetector::AliDetector(const char* name,const char *title):AliModule(name,title)
{
//
// Normal constructor invoked by all Detectors.
fNdigits = 0;
fPoints = 0;
fBufferSize = 16000;
- //
- // Initialises the histogram list
- fHistograms = new TList();
- //
- // Initialises the list of ROOT TNodes
- fNodes = new TList();
- //
- // Get the detector numeric ID
- Int_t id = gAlice->GetDetectorID(name);
- if (id < 0) {
- // Unknown detector !
- printf(" * AliRun::Ctor * ERROR Unknown detector: %s\n",name);
- return;
- }
- //
- // Add this detector to the list of detectors
- gAlice->Detectors()->AddAtAndExpand(this,id);
- //
- //
- SetMarkerColor(3);
- //
- // Allocate space for tracking media and material indexes
- fIdtmed = new TArrayI(100);
- fIdmate = new TArrayI(100);
- for(Int_t i=0;i<100;i++) (*fIdmate)[i]=(*fIdtmed)[i]=0;
- //
- // Prepare to find the tracking media range
- fLoMedium = 65536;
- fHiMedium = 0;
}
//_____________________________________________________________________________
//
fNhits = 0;
fNdigits = 0;
- fHistograms = 0;
- //
- // Delete ROOT geometry
- fNodes->Clear();
- delete fNodes;
//
// Delete space point structure
if (fPoints) fPoints->Delete();
delete fPoints;
fPoints = 0;
- //
- // Delete TArray objects
- delete fIdtmed;
- delete fIdmate;
}
//_____________________________________________________________________________
}
}
-//_____________________________________________________________________________
-void AliDetector::Disable()
-{
- //
- // Disable detector on viewer
- //
- fActive = kFALSE;
- TIter next(fNodes);
- TNode *node;
- //
- // Loop through geometry to disable all
- // nodes for this detector
- while((node = (TNode*)next())) {
- node->SetVisibility(0);
- }
-}
-
-//_____________________________________________________________________________
-Int_t AliDetector::DistancetoPrimitive(Int_t, Int_t)
-{
- //
- // Return distance from mouse pointer to object
- // Dummy routine for the moment
- //
- return 9999;
-}
-
-//_____________________________________________________________________________
-void AliDetector::Enable()
-{
- //
- // Enable detector on the viewver
- //
- fActive = kTRUE;
- TIter next(fNodes);
- TNode *node;
- //
- // Loop through geometry to enable all
- // nodes for this detector
- while((node = (TNode*)next())) {
- node->SetVisibility(1);
- }
-}
-
//_____________________________________________________________________________
void AliDetector::FinishRun()
{
}
}
-//_____________________________________________________________________________
-void AliDetector::AliMaterial(Int_t imat, const char* name, Float_t a,
- Float_t z, Float_t dens, Float_t radl,
- Float_t absl, Float_t *buf, Int_t nwbuf) const
-{
- //
- // Store the parameters for a material
- //
- // imat the material index will be stored in (*fIdmate)[imat]
- // name material name
- // a atomic mass
- // z atomic number
- // dens density
- // radl radiation length
- // absl absorbtion length
- // buf adress of an array user words
- // nwbuf number of user words
- //
- Int_t kmat;
- AliMC::GetMC()->Material(kmat, name, a, z, dens, radl, absl, buf, nwbuf);
- (*fIdmate)[imat]=kmat;
-}
-
-
-//_____________________________________________________________________________
-void AliDetector::AliMixture(Int_t imat, const char *name, Float_t *a,
- Float_t *z, Float_t dens, Int_t nlmat,
- Float_t *wmat) const
-{
- //
- // Defines mixture or compound imat as composed by
- // nlmat materials defined by arrays a, z and wmat
- //
- // If nlmat > 0 wmat contains the proportion by
- // weights of each basic material in the mixture
- //
- // If nlmat < 0 wmat contains the number of atoms
- // of eack kind in the molecule of the compound
- // In this case, wmat is changed on output to the relative weigths.
- //
- // imat the material index will be stored in (*fIdmate)[imat]
- // name material name
- // a array of atomic masses
- // z array of atomic numbers
- // dens density
- // nlmat number of components
- // wmat array of concentrations
- //
- Int_t kmat;
- AliMC::GetMC()->Mixture(kmat, name, a, z, dens, nlmat, wmat);
- (*fIdmate)[imat]=kmat;
-}
-
-//_____________________________________________________________________________
-void AliDetector::AliMedium(Int_t numed, const char *name, Int_t nmat,
- Int_t isvol, Int_t ifield, Float_t fieldm,
- Float_t tmaxfd, Float_t stemax, Float_t deemax,
- Float_t epsil, Float_t stmin, Float_t *ubuf,
- Int_t nbuf) const
-{
- //
- // Store the parameters of a tracking medium
- //
- // numed the medium number is stored into (*fIdtmed)[numed-1]
- // name medium name
- // nmat the material number is stored into (*fIdmate)[nmat]
- // isvol sensitive volume if isvol!=0
- // ifield magnetic field flag (see below)
- // fieldm maximum magnetic field
- // tmaxfd maximum deflection angle due to magnetic field
- // stemax maximum step allowed
- // deemax maximum fractional energy loss in one step
- // epsil tracking precision in cm
- // stmin minimum step due to continuous processes
- //
- // ifield = 0 no magnetic field
- // = -1 user decision in guswim
- // = 1 tracking performed with Runge Kutta
- // = 2 tracking performed with helix
- // = 3 constant magnetic field along z
- //
- Int_t kmed;
- Int_t *idtmed = gAlice->Idtmed();
- AliMC::GetMC()->Medium(kmed,name, (*fIdmate)[nmat], isvol, ifield, fieldm,
- tmaxfd, stemax, deemax, epsil, stmin, ubuf, nbuf);
- idtmed[numed-1]=kmed;
-}
-
-//_____________________________________________________________________________
-void AliDetector::AliMatrix(Int_t &nmat, Float_t theta1, Float_t phi1,
- Float_t theta2, Float_t phi2, Float_t theta3,
- Float_t phi3) const
-{
- //
- // Define a rotation matrix. Angles are in degrees.
- //
- // nmat on output contains the number assigned to the rotation matrix
- // theta1 polar angle for axis I
- // phi1 azimuthal angle for axis I
- // theta2 polar angle for axis II
- // phi2 azimuthal angle for axis II
- // theta3 polar angle for axis III
- // phi3 azimuthal angle for axis III
- //
- AliMC::GetMC()->Matrix(nmat, theta1, phi1, theta2, phi2, theta3, phi3);
-}
-
//_____________________________________________________________________________
void AliDetector::ResetDigits()
{
}
}
-
-//_____________________________________________________________________________
-void AliDetector::StepManager()
-{
- //
- // Procedure called at every step inside the detector
- //
- printf("* AliDetector::StepManager * Generic Step Manager called for Detector: %s\n",fName.Data());
-}
-
-//_____________________________________________________________________________
-void AliDetector::SetEuclidFile(char* material, char* geometry)
-{
- //
- // Sets the name of the Euclid file
- //
- fEuclidMaterial=material;
- if(geometry) {
- fEuclidGeometry=geometry;
- } else {
- char* name = new char[strlen(material)];
- strcpy(name,material);
- strcpy(&name[strlen(name)-4],".euc");
- fEuclidGeometry=name;
- delete [] name;
- }
-}
-
//_____________________________________________________________________________
void AliDetector::SetTreeAddress()
{
TNamed::Streamer(R__b);
TAttLine::Streamer(R__b);
TAttMarker::Streamer(R__b);
- fEuclidMaterial.Streamer(R__b);
- fEuclidGeometry.Streamer(R__b);
+ AliModule::Streamer(R__b);
R__b >> fTimeGate;
- R__b >> fActive;
R__b >> fIshunt;
//R__b >> fNhits;
- R__b >> fHistograms;
//
// Stream the pointers but not the TClonesArrays
- R__b >> fNodes; // diff
-
R__b >> fHits; // diff
R__b >> fDigits; // diff
TNamed::Streamer(R__b);
TAttLine::Streamer(R__b);
TAttMarker::Streamer(R__b);
- fEuclidMaterial.Streamer(R__b);
- fEuclidGeometry.Streamer(R__b);
+ AliModule::Streamer(R__b);
R__b << fTimeGate;
- R__b << fActive;
R__b << fIshunt;
//R__b << fNhits;
- R__b << fHistograms;
//
// Stream the pointers but not the TClonesArrays
- R__b << fNodes; // diff
-
R__b << fHits; // diff
R__b << fDigits; // diff
}
#ifndef AliDetector_H
#define AliDetector_H
-#include <TNamed.h>
-#include <TClonesArray.h>
-#include <TBrowser.h>
-#include <TAttLine.h>
-#include <TAttMarker.h>
-#include <TArrayI.h>
-#include <Gtypes.h>
+#include <AliModule.h>
#include <AliHit.h>
-class AliDetector : public TNamed , public TAttLine, public TAttMarker {
+class AliDetector : public AliModule {
// Data members
protected:
- TString fEuclidMaterial; //Name of the Euclid file for materials (if any)
- TString fEuclidGeometry; //Name of the Euclid file for geometry (if any)
-
- TArrayI *fIdtmed; //List of tracking medium numbers
- TArrayI *fIdmate; //List of material numbers
- Int_t fLoMedium; //Minimum tracking medium ID for this detector
- Int_t fHiMedium; //Maximum tracking medium ID for this detector
-
Float_t fTimeGate; //Time gate in seconds
- Bool_t fActive; //Detector activity flag
Int_t fIshunt; //1 if the hit is attached to the primary
Int_t fNhits; //Number of hits
Int_t fNdigits; //Number of digits
Int_t fBufferSize; //buffer size for Tree detector branches
- TList *fHistograms; //List of histograms
- TList *fNodes; //List of geometry nodes
TClonesArray *fHits; //List of hits for one track only
TClonesArray *fDigits; //List of digits for this detector
TObjArray *fPoints; //Array of points for each track (all tracks in memory)
// Inline functions
inline virtual int GetNdigits() {return fNdigits;}
inline virtual int GetNhits() {return fNhits;}
- inline TList *Histograms() {return fHistograms;}
- inline TList *Nodes() {return fNodes;}
inline TClonesArray *Digits() {return fDigits;}
inline TClonesArray *Hits() {return fHits;}
inline TObjArray *Points() {return fPoints;}
inline Int_t GetIshunt() {return fIshunt;}
inline void SetIshunt(Int_t ishunt) {fIshunt=ishunt;}
- inline Bool_t IsActive() {return fActive;}
- inline Bool_t IsFolder() {return kTRUE;}
- inline Int_t& LoMedium() {return fLoMedium;}
- inline Int_t& HiMedium() {return fHiMedium;}
-
- // Detector composition
- virtual void AliMaterial(Int_t, const char*, Float_t, Float_t, Float_t, Float_t,
- Float_t, Float_t* buf=0, Int_t nwbuf=0) const;
- virtual void AliMixture(Int_t, const char*, Float_t*, Float_t*, Float_t, Int_t, Float_t*) const;
- virtual void AliMedium(Int_t, const char*, Int_t, Int_t, Int_t, Float_t, Float_t,
- Float_t, Float_t, Float_t, Float_t, Float_t* ubuf=0, Int_t nbuf=0) const;
- virtual void AliMatrix(Int_t&, Float_t, Float_t, Float_t, Float_t, Float_t, Float_t) const;
- // Virtual methods
- virtual void BuildGeometry()=0;
- virtual Int_t IsVersion() const =0;
-
// Other methods
- virtual void AddDigit(Int_t*, Int_t*){}
- virtual void AddHit(Int_t, Int_t*, Float_t *) {}
virtual void Browse(TBrowser *b);
- virtual void CreateGeometry() {}
- virtual void CreateMaterials() {}
- virtual void Disable();
- virtual Int_t DistancetoPrimitive(Int_t px, Int_t py);
- virtual void Enable();
- virtual inline void PreTrack(){}
- virtual inline void PostTrack(){}
- virtual inline void FinishEvent() {}
virtual void FinishRun();
- virtual void Hits2Digits() {}
- virtual void Init() {}
virtual void LoadPoints(Int_t track);
virtual void MakeBranch(Option_t *opt=" ");
- virtual void Paint(Option_t *) {}
virtual void ResetDigits();
virtual void ResetHits();
virtual void ResetPoints();
virtual void SetTreeAddress();
virtual void SetTimeGate(Float_t gate) {fTimeGate=gate;}
virtual Float_t GetTimeGate() {return fTimeGate;}
- virtual void StepManager();
- virtual void DrawDetector() {}
+ virtual void StepManager() {}
+ virtual void DrawModule() {}
virtual AliHit* FirstHit(Int_t);
virtual AliHit* NextHit();
virtual void SetBufferSize(Int_t bufsize=8000) {fBufferSize = bufsize;}
- virtual void SetEuclidFile(char*,char*geometry=0);
ClassDef(AliDetector,1) //Base class for ALICE detectors
};
//----------------------------------------------------------------------------
void AliDisplay::ShowTrack(Int_t idx) {
- AliDetector *TPC=(AliDetector*)gAlice->GetDetector("TPC");
+ AliDetector *TPC=(AliDetector*)gAlice->GetModule("TPC");
TObjArray *points=TPC->Points();
int ntracks=points->GetEntriesFast();
for (int track=0;track<ntracks;track++) {
//----------------------------------------------------------------------------
void AliDisplay::HideTrack(Int_t idx) {
- AliDetector *TPC=(AliDetector*)gAlice->GetDetector("TPC");
+ AliDetector *TPC=(AliDetector*)gAlice->GetModule("TPC");
TObjArray *points=TPC->Points();
int ntracks=points->GetEntriesFast();
for (int track=0;track<ntracks;track++) {
{
// Disable detector name from graphics views
- AliDetector *detector = (AliDetector*)gAlice->Detectors()->FindObject(name);
- if (!detector) return;
- detector->Disable();
+ AliModule *module = (AliModule*)gAlice->Modules()->FindObject(name);
+ if (!module) return;
+ module->Disable();
Draw();
}
if (smin < 0.02) etamin = -1000;
if (smax > 0.98) etamax = 1000;
- TIter next(gAlice->Detectors());
- AliDetector *detector;
+ TIter next(gAlice->Modules());
+ AliModule *module;
fHitsCuts = 0;
- while((detector = (AliDetector*)next())) {
- if (!detector->IsActive()) continue;
- points = detector->Points();
+ while((module = (AliModule*)next())) {
+ if (!module->IsActive()) continue;
+ points = module->Points();
if (!points) continue;
ntracks = points->GetEntriesFast();
for (track=0;track<ntracks;track++) {
{
// Enable detector name in graphics views
- AliDetector *detector = (AliDetector*)gAlice->Detectors()->FindObject(name);
- if (!detector) return;
- detector->Enable();
+ AliModule *module = (AliModule*)gAlice->Modules()->FindObject(name);
+ if (!module) return;
+ module->Enable();
Draw();
}
// Loop on all detectors
gAlice->ResetPoints();
- TIter next(gAlice->Detectors());
- AliDetector *detector;
+ TIter next(gAlice->Modules());
+ AliModule *module;
Int_t ntracks = gAlice->GetNtrack();
for (Int_t track=0; track<ntracks;track++) {
gAlice->ResetHits();
gAlice->TreeH()->GetEvent(track);
- while((detector = (AliDetector*)next())) {
- detector->LoadPoints(track);
+ while((module = (AliModule*)next())) {
+ module->LoadPoints(track);
}
next.Reset();
}
--- /dev/null
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Base class for ALICE modules. Both sensitive modules (Modules) and //
+// non-sensitive ones are described by this base class. This class //
+// supports the hit and digit trees produced by the simulation and also //
+// the objects produced by the reconstruction. //
+// //
+// This class is also responsible for building the geometry of the //
+// Modules. //
+// //
+//Begin_Html
+/*
+<img src="gif/AliModuleClass.gif">
+*/
+//End_Html
+// //
+///////////////////////////////////////////////////////////////////////////////
+#include "AliModule.h"
+#include "AliRun.h"
+#include "AliHit.h"
+#include "AliPoints.h"
+#include <TClass.h>
+#include <TNode.h>
+#include <TRandom.h>
+
+ClassImp(AliModule)
+
+//_____________________________________________________________________________
+AliModule::AliModule()
+{
+ //
+ // Default constructor for the AliModule class
+ //
+ fHistograms = 0;
+ fNodes = 0;
+}
+
+//_____________________________________________________________________________
+AliModule::AliModule(const char* name,const char *title):TNamed(name,title)
+{
+ //
+ // Normal constructor invoked by all Modules.
+ // Create the list for Module specific histograms
+ // Add this Module to the global list of Modules in Run.
+ //
+ //
+ // Initialises the histogram list
+ fHistograms = new TList();
+ //
+ // Initialises the list of ROOT TNodes
+ fNodes = new TList();
+ //
+ // Get the Module numeric ID
+ Int_t id = gAlice->GetModuleID(name);
+ if (id < 0) {
+ // Unknown Module !
+ Warning("AliRun::Ctor","ERROR Unknown Module: %s\n",name);
+ return;
+ }
+ //
+ // Add this Module to the list of Modules
+ gAlice->Modules()->AddAtAndExpand(this,id);
+ //
+ //
+ SetMarkerColor(3);
+ //
+ // Allocate space for tracking media and material indexes
+ fIdtmed = new TArrayI(100);
+ fIdmate = new TArrayI(100);
+ for(Int_t i=0;i<100;i++) (*fIdmate)[i]=(*fIdtmed)[i]=0;
+ //
+ // Prepare to find the tracking media range
+ fLoMedium = 65536;
+ fHiMedium = 0;
+}
+
+//_____________________________________________________________________________
+AliModule::~AliModule()
+{
+ //
+ // Destructor
+ //
+ fHistograms = 0;
+ //
+ // Delete ROOT geometry
+ fNodes->Clear();
+ delete fNodes;
+ //
+ // Delete TArray objects
+ delete fIdtmed;
+ delete fIdmate;
+}
+
+//_____________________________________________________________________________
+void AliModule::Disable()
+{
+ //
+ // Disable Module on viewer
+ //
+ fActive = kFALSE;
+ TIter next(fNodes);
+ TNode *node;
+ //
+ // Loop through geometry to disable all
+ // nodes for this Module
+ while((node = (TNode*)next())) {
+ node->SetVisibility(0);
+ }
+}
+
+//_____________________________________________________________________________
+Int_t AliModule::DistancetoPrimitive(Int_t, Int_t)
+{
+ //
+ // Return distance from mouse pointer to object
+ // Dummy routine for the moment
+ //
+ return 9999;
+}
+
+//_____________________________________________________________________________
+void AliModule::Enable()
+{
+ //
+ // Enable Module on the viewver
+ //
+ fActive = kTRUE;
+ TIter next(fNodes);
+ TNode *node;
+ //
+ // Loop through geometry to enable all
+ // nodes for this Module
+ while((node = (TNode*)next())) {
+ node->SetVisibility(1);
+ }
+}
+
+//_____________________________________________________________________________
+void AliModule::AliMaterial(Int_t imat, const char* name, Float_t a,
+ Float_t z, Float_t dens, Float_t radl,
+ Float_t absl, Float_t *buf, Int_t nwbuf) const
+{
+ //
+ // Store the parameters for a material
+ //
+ // imat the material index will be stored in (*fIdmate)[imat]
+ // name material name
+ // a atomic mass
+ // z atomic number
+ // dens density
+ // radl radiation length
+ // absl absorbtion length
+ // buf adress of an array user words
+ // nwbuf number of user words
+ //
+ Int_t kmat;
+ AliMC::GetMC()->Material(kmat, name, a, z, dens, radl, absl, buf, nwbuf);
+ (*fIdmate)[imat]=kmat;
+}
+
+
+//_____________________________________________________________________________
+void AliModule::AliMixture(Int_t imat, const char *name, Float_t *a,
+ Float_t *z, Float_t dens, Int_t nlmat,
+ Float_t *wmat) const
+{
+ //
+ // Defines mixture or compound imat as composed by
+ // nlmat materials defined by arrays a, z and wmat
+ //
+ // If nlmat > 0 wmat contains the proportion by
+ // weights of each basic material in the mixture
+ //
+ // If nlmat < 0 wmat contains the number of atoms
+ // of eack kind in the molecule of the compound
+ // In this case, wmat is changed on output to the relative weigths.
+ //
+ // imat the material index will be stored in (*fIdmate)[imat]
+ // name material name
+ // a array of atomic masses
+ // z array of atomic numbers
+ // dens density
+ // nlmat number of components
+ // wmat array of concentrations
+ //
+ Int_t kmat;
+ AliMC::GetMC()->Mixture(kmat, name, a, z, dens, nlmat, wmat);
+ (*fIdmate)[imat]=kmat;
+}
+
+//_____________________________________________________________________________
+void AliModule::AliMedium(Int_t numed, const char *name, Int_t nmat,
+ Int_t isvol, Int_t ifield, Float_t fieldm,
+ Float_t tmaxfd, Float_t stemax, Float_t deemax,
+ Float_t epsil, Float_t stmin, Float_t *ubuf,
+ Int_t nbuf) const
+{
+ //
+ // Store the parameters of a tracking medium
+ //
+ // numed the medium number is stored into (*fIdtmed)[numed-1]
+ // name medium name
+ // nmat the material number is stored into (*fIdmate)[nmat]
+ // isvol sensitive volume if isvol!=0
+ // ifield magnetic field flag (see below)
+ // fieldm maximum magnetic field
+ // tmaxfd maximum deflection angle due to magnetic field
+ // stemax maximum step allowed
+ // deemax maximum fractional energy loss in one step
+ // epsil tracking precision in cm
+ // stmin minimum step due to continuous processes
+ //
+ // ifield = 0 no magnetic field
+ // = -1 user decision in guswim
+ // = 1 tracking performed with Runge Kutta
+ // = 2 tracking performed with helix
+ // = 3 constant magnetic field along z
+ //
+ Int_t kmed;
+ Int_t *idtmed = gAlice->Idtmed();
+ AliMC::GetMC()->Medium(kmed,name, (*fIdmate)[nmat], isvol, ifield, fieldm,
+ tmaxfd, stemax, deemax, epsil, stmin, ubuf, nbuf);
+ idtmed[numed-1]=kmed;
+}
+
+//_____________________________________________________________________________
+void AliModule::AliMatrix(Int_t &nmat, Float_t theta1, Float_t phi1,
+ Float_t theta2, Float_t phi2, Float_t theta3,
+ Float_t phi3) const
+{
+ //
+ // Define a rotation matrix. Angles are in degrees.
+ //
+ // nmat on output contains the number assigned to the rotation matrix
+ // theta1 polar angle for axis I
+ // phi1 azimuthal angle for axis I
+ // theta2 polar angle for axis II
+ // phi2 azimuthal angle for axis II
+ // theta3 polar angle for axis III
+ // phi3 azimuthal angle for axis III
+ //
+ AliMC::GetMC()->Matrix(nmat, theta1, phi1, theta2, phi2, theta3, phi3);
+}
+
+//_____________________________________________________________________________
+void AliModule::SetEuclidFile(char* material, char* geometry)
+{
+ //
+ // Sets the name of the Euclid file
+ //
+ fEuclidMaterial=material;
+ if(geometry) {
+ fEuclidGeometry=geometry;
+ } else {
+ char* name = new char[strlen(material)];
+ strcpy(name,material);
+ strcpy(&name[strlen(name)-4],".euc");
+ fEuclidGeometry=name;
+ delete [] name;
+ }
+}
+
+//_____________________________________________________________________________
+void AliModule::Streamer(TBuffer &R__b)
+{
+ //
+ // Stream an object of class Module.
+ //
+ if (R__b.IsReading()) {
+ Version_t R__v = R__b.ReadVersion(); if (R__v) { }
+ TNamed::Streamer(R__b);
+ TAttLine::Streamer(R__b);
+ TAttMarker::Streamer(R__b);
+ fEuclidMaterial.Streamer(R__b);
+ fEuclidGeometry.Streamer(R__b);
+ R__b >> fActive;
+ R__b >> fHistograms;
+ //
+ // Stream the pointers but not the TClonesArrays
+ R__b >> fNodes; // diff
+ } else {
+ R__b.WriteVersion(AliModule::IsA());
+ TNamed::Streamer(R__b);
+ TAttLine::Streamer(R__b);
+ TAttMarker::Streamer(R__b);
+ fEuclidMaterial.Streamer(R__b);
+ fEuclidGeometry.Streamer(R__b);
+ R__b << fActive;
+ R__b << fHistograms;
+ //
+ // Stream the pointers but not the TClonesArrays
+ R__b << fNodes; // diff
+ }
+}
+
--- /dev/null
+#ifndef AliModule_H
+#define AliModule_H
+#include <TNamed.h>
+#include <TClonesArray.h>
+#include <TBrowser.h>
+#include <TAttLine.h>
+#include <TAttMarker.h>
+#include <TArrayI.h>
+//#include <Gtypes.h>
+#include <AliHit.h>
+
+class AliModule : public TNamed , public TAttLine, public TAttMarker {
+
+ // Data members
+protected:
+
+ TString fEuclidMaterial; //Name of the Euclid file for materials (if any)
+ TString fEuclidGeometry; //Name of the Euclid file for geometry (if any)
+
+ TArrayI *fIdtmed; //List of tracking medium numbers
+ TArrayI *fIdmate; //List of material numbers
+ Int_t fLoMedium; //Minimum tracking medium ID for this Module
+ Int_t fHiMedium; //Maximum tracking medium ID for this Module
+
+ Bool_t fActive; //Detector activity flag
+ TList *fHistograms; //List of histograms
+ TList *fNodes; //List of geometry nodes
+
+public:
+
+ // Creators - distructors
+ AliModule(const char* name, const char *title);
+ AliModule();
+ virtual ~AliModule();
+
+ // Inline functions
+ virtual inline int GetNdigits() {return 0;}
+ virtual inline int GetNhits() {return 0;}
+ virtual inline TList *Histograms() {return fHistograms;}
+ virtual inline TList *Nodes() {return fNodes;}
+ virtual inline TClonesArray *Digits() {return 0;}
+ virtual inline TClonesArray *Hits() {return 0;}
+ virtual inline TObjArray *Points() {return 0;}
+ virtual inline Int_t GetIshunt() {return 0;}
+ virtual inline void SetIshunt(Int_t) {}
+ virtual inline Bool_t IsActive() {return fActive;}
+ virtual inline Bool_t IsFolder() {return kTRUE;}
+ virtual inline Int_t& LoMedium() {return fLoMedium;}
+ virtual inline Int_t& HiMedium() {return fHiMedium;}
+
+ // Module composition
+ virtual void AliMaterial(Int_t, const char*, Float_t, Float_t, Float_t, Float_t,
+ Float_t, Float_t* buf=0, Int_t nwbuf=0) const;
+ virtual void AliMixture(Int_t, const char*, Float_t*, Float_t*, Float_t, Int_t, Float_t*) const;
+ virtual void AliMedium(Int_t, const char*, Int_t, Int_t, Int_t, Float_t, Float_t,
+ Float_t, Float_t, Float_t, Float_t, Float_t* ubuf=0, Int_t nbuf=0) const;
+ virtual void AliMatrix(Int_t&, Float_t, Float_t, Float_t, Float_t, Float_t, Float_t) const;
+
+ // Virtual methods
+ virtual void BuildGeometry() {};
+ virtual Int_t IsVersion() const =0;
+
+ // Other methods
+ virtual void AddDigit(Int_t*, Int_t*){}
+ virtual void AddHit(Int_t, Int_t*, Float_t *) {}
+ virtual void Browse(TBrowser *b) {}
+ virtual void CreateGeometry() {}
+ virtual void CreateMaterials() {}
+ virtual void Disable();
+ virtual Int_t DistancetoPrimitive(Int_t px, Int_t py);
+ virtual void Enable();
+ virtual inline void PreTrack(){}
+ virtual inline void PostTrack(){}
+ virtual inline void FinishEvent() {}
+ virtual void FinishRun() {}
+ virtual void Hits2Digits() {}
+ virtual void Init() {}
+ virtual void LoadPoints(Int_t ) {}
+ virtual void MakeBranch(Option_t *) {}
+ virtual void Paint(Option_t *) {}
+ virtual void ResetDigits() {}
+ virtual void ResetHits() {}
+ virtual void ResetPoints() {}
+ virtual void SetTreeAddress() {}
+ virtual void SetTimeGate(Float_t) {}
+ virtual Float_t GetTimeGate() {return 1.e10;}
+ virtual void StepManager() {}
+ virtual AliHit* FirstHit(Int_t) {return 0;}
+ virtual AliHit* NextHit() {return 0;}
+ virtual void SetBufferSize(Int_t) {}
+ virtual void SetEuclidFile(char*,char*geometry=0);
+
+ ClassDef(AliModule,1) //Base class for ALICE Modules
+};
+#endif
// The object is created in main program aliroot //
// and is pointed by the global gAlice. //
// //
-// -Supports the list of all Alice Detectors (fDetectors). //
+// -Supports the list of all Alice Detectors (fModules). //
// -Supports the list of particles (fParticles). //
// -Supports the Trees. //
// -Supports the geometry. //
#include "GParticle.h"
#include "AliRun.h"
-#include "AliDetector.h"
+#include "AliModule.h"
#include "AliDisplay.h"
#include "AliCallf77.h"
fRun = 0;
fEvent = 0;
fCurrent = -1;
- fDetectors = 0;
+ fModules = 0;
fGenerator = 0;
fTreeD = 0;
fTreeK = 0;
gROOT->GetListOfBrowsables()->Add(this,name);
//
// create the support list for the various Detectors
- fDetectors = new TObjArray(77);
+ fModules = new TObjArray(77);
//
// Create the TNode geometry for the event display
delete fTreeH;
delete fTreeE;
delete fTreeR;
- if (fDetectors) {
- fDetectors->Delete();
- delete fDetectors;
+ if (fModules) {
+ fModules->Delete();
+ delete fModules;
}
if (fParticles) {
fParticles->Delete();
//
// Add a hit to detector id
//
- TObjArray &dets = *fDetectors;
- if(dets[id]) ((AliDetector*) dets[id])->AddHit(track,vol,hits);
+ TObjArray &dets = *fModules;
+ if(dets[id]) ((AliModule*) dets[id])->AddHit(track,vol,hits);
}
//_____________________________________________________________________________
//
// Add digit to detector id
//
- TObjArray &dets = *fDetectors;
- if(dets[id]) ((AliDetector*) dets[id])->AddDigit(tracks,digits);
+ TObjArray &dets = *fModules;
+ if(dets[id]) ((AliModule*) dets[id])->AddDigit(tracks,digits);
}
//_____________________________________________________________________________
if (fTreeE) b->Add(fTreeE,fTreeE->GetName());
if (fTreeR) b->Add(fTreeR,fTreeR->GetName());
- TIter next(fDetectors);
- AliDetector *detector;
- while((detector = (AliDetector*)next())) {
+ TIter next(fModules);
+ AliModule *detector;
+ while((detector = (AliModule*)next())) {
b->Add(detector,detector->GetName());
}
}
//
// Clean Detectors at the end of event
//
- TIter next(fDetectors);
- AliDetector *detector;
- while((detector = (AliDetector*)next())) {
+ TIter next(fModules);
+ AliModule *detector;
+ while((detector = (AliModule*)next())) {
detector->FinishEvent();
}
}
//
// Clean detector information
- TIter next(fDetectors);
- AliDetector *detector;
- while((detector = (AliDetector*)next())) {
+ TIter next(fModules);
+ AliModule *detector;
+ while((detector = (AliModule*)next())) {
detector->FinishRun();
}
}
//_____________________________________________________________________________
-AliDetector *AliRun::GetDetector(const char *name)
+AliModule *AliRun::GetModule(const char *name)
{
//
// Return pointer to detector from name
//
- return (AliDetector*)fDetectors->FindObject(name);
+ return (AliModule*)fModules->FindObject(name);
}
//_____________________________________________________________________________
-Int_t AliRun::GetDetectorID(const char *name)
+Int_t AliRun::GetModuleID(const char *name)
{
//
// Return galice internal detector identifier from name
}
// Set Trees branch addresses
- TIter next(fDetectors);
- AliDetector *detector;
- while((detector = (AliDetector*)next())) {
+ TIter next(fModules);
+ AliModule *detector;
+ while((detector = (AliModule*)next())) {
detector->SetTreeAddress();
}
TNode *alice=(TNode*)tnodes->At(0);
TList *gnodes=alice->GetListOfNodes();
- TIter next(fDetectors);
- AliDetector *detector;
- while((detector = (AliDetector*)next())) {
+ TIter next(fModules);
+ AliModule *detector;
+ while((detector = (AliModule*)next())) {
detector->SetTreeAddress();
TList *dnodes=detector->Nodes();
Int_t j;
//
//=================Create Materials, geometry, histograms, etc
- TIter next(fDetectors);
- AliDetector *detector;
- while((detector = (AliDetector*)next())) {
+ TIter next(fModules);
+ AliModule *detector;
+ while((detector = (AliModule*)next())) {
detector->SetTreeAddress();
objlast = gDirectory->GetList()->Last();
//
Int_t kz, ibeg, nz, idt, lz, i, k, ind;
TObjArray &dets = *gAlice->Detectors();
- AliDetector *det;
+ AliModule *det;
//
// For all detectors
for (kz=0;kz<fNdets;kz++) {
// If detector is defined
- if((det=(AliDetector*) dets[kz])) {
+ if((det=(AliModule*) dets[kz])) {
ibeg=100*kz-1;
for(nz=ibeg==-1?1:0;nz<100;nz++) {
// Find max and min material number
for(i=0;i<(fNdets-1)/6+1;i++) {
for(k=0;k< (6<fNdets-i*6?6:fNdets-i*6);k++) {
ind=i*6+k;
- det=(AliDetector*)dets[ind];
+ det=(AliModule*)dets[ind];
if(det)
printf(" %6s: %3d -> %3d;",det->GetName(),det->LoMedium(),
det->HiMedium());
// Create a branch for hits/digits for each detector
// Each branch is a TClonesArray. Each data member of the Hits classes
// will be in turn a subbranch of the detector master branch
- TIter next(fDetectors);
- AliDetector *detector;
- while((detector = (AliDetector*)next())) {
+ TIter next(fModules);
+ AliModule *detector;
+ while((detector = (AliModule*)next())) {
if (H || D || R) detector->MakeBranch(option);
}
// Create a branch for particles
}
// Now loop on all detectors and reset the hits
- TIter next(fDetectors);
- AliDetector *detector;
- while((detector = (AliDetector*)next())) {
+ TIter next(fModules);
+ AliModule *detector;
+ while((detector = (AliModule*)next())) {
if (!detector->Hits()) continue;
TClonesArray &vHits=*(detector->Hits());
if(vHits.GetEntries() != detector->GetNhits())
//
// Reset all Detectors digits
//
- TIter next(fDetectors);
- AliDetector *detector;
- while((detector = (AliDetector*)next())) {
+ TIter next(fModules);
+ AliModule *detector;
+ while((detector = (AliModule*)next())) {
detector->ResetDigits();
}
}
//
// Reset all Detectors hits
//
- TIter next(fDetectors);
- AliDetector *detector;
- while((detector = (AliDetector*)next())) {
+ TIter next(fModules);
+ AliModule *detector;
+ while((detector = (AliModule*)next())) {
detector->ResetHits();
}
}
//
// Reset all Detectors points
//
- TIter next(fDetectors);
- AliDetector *detector;
- while((detector = (AliDetector*)next())) {
+ TIter next(fModules);
+ AliModule *detector;
+ while((detector = (AliModule*)next())) {
detector->ResetPoints();
}
}
sEventEnergy[pMC->CurrentVol(0,copy)]+=pMC->Edep();
//Call the appropriate stepping routine;
- AliDetector *det = (AliDetector*)fDetectors->At(id);
+ AliModule *det = (AliModule*)fModules->At(id);
if(det) det->StepManager();
}
Float_t xo, yo, zo;
Int_t idrot[5000],istop[7000];
FILE *lun;
- AliDetector *det;
+ AliModule *det;
//
- TObjArray &dets = *fDetectors;
+ TObjArray &dets = *fModules;
if(!dets[id_det]) {
printf(" *** GREUTMED *** Detector %d not defined\n",id_det);
return;
} else {
- det = (AliDetector*) dets[id_det];
+ det = (AliModule*) dets[id_det];
}
//
// *** The input filnam name will be with extension '.euc'
Int_t imate;
Int_t nwbuf, isvol, ifield, nmat;
Float_t a, z, dens, radl, absl, fieldm, tmaxfd, stemax, deemax, epsil, stmin;
- AliDetector* det;
+ AliModule* det;
//
- TObjArray &dets = *fDetectors;
+ TObjArray &dets = *fModules;
if(!dets[id_det]) {
printf(" *** GREUTMED *** Detector %d not defined\n",id_det);
return;
} else {
- det = (AliDetector*) dets[id_det];
+ det = (AliModule*) dets[id_det];
}
end=strlen(filnam);
for(i=0;i<end;i++) if(filnam[i]=='.') {
R__b >> fHgwmk;
R__b >> fDebug;
fHeader.Streamer(R__b);
- R__b >> fDetectors;
+ R__b >> fModules;
R__b >> fParticles;
R__b >> fField;
// R__b >> fMC;
R__b << fHgwmk;
R__b << fDebug;
fHeader.Streamer(R__b);
- R__b << fDetectors;
+ R__b << fModules;
R__b << fParticles;
R__b << fField;
// R__b << fMC;
#include <TStopwatch.h>
#include <TTree.h>
#include <TGeometry.h>
-#include "AliDetector.h"
+#include "AliModule.h"
#include "AliHeader.h"
#include "AliMagF.h"
#include "AliMC.h"
TTree *fTreeH; //Pointer to Tree for Hits
TTree *fTreeE; //Pointer to Tree for Header
TTree *fTreeR; //Pointer to Tree for Reconstructed Objects
- TObjArray *fDetectors; //List of Detectors
+ TObjArray *fModules; //List of Detectors
TClonesArray *fParticles; //Pointer to list of particles
TGeometry *fGeometry; //Pointer to geometry
AliDisplay *fDisplay; //Pointer to event display
virtual void BuildSimpleGeometry();
virtual void CleanDetectors();
virtual void CleanParents();
- TObjArray *Detectors() const {return fDetectors;}
+ TObjArray *Detectors() const {return fModules;}
+ TObjArray *Modules() const {return fModules;}
Int_t CurrentTrack() const {return fCurrent;}
AliDisplay *Display() { return fDisplay;}
virtual Int_t DistancetoPrimitive(Int_t px, Int_t py);
virtual void FlagTrack(Int_t track);
Int_t GetEvNumber() const {return fEvent;}
Int_t GetRunNumber() const {return fRun;}
- void SetRunNumber(Int_t run) {fRun=run;}
+ void SetRunNumber(Int_t run) {fRun=run;}
Int_t GetDebug() const {return fDebug;}
- AliDetector *GetDetector(const char *name);
- Int_t GetDetectorID(const char *name);
+ AliModule *GetModule(const char *name);
+ Int_t GetModuleID(const char *name);
virtual Int_t GetEvent(Int_t event);
TGeometry *GetGeometry();
AliHeader *GetHeader() {return &fHeader;}
# DO NOT DELETE THIS LINE -- make depend depends on it.
-AliDetector.o: AliDetector.h /soft/root/include/TNamed.h
+AliDetector.o: AliDetector.h ./AliModule.h /soft/root/include/TNamed.h
+AliDetector.o: /soft/root/include/TObject.h /soft/root/include/Rtypes.h
+AliDetector.o: /soft/root/include/RConfig.h /usr/include/stdio.h
+AliDetector.o: /usr/local/include/g++/libio.h /usr/include/_G_config.h
+AliDetector.o: /usr/include/gnu/types.h /usr/include/features.h
+AliDetector.o: /usr/include/sys/cdefs.h /usr/include/gnu/stubs.h
+AliDetector.o: /usr/local/lib/gcc-lib/i686-pc-linux-gnu/egcs-2.91.60/include/stddef.h
+AliDetector.o: /usr/local/lib/gcc-lib/i686-pc-linux-gnu/egcs-2.91.60/include/stdarg.h
+AliDetector.o: /usr/include/stdio_lim.h /soft/root/include/DllImport.h
+AliDetector.o: /soft/root/include/Varargs.h /soft/root/include/TStorage.h
+AliDetector.o: /soft/root/include/TBuffer.h /usr/include/string.h
+AliDetector.o: /soft/root/include/Bytes.h /soft/root/include/TList.h
+AliDetector.o: /soft/root/include/TSeqCollection.h
+AliDetector.o: /soft/root/include/TCollection.h
+AliDetector.o: /soft/root/include/TIterator.h /soft/root/include/TString.h
+AliDetector.o: /soft/root/include/TMath.h /soft/root/include/TRefCnt.h
AliDetector.o: /soft/root/include/TClonesArray.h
-AliDetector.o: /soft/root/include/TBrowser.h /soft/root/include/TAttLine.h
+AliDetector.o: /soft/root/include/TObjArray.h /soft/root/include/TBrowser.h
+AliDetector.o: /soft/root/include/TBrowserImp.h /soft/root/include/TAttLine.h
+AliDetector.o: /soft/root/include/Gtypes.h /soft/root/include/Htypes.h
AliDetector.o: /soft/root/include/TAttMarker.h /soft/root/include/TArrayI.h
-AliDetector.o: /soft/root/include/Gtypes.h ./AliHit.h
-AliDetector.o: /soft/root/include/TObject.h AliRun.h
-AliDetector.o: /soft/root/include/TROOT.h /soft/root/include/TList.h
-AliDetector.o: /soft/root/include/TStopwatch.h /soft/root/include/TTree.h
-AliDetector.o: /soft/root/include/TGeometry.h AliHeader.h AliMagF.h
-AliDetector.o: /soft/root/include/TVector.h AliMC.h AliGenerator.h
-AliDetector.o: /soft/root/include/TArrayF.h /soft/root/include/TGenerator.h
-AliDetector.o: AliLego.h /soft/root/include/TH2.h AliPoints.h
-AliDetector.o: /soft/root/include/TPolyMarker3D.h GParticle.h
-AliDetector.o: /soft/root/include/TMath.h /soft/root/include/TClass.h
-AliDetector.o: /soft/root/include/TNode.h /soft/root/include/TRandom.h
-AliHeader.o: AliHeader.h /soft/root/include/TObject.h /usr/include/stdio.h
-AliHeader.o: /usr/local/include/g++/libio.h /usr/include/_G_config.h
-AliHeader.o: /usr/include/gnu/types.h /usr/include/features.h
-AliHeader.o: /usr/include/sys/cdefs.h /usr/include/gnu/stubs.h
+AliDetector.o: /soft/root/include/TArray.h ./AliHit.h AliRun.h
+AliDetector.o: /soft/root/include/TROOT.h /soft/root/include/TDirectory.h
+AliDetector.o: /soft/root/include/TDatime.h /soft/root/include/TStopwatch.h
+AliDetector.o: /soft/root/include/TTree.h /soft/root/include/TAttFill.h
+AliDetector.o: /soft/root/include/TBranch.h /soft/root/include/TStringLong.h
+AliDetector.o: /soft/root/include/TCut.h /soft/root/include/TGeometry.h
+AliDetector.o: /soft/root/include/THashList.h AliHeader.h AliMagF.h
+AliDetector.o: /soft/root/include/TVector.h /soft/root/include/TError.h
+AliDetector.o: AliMC.h AliGenerator.h /soft/root/include/TArrayF.h
+AliDetector.o: /soft/root/include/TGenerator.h AliLego.h
+AliDetector.o: /soft/root/include/TH2.h /soft/root/include/TH1.h
+AliDetector.o: /soft/root/include/TAxis.h /soft/root/include/TAttAxis.h
+AliDetector.o: /usr/local/include/g++/fstream.h
+AliDetector.o: /usr/local/include/g++/iostream.h
+AliDetector.o: /usr/local/include/g++/streambuf.h /soft/root/include/TLego.h
+AliDetector.o: /soft/root/include/TF1.h /soft/root/include/TFormula.h
+AliDetector.o: /soft/root/include/TMethodCall.h /soft/root/include/TGaxis.h
+AliDetector.o: /soft/root/include/TLine.h /soft/root/include/TAttText.h
+AliDetector.o: /soft/root/include/TArrayC.h /soft/root/include/TArrayS.h
+AliDetector.o: /soft/root/include/TArrayD.h AliPoints.h
+AliDetector.o: /soft/root/include/TPolyMarker3D.h
+AliDetector.o: /soft/root/include/X3DBuffer.h GParticle.h
+AliDetector.o: /soft/root/include/TClass.h /soft/root/include/TDictionary.h
+AliDetector.o: /soft/root/include/Property.h /soft/root/include/TNode.h
+AliDetector.o: /soft/root/include/TShape.h /soft/root/include/TMaterial.h
+AliDetector.o: /soft/root/include/TPolyLine3D.h
+AliDetector.o: /soft/root/include/TRotMatrix.h /soft/root/include/TRandom.h
+AliHeader.o: AliHeader.h /soft/root/include/TObject.h
+AliHeader.o: /soft/root/include/Rtypes.h /soft/root/include/RConfig.h
+AliHeader.o: /usr/include/stdio.h /usr/local/include/g++/libio.h
+AliHeader.o: /usr/include/_G_config.h /usr/include/gnu/types.h
+AliHeader.o: /usr/include/features.h /usr/include/sys/cdefs.h
+AliHeader.o: /usr/include/gnu/stubs.h
AliHeader.o: /usr/local/lib/gcc-lib/i686-pc-linux-gnu/egcs-2.91.60/include/stddef.h
AliHeader.o: /usr/local/lib/gcc-lib/i686-pc-linux-gnu/egcs-2.91.60/include/stdarg.h
-AliHeader.o: /usr/include/stdio_lim.h
-AliMagF.o: AliMagF.h /soft/root/include/TNamed.h /soft/root/include/TVector.h
-AliMagF.o: /soft/root/include/TSystem.h /usr/include/stdio.h
-AliMagF.o: /usr/local/include/g++/libio.h /usr/include/_G_config.h
-AliMagF.o: /usr/include/gnu/types.h /usr/include/features.h
-AliMagF.o: /usr/include/sys/cdefs.h /usr/include/gnu/stubs.h
+AliHeader.o: /usr/include/stdio_lim.h /soft/root/include/DllImport.h
+AliHeader.o: /soft/root/include/Varargs.h /soft/root/include/TStorage.h
+AliHeader.o: /soft/root/include/TBuffer.h /usr/include/string.h
+AliHeader.o: /soft/root/include/Bytes.h
+AliMagF.o: AliMagF.h /soft/root/include/TNamed.h /soft/root/include/TObject.h
+AliMagF.o: /soft/root/include/Rtypes.h /soft/root/include/RConfig.h
+AliMagF.o: /usr/include/stdio.h /usr/local/include/g++/libio.h
+AliMagF.o: /usr/include/_G_config.h /usr/include/gnu/types.h
+AliMagF.o: /usr/include/features.h /usr/include/sys/cdefs.h
+AliMagF.o: /usr/include/gnu/stubs.h
AliMagF.o: /usr/local/lib/gcc-lib/i686-pc-linux-gnu/egcs-2.91.60/include/stddef.h
AliMagF.o: /usr/local/lib/gcc-lib/i686-pc-linux-gnu/egcs-2.91.60/include/stdarg.h
-AliMagF.o: /usr/include/stdio_lim.h /usr/include/stdlib.h
-AliMagF.o: /usr/include/sys/types.h /usr/include/time.h /usr/include/endian.h
-AliMagF.o: /usr/include/bytesex.h /usr/include/sys/select.h
-AliMagF.o: /usr/include/selectbits.h /usr/include/alloca.h
+AliMagF.o: /usr/include/stdio_lim.h /soft/root/include/DllImport.h
+AliMagF.o: /soft/root/include/Varargs.h /soft/root/include/TStorage.h
+AliMagF.o: /soft/root/include/TBuffer.h /usr/include/string.h
+AliMagF.o: /soft/root/include/Bytes.h /soft/root/include/TList.h
+AliMagF.o: /soft/root/include/TSeqCollection.h
+AliMagF.o: /soft/root/include/TCollection.h /soft/root/include/TIterator.h
+AliMagF.o: /soft/root/include/TString.h /soft/root/include/TMath.h
+AliMagF.o: /soft/root/include/TRefCnt.h /soft/root/include/TVector.h
+AliMagF.o: /soft/root/include/TError.h /soft/root/include/TSystem.h
+AliMagF.o: /soft/root/include/G__ci.h /usr/include/math.h
+AliMagF.o: /usr/include/huge_val.h /usr/include/mathcalls.h
+AliMagF.o: /usr/local/lib/gcc-lib/i686-pc-linux-gnu/egcs-2.91.60/include/float.h
+AliMagF.o: /usr/include/stdlib.h /usr/include/sys/types.h /usr/include/time.h
+AliMagF.o: /usr/include/endian.h /usr/include/bytesex.h
+AliMagF.o: /usr/include/sys/select.h /usr/include/selectbits.h
+AliMagF.o: /usr/include/alloca.h /usr/include/signal.h /usr/include/sigset.h
+AliMagF.o: /usr/include/signum.h /usr/include/sigaction.h
+AliMagF.o: /usr/include/sigcontext.h /usr/include/asm/sigcontext.h
+AliMagF.o: /usr/include/assert.h
+AliMagF.o: /usr/local/lib/gcc-lib/i686-pc-linux-gnu/egcs-2.91.60/include/limits.h
+AliMagF.o: /usr/local/lib/gcc-lib/i686-pc-linux-gnu/egcs-2.91.60/include/syslimits.h
+AliMagF.o: /usr/include/setjmp.h /usr/include/jmp_buf.h /usr/include/ctype.h
+AliMagF.o: /usr/include/fcntl.h /usr/include/fcntlbits.h
+AliMagF.o: /usr/include/unistd.h /usr/include/posix_opt.h
+AliMagF.o: /usr/include/confname.h /soft/root/include/TInetAddress.h
+AliMagF.o: /soft/root/include/TTimer.h /soft/root/include/TSysEvtHandler.h
+AliMagF.o: /soft/root/include/TTime.h
GParticle.o: GParticle.h /soft/root/include/TObject.h
-GParticle.o: /soft/root/include/TMath.h
-AliDigit.o: AliDigit.h /soft/root/include/TObject.h GParticle.h
-AliDigit.o: /soft/root/include/TMath.h
-AliHit.o: ./AliHit.h /soft/root/include/TObject.h GParticle.h
-AliHit.o: /soft/root/include/TMath.h AliRun.h /soft/root/include/TROOT.h
-AliHit.o: /soft/root/include/TBrowser.h /soft/root/include/TList.h
+GParticle.o: /soft/root/include/Rtypes.h /soft/root/include/RConfig.h
+GParticle.o: /usr/include/stdio.h /usr/local/include/g++/libio.h
+GParticle.o: /usr/include/_G_config.h /usr/include/gnu/types.h
+GParticle.o: /usr/include/features.h /usr/include/sys/cdefs.h
+GParticle.o: /usr/include/gnu/stubs.h
+GParticle.o: /usr/local/lib/gcc-lib/i686-pc-linux-gnu/egcs-2.91.60/include/stddef.h
+GParticle.o: /usr/local/lib/gcc-lib/i686-pc-linux-gnu/egcs-2.91.60/include/stdarg.h
+GParticle.o: /usr/include/stdio_lim.h /soft/root/include/DllImport.h
+GParticle.o: /soft/root/include/Varargs.h /soft/root/include/TStorage.h
+GParticle.o: /soft/root/include/TBuffer.h /usr/include/string.h
+GParticle.o: /soft/root/include/Bytes.h /soft/root/include/TMath.h
+AliDigit.o: AliDigit.h /soft/root/include/TObject.h
+AliDigit.o: /soft/root/include/Rtypes.h /soft/root/include/RConfig.h
+AliDigit.o: /usr/include/stdio.h /usr/local/include/g++/libio.h
+AliDigit.o: /usr/include/_G_config.h /usr/include/gnu/types.h
+AliDigit.o: /usr/include/features.h /usr/include/sys/cdefs.h
+AliDigit.o: /usr/include/gnu/stubs.h
+AliDigit.o: /usr/local/lib/gcc-lib/i686-pc-linux-gnu/egcs-2.91.60/include/stddef.h
+AliDigit.o: /usr/local/lib/gcc-lib/i686-pc-linux-gnu/egcs-2.91.60/include/stdarg.h
+AliDigit.o: /usr/include/stdio_lim.h /soft/root/include/DllImport.h
+AliDigit.o: /soft/root/include/Varargs.h /soft/root/include/TStorage.h
+AliDigit.o: /soft/root/include/TBuffer.h /usr/include/string.h
+AliDigit.o: /soft/root/include/Bytes.h GParticle.h /soft/root/include/TMath.h
+AliHit.o: ./AliHit.h /soft/root/include/TObject.h /soft/root/include/Rtypes.h
+AliHit.o: /soft/root/include/RConfig.h /usr/include/stdio.h
+AliHit.o: /usr/local/include/g++/libio.h /usr/include/_G_config.h
+AliHit.o: /usr/include/gnu/types.h /usr/include/features.h
+AliHit.o: /usr/include/sys/cdefs.h /usr/include/gnu/stubs.h
+AliHit.o: /usr/local/lib/gcc-lib/i686-pc-linux-gnu/egcs-2.91.60/include/stddef.h
+AliHit.o: /usr/local/lib/gcc-lib/i686-pc-linux-gnu/egcs-2.91.60/include/stdarg.h
+AliHit.o: /usr/include/stdio_lim.h /soft/root/include/DllImport.h
+AliHit.o: /soft/root/include/Varargs.h /soft/root/include/TStorage.h
+AliHit.o: /soft/root/include/TBuffer.h /usr/include/string.h
+AliHit.o: /soft/root/include/Bytes.h GParticle.h /soft/root/include/TMath.h
+AliHit.o: AliRun.h /soft/root/include/TROOT.h /soft/root/include/TDirectory.h
+AliHit.o: /soft/root/include/TDatime.h /soft/root/include/TBrowser.h
+AliHit.o: /soft/root/include/TBrowserImp.h /soft/root/include/TList.h
+AliHit.o: /soft/root/include/TSeqCollection.h
+AliHit.o: /soft/root/include/TCollection.h /soft/root/include/TIterator.h
+AliHit.o: /soft/root/include/TString.h /soft/root/include/TRefCnt.h
AliHit.o: /soft/root/include/TStopwatch.h /soft/root/include/TTree.h
-AliHit.o: /soft/root/include/TGeometry.h AliDetector.h
-AliHit.o: /soft/root/include/TNamed.h /soft/root/include/TClonesArray.h
-AliHit.o: /soft/root/include/TAttLine.h /soft/root/include/TAttMarker.h
-AliHit.o: /soft/root/include/TArrayI.h /soft/root/include/Gtypes.h
-AliHit.o: AliHeader.h AliMagF.h /soft/root/include/TVector.h AliMC.h
-AliHit.o: AliGenerator.h /soft/root/include/TArrayF.h
-AliHit.o: /soft/root/include/TGenerator.h AliLego.h /soft/root/include/TH2.h
-AliPoints.o: AliPoints.h /soft/root/include/TPolyMarker3D.h AliDetector.h
-AliPoints.o: /soft/root/include/TNamed.h /soft/root/include/TClonesArray.h
-AliPoints.o: /soft/root/include/TBrowser.h /soft/root/include/TAttLine.h
+AliHit.o: /soft/root/include/TAttFill.h /soft/root/include/TBranch.h
+AliHit.o: /soft/root/include/TStringLong.h /soft/root/include/TCut.h
+AliHit.o: /soft/root/include/TGeometry.h /soft/root/include/THashList.h
+AliHit.o: ./AliModule.h /soft/root/include/TNamed.h
+AliHit.o: /soft/root/include/TClonesArray.h /soft/root/include/TObjArray.h
+AliHit.o: /soft/root/include/TAttLine.h /soft/root/include/Gtypes.h
+AliHit.o: /soft/root/include/Htypes.h /soft/root/include/TAttMarker.h
+AliHit.o: /soft/root/include/TArrayI.h /soft/root/include/TArray.h
+AliHit.o: AliHeader.h AliMagF.h /soft/root/include/TVector.h
+AliHit.o: /soft/root/include/TError.h AliMC.h AliGenerator.h
+AliHit.o: /soft/root/include/TArrayF.h /soft/root/include/TGenerator.h
+AliHit.o: AliLego.h /soft/root/include/TH2.h /soft/root/include/TH1.h
+AliHit.o: /soft/root/include/TAxis.h /soft/root/include/TAttAxis.h
+AliHit.o: /usr/local/include/g++/fstream.h /usr/local/include/g++/iostream.h
+AliHit.o: /usr/local/include/g++/streambuf.h /soft/root/include/TLego.h
+AliHit.o: /soft/root/include/TF1.h /soft/root/include/TFormula.h
+AliHit.o: /soft/root/include/TMethodCall.h /soft/root/include/TGaxis.h
+AliHit.o: /soft/root/include/TLine.h /soft/root/include/TAttText.h
+AliHit.o: /soft/root/include/TArrayC.h /soft/root/include/TArrayS.h
+AliHit.o: /soft/root/include/TArrayD.h
+AliPoints.o: AliPoints.h /soft/root/include/TPolyMarker3D.h
+AliPoints.o: /soft/root/include/X3DBuffer.h /soft/root/include/DllImport.h
+AliPoints.o: AliDetector.h ./AliModule.h /soft/root/include/TNamed.h
+AliPoints.o: /soft/root/include/TObject.h /soft/root/include/Rtypes.h
+AliPoints.o: /soft/root/include/RConfig.h /usr/include/stdio.h
+AliPoints.o: /usr/local/include/g++/libio.h /usr/include/_G_config.h
+AliPoints.o: /usr/include/gnu/types.h /usr/include/features.h
+AliPoints.o: /usr/include/sys/cdefs.h /usr/include/gnu/stubs.h
+AliPoints.o: /usr/local/lib/gcc-lib/i686-pc-linux-gnu/egcs-2.91.60/include/stddef.h
+AliPoints.o: /usr/local/lib/gcc-lib/i686-pc-linux-gnu/egcs-2.91.60/include/stdarg.h
+AliPoints.o: /usr/include/stdio_lim.h /soft/root/include/Varargs.h
+AliPoints.o: /soft/root/include/TStorage.h /soft/root/include/TBuffer.h
+AliPoints.o: /usr/include/string.h /soft/root/include/Bytes.h
+AliPoints.o: /soft/root/include/TList.h /soft/root/include/TSeqCollection.h
+AliPoints.o: /soft/root/include/TCollection.h /soft/root/include/TIterator.h
+AliPoints.o: /soft/root/include/TString.h /soft/root/include/TMath.h
+AliPoints.o: /soft/root/include/TRefCnt.h /soft/root/include/TClonesArray.h
+AliPoints.o: /soft/root/include/TObjArray.h /soft/root/include/TBrowser.h
+AliPoints.o: /soft/root/include/TBrowserImp.h /soft/root/include/TAttLine.h
+AliPoints.o: /soft/root/include/Gtypes.h /soft/root/include/Htypes.h
AliPoints.o: /soft/root/include/TAttMarker.h /soft/root/include/TArrayI.h
-AliPoints.o: /soft/root/include/Gtypes.h ./AliHit.h
-AliPoints.o: /soft/root/include/TObject.h GParticle.h
-AliPoints.o: /soft/root/include/TMath.h AliRun.h /soft/root/include/TROOT.h
-AliPoints.o: /soft/root/include/TList.h /soft/root/include/TStopwatch.h
-AliPoints.o: /soft/root/include/TTree.h /soft/root/include/TGeometry.h
-AliPoints.o: AliHeader.h AliMagF.h /soft/root/include/TVector.h AliMC.h
+AliPoints.o: /soft/root/include/TArray.h ./AliHit.h GParticle.h AliRun.h
+AliPoints.o: /soft/root/include/TROOT.h /soft/root/include/TDirectory.h
+AliPoints.o: /soft/root/include/TDatime.h /soft/root/include/TStopwatch.h
+AliPoints.o: /soft/root/include/TTree.h /soft/root/include/TAttFill.h
+AliPoints.o: /soft/root/include/TBranch.h /soft/root/include/TStringLong.h
+AliPoints.o: /soft/root/include/TCut.h /soft/root/include/TGeometry.h
+AliPoints.o: /soft/root/include/THashList.h AliHeader.h AliMagF.h
+AliPoints.o: /soft/root/include/TVector.h /soft/root/include/TError.h AliMC.h
AliPoints.o: AliGenerator.h /soft/root/include/TArrayF.h
AliPoints.o: /soft/root/include/TGenerator.h AliLego.h
-AliPoints.o: /soft/root/include/TH2.h /soft/root/include/TPad.h
+AliPoints.o: /soft/root/include/TH2.h /soft/root/include/TH1.h
+AliPoints.o: /soft/root/include/TAxis.h /soft/root/include/TAttAxis.h
+AliPoints.o: /usr/local/include/g++/fstream.h
+AliPoints.o: /usr/local/include/g++/iostream.h
+AliPoints.o: /usr/local/include/g++/streambuf.h /soft/root/include/TLego.h
+AliPoints.o: /soft/root/include/TF1.h /soft/root/include/TFormula.h
+AliPoints.o: /soft/root/include/TMethodCall.h /soft/root/include/TGaxis.h
+AliPoints.o: /soft/root/include/TLine.h /soft/root/include/TAttText.h
+AliPoints.o: /soft/root/include/TArrayC.h /soft/root/include/TArrayS.h
+AliPoints.o: /soft/root/include/TArrayD.h /soft/root/include/TPad.h
+AliPoints.o: /soft/root/include/TVirtualPad.h /soft/root/include/TAttPad.h
+AliPoints.o: /soft/root/include/TFrame.h /soft/root/include/TWbox.h
+AliPoints.o: /soft/root/include/TBox.h /soft/root/include/TGXW.h
+AliPoints.o: /soft/root/include/GuiTypes.h /soft/root/include/Buttons.h
AliPoints.o: /soft/root/include/TView.h
-AliDisplay.o: /soft/root/include/TROOT.h /soft/root/include/TTree.h
-AliDisplay.o: /soft/root/include/TButton.h /soft/root/include/TCanvas.h
+AliDisplay.o: /soft/root/include/TROOT.h /soft/root/include/TDirectory.h
+AliDisplay.o: /soft/root/include/TDatime.h /soft/root/include/TTree.h
+AliDisplay.o: /soft/root/include/TAttFill.h /soft/root/include/TBranch.h
+AliDisplay.o: /soft/root/include/TStringLong.h /soft/root/include/TCut.h
+AliDisplay.o: /soft/root/include/TButton.h /soft/root/include/TPad.h
+AliDisplay.o: /soft/root/include/TVirtualPad.h /soft/root/include/TAttPad.h
+AliDisplay.o: /soft/root/include/TFrame.h /soft/root/include/TWbox.h
+AliDisplay.o: /soft/root/include/TBox.h /soft/root/include/TGXW.h
+AliDisplay.o: /soft/root/include/GuiTypes.h /soft/root/include/Buttons.h
+AliDisplay.o: /soft/root/include/TAttText.h /soft/root/include/TCanvas.h
+AliDisplay.o: /soft/root/include/TAttCanvas.h /soft/root/include/Gtypes.h
+AliDisplay.o: /soft/root/include/Htypes.h /soft/root/include/TString.h
+AliDisplay.o: /usr/include/string.h /usr/include/features.h
+AliDisplay.o: /usr/include/sys/cdefs.h /usr/include/gnu/stubs.h
+AliDisplay.o: /usr/local/lib/gcc-lib/i686-pc-linux-gnu/egcs-2.91.60/include/stddef.h
+AliDisplay.o: /soft/root/include/TMath.h /soft/root/include/TRefCnt.h
+AliDisplay.o: /soft/root/include/TCanvasImp.h /soft/root/include/Rtypes.h
+AliDisplay.o: /soft/root/include/RConfig.h /usr/include/stdio.h
+AliDisplay.o: /usr/local/include/g++/libio.h /usr/include/_G_config.h
+AliDisplay.o: /usr/include/gnu/types.h
+AliDisplay.o: /usr/local/lib/gcc-lib/i686-pc-linux-gnu/egcs-2.91.60/include/stdarg.h
+AliDisplay.o: /usr/include/stdio_lim.h /soft/root/include/DllImport.h
AliDisplay.o: /soft/root/include/TView.h /soft/root/include/TText.h
+AliDisplay.o: /soft/root/include/TNamed.h /soft/root/include/TObject.h
+AliDisplay.o: /soft/root/include/Varargs.h /soft/root/include/TStorage.h
+AliDisplay.o: /soft/root/include/TBuffer.h /soft/root/include/Bytes.h
+AliDisplay.o: /soft/root/include/TList.h /soft/root/include/TSeqCollection.h
+AliDisplay.o: /soft/root/include/TCollection.h /soft/root/include/TIterator.h
AliDisplay.o: /soft/root/include/TPolyMarker3D.h
-AliDisplay.o: /soft/root/include/TPaveLabel.h /soft/root/include/TPaveText.h
-AliDisplay.o: /soft/root/include/TList.h /soft/root/include/TDiamond.h
-AliDisplay.o: /soft/root/include/TNode.h /soft/root/include/TArc.h
-AliDisplay.o: /soft/root/include/TTUBE.h /soft/root/include/TSlider.h
-AliDisplay.o: /soft/root/include/TSliderBox.h /soft/root/include/TGaxis.h
-AliDisplay.o: /soft/root/include/TGXW.h /soft/root/include/TMath.h
-AliDisplay.o: /soft/root/include/X3DBuffer.h /soft/root/include/DllImport.h
-AliDisplay.o: AliRun.h /soft/root/include/TBrowser.h
+AliDisplay.o: /soft/root/include/X3DBuffer.h /soft/root/include/TPaveLabel.h
+AliDisplay.o: /soft/root/include/TPave.h /soft/root/include/TPaveText.h
+AliDisplay.o: /soft/root/include/TLine.h /soft/root/include/TDiamond.h
+AliDisplay.o: /soft/root/include/TAttLine.h /soft/root/include/TNode.h
+AliDisplay.o: /soft/root/include/TShape.h /soft/root/include/TMaterial.h
+AliDisplay.o: /soft/root/include/TPolyLine3D.h
+AliDisplay.o: /soft/root/include/TRotMatrix.h /soft/root/include/TArc.h
+AliDisplay.o: /soft/root/include/TEllipse.h /soft/root/include/TTUBE.h
+AliDisplay.o: /soft/root/include/TSlider.h /soft/root/include/TSliderBox.h
+AliDisplay.o: /soft/root/include/TGaxis.h AliRun.h
+AliDisplay.o: /soft/root/include/TBrowser.h /soft/root/include/TBrowserImp.h
AliDisplay.o: /soft/root/include/TStopwatch.h /soft/root/include/TGeometry.h
-AliDisplay.o: AliDetector.h /soft/root/include/TNamed.h
-AliDisplay.o: /soft/root/include/TClonesArray.h /soft/root/include/TAttLine.h
-AliDisplay.o: /soft/root/include/TAttMarker.h /soft/root/include/TArrayI.h
-AliDisplay.o: /soft/root/include/Gtypes.h ./AliHit.h
-AliDisplay.o: /soft/root/include/TObject.h AliHeader.h AliMagF.h
-AliDisplay.o: /soft/root/include/TVector.h AliMC.h AliGenerator.h
+AliDisplay.o: /soft/root/include/THashList.h ./AliModule.h
+AliDisplay.o: /soft/root/include/TClonesArray.h
+AliDisplay.o: /soft/root/include/TObjArray.h /soft/root/include/TAttMarker.h
+AliDisplay.o: /soft/root/include/TArrayI.h /soft/root/include/TArray.h
+AliDisplay.o: ./AliHit.h AliHeader.h AliMagF.h /soft/root/include/TVector.h
+AliDisplay.o: /soft/root/include/TError.h AliMC.h AliGenerator.h
AliDisplay.o: /soft/root/include/TArrayF.h /soft/root/include/TGenerator.h
-AliDisplay.o: AliLego.h /soft/root/include/TH2.h AliDisplay.h AliPoints.h
-AliDisplay.o: GParticle.h
-AliMC.o: AliMC.h /soft/root/include/TNamed.h
-AliRun.o: /soft/root/include/TFile.h /soft/root/include/TRandom.h
-AliRun.o: /soft/root/include/TBRIK.h /soft/root/include/TNode.h AliMC.h
-AliRun.o: /soft/root/include/TNamed.h /soft/root/include/TCint.h
-AliRun.o: /soft/root/include/TSystem.h /usr/include/stdio.h
-AliRun.o: /usr/local/include/g++/libio.h /usr/include/_G_config.h
-AliRun.o: /usr/include/gnu/types.h /usr/include/features.h
-AliRun.o: /usr/include/sys/cdefs.h /usr/include/gnu/stubs.h
+AliDisplay.o: AliLego.h /soft/root/include/TH2.h /soft/root/include/TH1.h
+AliDisplay.o: /soft/root/include/TAxis.h /soft/root/include/TAttAxis.h
+AliDisplay.o: /usr/local/include/g++/fstream.h
+AliDisplay.o: /usr/local/include/g++/iostream.h
+AliDisplay.o: /usr/local/include/g++/streambuf.h /soft/root/include/TLego.h
+AliDisplay.o: /soft/root/include/TF1.h /soft/root/include/TFormula.h
+AliDisplay.o: /soft/root/include/TMethodCall.h /soft/root/include/TArrayC.h
+AliDisplay.o: /soft/root/include/TArrayS.h /soft/root/include/TArrayD.h
+AliDisplay.o: AliDetector.h AliDisplay.h AliPoints.h GParticle.h
+AliMC.o: AliMC.h /soft/root/include/TNamed.h /soft/root/include/TObject.h
+AliMC.o: /soft/root/include/Rtypes.h /soft/root/include/RConfig.h
+AliMC.o: /usr/include/stdio.h /usr/local/include/g++/libio.h
+AliMC.o: /usr/include/_G_config.h /usr/include/gnu/types.h
+AliMC.o: /usr/include/features.h /usr/include/sys/cdefs.h
+AliMC.o: /usr/include/gnu/stubs.h
+AliMC.o: /usr/local/lib/gcc-lib/i686-pc-linux-gnu/egcs-2.91.60/include/stddef.h
+AliMC.o: /usr/local/lib/gcc-lib/i686-pc-linux-gnu/egcs-2.91.60/include/stdarg.h
+AliMC.o: /usr/include/stdio_lim.h /soft/root/include/DllImport.h
+AliMC.o: /soft/root/include/Varargs.h /soft/root/include/TStorage.h
+AliMC.o: /soft/root/include/TBuffer.h /usr/include/string.h
+AliMC.o: /soft/root/include/Bytes.h /soft/root/include/TList.h
+AliMC.o: /soft/root/include/TSeqCollection.h /soft/root/include/TCollection.h
+AliMC.o: /soft/root/include/TIterator.h /soft/root/include/TString.h
+AliMC.o: /soft/root/include/TMath.h /soft/root/include/TRefCnt.h
+AliRun.o: /soft/root/include/TFile.h /soft/root/include/TDirectory.h
+AliRun.o: /soft/root/include/TDatime.h /soft/root/include/TRandom.h
+AliRun.o: /soft/root/include/TBRIK.h /soft/root/include/TShape.h
+AliRun.o: /soft/root/include/TMaterial.h /soft/root/include/TPolyLine3D.h
+AliRun.o: /soft/root/include/TString.h /usr/include/string.h
+AliRun.o: /usr/include/features.h /usr/include/sys/cdefs.h
+AliRun.o: /usr/include/gnu/stubs.h
AliRun.o: /usr/local/lib/gcc-lib/i686-pc-linux-gnu/egcs-2.91.60/include/stddef.h
+AliRun.o: /soft/root/include/TMath.h /soft/root/include/TRefCnt.h
+AliRun.o: /soft/root/include/TNode.h /soft/root/include/TRotMatrix.h AliMC.h
+AliRun.o: /soft/root/include/TNamed.h /soft/root/include/TObject.h
+AliRun.o: /soft/root/include/Rtypes.h /soft/root/include/RConfig.h
+AliRun.o: /usr/include/stdio.h /usr/local/include/g++/libio.h
+AliRun.o: /usr/include/_G_config.h /usr/include/gnu/types.h
AliRun.o: /usr/local/lib/gcc-lib/i686-pc-linux-gnu/egcs-2.91.60/include/stdarg.h
-AliRun.o: /usr/include/stdio_lim.h GParticle.h /soft/root/include/TObject.h
-AliRun.o: /soft/root/include/TMath.h AliRun.h /soft/root/include/TROOT.h
-AliRun.o: /soft/root/include/TBrowser.h /soft/root/include/TList.h
-AliRun.o: /soft/root/include/TStopwatch.h /soft/root/include/TTree.h
-AliRun.o: /soft/root/include/TGeometry.h AliDetector.h
-AliRun.o: /soft/root/include/TClonesArray.h /soft/root/include/TAttLine.h
-AliRun.o: /soft/root/include/TAttMarker.h /soft/root/include/TArrayI.h
-AliRun.o: /soft/root/include/Gtypes.h ./AliHit.h AliHeader.h AliMagF.h
-AliRun.o: /soft/root/include/TVector.h AliGenerator.h
-AliRun.o: /soft/root/include/TArrayF.h /soft/root/include/TGenerator.h
-AliRun.o: AliLego.h /soft/root/include/TH2.h AliDisplay.h AliCallf77.h
-AliRun.o: /usr/include/stdlib.h /usr/include/sys/types.h /usr/include/time.h
+AliRun.o: /usr/include/stdio_lim.h /soft/root/include/DllImport.h
+AliRun.o: /soft/root/include/Varargs.h /soft/root/include/TStorage.h
+AliRun.o: /soft/root/include/TBuffer.h /soft/root/include/Bytes.h
+AliRun.o: /soft/root/include/TList.h /soft/root/include/TSeqCollection.h
+AliRun.o: /soft/root/include/TCollection.h /soft/root/include/TIterator.h
+AliRun.o: /soft/root/include/TCint.h /soft/root/include/TInterpreter.h
+AliRun.o: /soft/root/include/common.h /usr/include/time.h
+AliRun.o: /soft/root/include/G__ci.h /usr/include/math.h
+AliRun.o: /usr/include/huge_val.h /usr/include/mathcalls.h
+AliRun.o: /usr/local/lib/gcc-lib/i686-pc-linux-gnu/egcs-2.91.60/include/float.h
+AliRun.o: /usr/include/stdlib.h /usr/include/sys/types.h
AliRun.o: /usr/include/endian.h /usr/include/bytesex.h
AliRun.o: /usr/include/sys/select.h /usr/include/selectbits.h
-AliRun.o: /usr/include/alloca.h /usr/include/string.h
+AliRun.o: /usr/include/alloca.h /usr/include/signal.h /usr/include/sigset.h
+AliRun.o: /usr/include/signum.h /usr/include/sigaction.h
+AliRun.o: /usr/include/sigcontext.h /usr/include/asm/sigcontext.h
+AliRun.o: /usr/include/assert.h
+AliRun.o: /usr/local/lib/gcc-lib/i686-pc-linux-gnu/egcs-2.91.60/include/limits.h
+AliRun.o: /usr/local/lib/gcc-lib/i686-pc-linux-gnu/egcs-2.91.60/include/syslimits.h
+AliRun.o: /usr/include/setjmp.h /usr/include/jmp_buf.h /usr/include/ctype.h
+AliRun.o: /usr/include/fcntl.h /usr/include/fcntlbits.h /usr/include/unistd.h
+AliRun.o: /usr/include/posix_opt.h /usr/include/confname.h
+AliRun.o: /soft/root/include/security.h /soft/root/include/fproto.h
+AliRun.o: /soft/root/include/global.h /soft/root/include/TSystem.h
+AliRun.o: /soft/root/include/TInetAddress.h /soft/root/include/TTimer.h
+AliRun.o: /soft/root/include/TSysEvtHandler.h /soft/root/include/TTime.h
+AliRun.o: GParticle.h AliRun.h /soft/root/include/TROOT.h
+AliRun.o: /soft/root/include/TBrowser.h /soft/root/include/TBrowserImp.h
+AliRun.o: /soft/root/include/TStopwatch.h /soft/root/include/TTree.h
+AliRun.o: /soft/root/include/TAttFill.h /soft/root/include/TBranch.h
+AliRun.o: /soft/root/include/TStringLong.h /soft/root/include/TCut.h
+AliRun.o: /soft/root/include/TGeometry.h /soft/root/include/THashList.h
+AliRun.o: ./AliModule.h /soft/root/include/TClonesArray.h
+AliRun.o: /soft/root/include/TObjArray.h /soft/root/include/TAttLine.h
+AliRun.o: /soft/root/include/Gtypes.h /soft/root/include/Htypes.h
+AliRun.o: /soft/root/include/TAttMarker.h /soft/root/include/TArrayI.h
+AliRun.o: /soft/root/include/TArray.h ./AliHit.h AliHeader.h AliMagF.h
+AliRun.o: /soft/root/include/TVector.h /soft/root/include/TError.h
+AliRun.o: AliGenerator.h /soft/root/include/TArrayF.h
+AliRun.o: /soft/root/include/TGenerator.h AliLego.h /soft/root/include/TH2.h
+AliRun.o: /soft/root/include/TH1.h /soft/root/include/TAxis.h
+AliRun.o: /soft/root/include/TAttAxis.h /usr/local/include/g++/fstream.h
+AliRun.o: /usr/local/include/g++/iostream.h
+AliRun.o: /usr/local/include/g++/streambuf.h /soft/root/include/TLego.h
+AliRun.o: /soft/root/include/TF1.h /soft/root/include/TFormula.h
+AliRun.o: /soft/root/include/TMethodCall.h /soft/root/include/TGaxis.h
+AliRun.o: /soft/root/include/TLine.h /soft/root/include/TAttText.h
+AliRun.o: /soft/root/include/TArrayC.h /soft/root/include/TArrayS.h
+AliRun.o: /soft/root/include/TArrayD.h AliDisplay.h AliCallf77.h
AliGenerator.o: AliGenerator.h /soft/root/include/TNamed.h
+AliGenerator.o: /soft/root/include/TObject.h /soft/root/include/Rtypes.h
+AliGenerator.o: /soft/root/include/RConfig.h /usr/include/stdio.h
+AliGenerator.o: /usr/local/include/g++/libio.h /usr/include/_G_config.h
+AliGenerator.o: /usr/include/gnu/types.h /usr/include/features.h
+AliGenerator.o: /usr/include/sys/cdefs.h /usr/include/gnu/stubs.h
+AliGenerator.o: /usr/local/lib/gcc-lib/i686-pc-linux-gnu/egcs-2.91.60/include/stddef.h
+AliGenerator.o: /usr/local/lib/gcc-lib/i686-pc-linux-gnu/egcs-2.91.60/include/stdarg.h
+AliGenerator.o: /usr/include/stdio_lim.h /soft/root/include/DllImport.h
+AliGenerator.o: /soft/root/include/Varargs.h /soft/root/include/TStorage.h
+AliGenerator.o: /soft/root/include/TBuffer.h /usr/include/string.h
+AliGenerator.o: /soft/root/include/Bytes.h /soft/root/include/TList.h
+AliGenerator.o: /soft/root/include/TSeqCollection.h
+AliGenerator.o: /soft/root/include/TCollection.h
+AliGenerator.o: /soft/root/include/TIterator.h /soft/root/include/TString.h
+AliGenerator.o: /soft/root/include/TMath.h /soft/root/include/TRefCnt.h
AliGenerator.o: /soft/root/include/TArrayF.h /soft/root/include/TGenerator.h
AliGenerator.o: AliRun.h /soft/root/include/TROOT.h
-AliGenerator.o: /soft/root/include/TBrowser.h /soft/root/include/TList.h
+AliGenerator.o: /soft/root/include/TDirectory.h /soft/root/include/TDatime.h
+AliGenerator.o: /soft/root/include/TBrowser.h
+AliGenerator.o: /soft/root/include/TBrowserImp.h
AliGenerator.o: /soft/root/include/TStopwatch.h /soft/root/include/TTree.h
-AliGenerator.o: /soft/root/include/TGeometry.h AliDetector.h
-AliGenerator.o: /soft/root/include/TClonesArray.h
-AliGenerator.o: /soft/root/include/TAttLine.h /soft/root/include/TAttMarker.h
-AliGenerator.o: /soft/root/include/TArrayI.h /soft/root/include/Gtypes.h
-AliGenerator.o: ./AliHit.h /soft/root/include/TObject.h AliHeader.h AliMagF.h
-AliGenerator.o: /soft/root/include/TVector.h AliMC.h AliLego.h
-AliGenerator.o: /soft/root/include/TH2.h
+AliGenerator.o: /soft/root/include/TAttFill.h /soft/root/include/TBranch.h
+AliGenerator.o: /soft/root/include/TStringLong.h /soft/root/include/TCut.h
+AliGenerator.o: /soft/root/include/TGeometry.h /soft/root/include/THashList.h
+AliGenerator.o: ./AliModule.h /soft/root/include/TClonesArray.h
+AliGenerator.o: /soft/root/include/TObjArray.h /soft/root/include/TAttLine.h
+AliGenerator.o: /soft/root/include/Gtypes.h /soft/root/include/Htypes.h
+AliGenerator.o: /soft/root/include/TAttMarker.h /soft/root/include/TArrayI.h
+AliGenerator.o: /soft/root/include/TArray.h ./AliHit.h AliHeader.h AliMagF.h
+AliGenerator.o: /soft/root/include/TVector.h /soft/root/include/TError.h
+AliGenerator.o: AliMC.h AliLego.h /soft/root/include/TH2.h
+AliGenerator.o: /soft/root/include/TH1.h /soft/root/include/TAxis.h
+AliGenerator.o: /soft/root/include/TAttAxis.h
+AliGenerator.o: /usr/local/include/g++/fstream.h
+AliGenerator.o: /usr/local/include/g++/iostream.h
+AliGenerator.o: /usr/local/include/g++/streambuf.h /soft/root/include/TLego.h
+AliGenerator.o: /soft/root/include/TF1.h /soft/root/include/TFormula.h
+AliGenerator.o: /soft/root/include/TMethodCall.h /soft/root/include/TGaxis.h
+AliGenerator.o: /soft/root/include/TLine.h /soft/root/include/TAttText.h
+AliGenerator.o: /soft/root/include/TArrayC.h /soft/root/include/TArrayS.h
+AliGenerator.o: /soft/root/include/TArrayD.h
AliLego.o: /soft/root/include/TMath.h /hdb2/offline/pro/include/TGeant3.h
-AliLego.o: AliMC.h /soft/root/include/TNamed.h AliRun.h
-AliLego.o: /soft/root/include/TROOT.h /soft/root/include/TBrowser.h
-AliLego.o: /soft/root/include/TList.h /soft/root/include/TStopwatch.h
-AliLego.o: /soft/root/include/TTree.h /soft/root/include/TGeometry.h
-AliLego.o: AliDetector.h /soft/root/include/TClonesArray.h
-AliLego.o: /soft/root/include/TAttLine.h /soft/root/include/TAttMarker.h
-AliLego.o: /soft/root/include/TArrayI.h /soft/root/include/Gtypes.h
-AliLego.o: ./AliHit.h /soft/root/include/TObject.h AliHeader.h AliMagF.h
-AliLego.o: /soft/root/include/TVector.h AliGenerator.h
+AliLego.o: AliMC.h /soft/root/include/TNamed.h /soft/root/include/TObject.h
+AliLego.o: /soft/root/include/Rtypes.h /soft/root/include/RConfig.h
+AliLego.o: /usr/include/stdio.h /usr/local/include/g++/libio.h
+AliLego.o: /usr/include/_G_config.h /usr/include/gnu/types.h
+AliLego.o: /usr/include/features.h /usr/include/sys/cdefs.h
+AliLego.o: /usr/include/gnu/stubs.h
+AliLego.o: /usr/local/lib/gcc-lib/i686-pc-linux-gnu/egcs-2.91.60/include/stddef.h
+AliLego.o: /usr/local/lib/gcc-lib/i686-pc-linux-gnu/egcs-2.91.60/include/stdarg.h
+AliLego.o: /usr/include/stdio_lim.h /soft/root/include/DllImport.h
+AliLego.o: /soft/root/include/Varargs.h /soft/root/include/TStorage.h
+AliLego.o: /soft/root/include/TBuffer.h /usr/include/string.h
+AliLego.o: /soft/root/include/Bytes.h /soft/root/include/TList.h
+AliLego.o: /soft/root/include/TSeqCollection.h
+AliLego.o: /soft/root/include/TCollection.h /soft/root/include/TIterator.h
+AliLego.o: /soft/root/include/TString.h /soft/root/include/TRefCnt.h AliRun.h
+AliLego.o: /soft/root/include/TROOT.h /soft/root/include/TDirectory.h
+AliLego.o: /soft/root/include/TDatime.h /soft/root/include/TBrowser.h
+AliLego.o: /soft/root/include/TBrowserImp.h /soft/root/include/TStopwatch.h
+AliLego.o: /soft/root/include/TTree.h /soft/root/include/TAttFill.h
+AliLego.o: /soft/root/include/TBranch.h /soft/root/include/TStringLong.h
+AliLego.o: /soft/root/include/TCut.h /soft/root/include/TGeometry.h
+AliLego.o: /soft/root/include/THashList.h ./AliModule.h
+AliLego.o: /soft/root/include/TClonesArray.h /soft/root/include/TObjArray.h
+AliLego.o: /soft/root/include/TAttLine.h /soft/root/include/Gtypes.h
+AliLego.o: /soft/root/include/Htypes.h /soft/root/include/TAttMarker.h
+AliLego.o: /soft/root/include/TArrayI.h /soft/root/include/TArray.h
+AliLego.o: ./AliHit.h AliHeader.h AliMagF.h /soft/root/include/TVector.h
+AliLego.o: /soft/root/include/TError.h AliGenerator.h
AliLego.o: /soft/root/include/TArrayF.h /soft/root/include/TGenerator.h
-AliLego.o: AliLego.h /soft/root/include/TH2.h AliConst.h
+AliLego.o: AliLego.h /soft/root/include/TH2.h /soft/root/include/TH1.h
+AliLego.o: /soft/root/include/TAxis.h /soft/root/include/TAttAxis.h
+AliLego.o: /usr/local/include/g++/fstream.h /usr/local/include/g++/iostream.h
+AliLego.o: /usr/local/include/g++/streambuf.h /soft/root/include/TLego.h
+AliLego.o: /soft/root/include/TF1.h /soft/root/include/TFormula.h
+AliLego.o: /soft/root/include/TMethodCall.h /soft/root/include/TGaxis.h
+AliLego.o: /soft/root/include/TLine.h /soft/root/include/TAttText.h
+AliLego.o: /soft/root/include/TArrayC.h /soft/root/include/TArrayS.h
+AliLego.o: /soft/root/include/TArrayD.h AliConst.h
+AliModule.o: ./AliModule.h /soft/root/include/TNamed.h
+AliModule.o: /soft/root/include/TObject.h /soft/root/include/Rtypes.h
+AliModule.o: /soft/root/include/RConfig.h /usr/include/stdio.h
+AliModule.o: /usr/local/include/g++/libio.h /usr/include/_G_config.h
+AliModule.o: /usr/include/gnu/types.h /usr/include/features.h
+AliModule.o: /usr/include/sys/cdefs.h /usr/include/gnu/stubs.h
+AliModule.o: /usr/local/lib/gcc-lib/i686-pc-linux-gnu/egcs-2.91.60/include/stddef.h
+AliModule.o: /usr/local/lib/gcc-lib/i686-pc-linux-gnu/egcs-2.91.60/include/stdarg.h
+AliModule.o: /usr/include/stdio_lim.h /soft/root/include/DllImport.h
+AliModule.o: /soft/root/include/Varargs.h /soft/root/include/TStorage.h
+AliModule.o: /soft/root/include/TBuffer.h /usr/include/string.h
+AliModule.o: /soft/root/include/Bytes.h /soft/root/include/TList.h
+AliModule.o: /soft/root/include/TSeqCollection.h
+AliModule.o: /soft/root/include/TCollection.h /soft/root/include/TIterator.h
+AliModule.o: /soft/root/include/TString.h /soft/root/include/TMath.h
+AliModule.o: /soft/root/include/TRefCnt.h /soft/root/include/TClonesArray.h
+AliModule.o: /soft/root/include/TObjArray.h /soft/root/include/TBrowser.h
+AliModule.o: /soft/root/include/TBrowserImp.h /soft/root/include/TAttLine.h
+AliModule.o: /soft/root/include/Gtypes.h /soft/root/include/Htypes.h
+AliModule.o: /soft/root/include/TAttMarker.h /soft/root/include/TArrayI.h
+AliModule.o: /soft/root/include/TArray.h ./AliHit.h AliRun.h
+AliModule.o: /soft/root/include/TROOT.h /soft/root/include/TDirectory.h
+AliModule.o: /soft/root/include/TDatime.h /soft/root/include/TStopwatch.h
+AliModule.o: /soft/root/include/TTree.h /soft/root/include/TAttFill.h
+AliModule.o: /soft/root/include/TBranch.h /soft/root/include/TStringLong.h
+AliModule.o: /soft/root/include/TCut.h /soft/root/include/TGeometry.h
+AliModule.o: /soft/root/include/THashList.h AliHeader.h AliMagF.h
+AliModule.o: /soft/root/include/TVector.h /soft/root/include/TError.h AliMC.h
+AliModule.o: AliGenerator.h /soft/root/include/TArrayF.h
+AliModule.o: /soft/root/include/TGenerator.h AliLego.h
+AliModule.o: /soft/root/include/TH2.h /soft/root/include/TH1.h
+AliModule.o: /soft/root/include/TAxis.h /soft/root/include/TAttAxis.h
+AliModule.o: /usr/local/include/g++/fstream.h
+AliModule.o: /usr/local/include/g++/iostream.h
+AliModule.o: /usr/local/include/g++/streambuf.h /soft/root/include/TLego.h
+AliModule.o: /soft/root/include/TF1.h /soft/root/include/TFormula.h
+AliModule.o: /soft/root/include/TMethodCall.h /soft/root/include/TGaxis.h
+AliModule.o: /soft/root/include/TLine.h /soft/root/include/TAttText.h
+AliModule.o: /soft/root/include/TArrayC.h /soft/root/include/TArrayS.h
+AliModule.o: /soft/root/include/TArrayD.h AliPoints.h
+AliModule.o: /soft/root/include/TPolyMarker3D.h
+AliModule.o: /soft/root/include/X3DBuffer.h AliDetector.h GParticle.h
+AliModule.o: /soft/root/include/TClass.h /soft/root/include/TDictionary.h
+AliModule.o: /soft/root/include/Property.h /soft/root/include/TNode.h
+AliModule.o: /soft/root/include/TShape.h /soft/root/include/TMaterial.h
+AliModule.o: /soft/root/include/TPolyLine3D.h /soft/root/include/TRotMatrix.h
+AliModule.o: /soft/root/include/TRandom.h
SRCS = AliDetector.cxx AliHeader.cxx AliMagF.cxx GParticle.cxx \
AliDigit.cxx AliHit.cxx AliPoints.cxx \
AliDisplay.cxx AliMC.cxx AliRun.cxx AliGenerator.cxx \
- AliLego.cxx
+ AliLego.cxx AliModule.cxx
# C++ Headers
#pragma link C++ class AliGenerator;
#pragma link C++ class AliRun-;
+#pragma link C++ class AliModule-;
#pragma link C++ class AliDetector-;
#pragma link C++ class GParticle;
#pragma link C++ class AliDigit;