]>
Commit | Line | Data |
---|---|---|
85a5290f | 1 | #ifndef ALISIMULATION_H |
2 | #define ALISIMULATION_H | |
3 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * | |
4 | * See cxx source for full Copyright notice */ | |
5 | ||
6 | /* $Id$ */ | |
7 | ||
8 | #include <TNamed.h> | |
9 | #include <TString.h> | |
10 | ||
11 | class AliRunLoader; | |
12 | ||
13 | ||
14 | class AliSimulation: public TNamed { | |
15 | public: | |
95601147 | 16 | AliSimulation(const char* configFileName = "Config.C", |
17 | const char* name = "AliSimulation", | |
85a5290f | 18 | const char* title = "generation, simulation and digitization"); |
19 | AliSimulation(const AliSimulation& sim); | |
20 | AliSimulation& operator = (const AliSimulation& sim); | |
21 | virtual ~AliSimulation(); | |
22 | ||
23 | void SetNumberOfEvents(Int_t nEvents); | |
24 | void SetConfigFile(const char* fileName); | |
25 | ||
26 | void SetRunGeneration(Bool_t run) {fRunGeneration = run;}; | |
27 | void SetRunSimulation(Bool_t run) {fRunSimulation = run;}; | |
28 | void SetMakeSDigits(const char* detectors) | |
29 | {fMakeSDigits = detectors;}; | |
05526d44 | 30 | void MergeWith(const char* fileName, Int_t nSignalPerBkgrd = 0); |
04bae0a0 | 31 | void SetUseBkgrdVertex(Bool_t useBkgrdVertex) |
32 | {fUseBkgrdVertex = useBkgrdVertex;}; | |
4df28b43 | 33 | void SetRegionOfInterest(Bool_t flag) {fRegionOfInterest = flag;}; |
85a5290f | 34 | void SetMakeDigits(const char* detectors) |
35 | {fMakeDigits = detectors;}; | |
36 | void SetMakeDigitsFromHits(const char* detectors) | |
37 | {fMakeDigitsFromHits = detectors;}; | |
38 | ||
39 | virtual Bool_t Run(Int_t nEvents = 0); | |
40 | ||
95601147 | 41 | virtual Bool_t RunSimulation(Int_t nEvents = 0); |
42 | virtual Bool_t RunSDigitization(const char* detectors = "ALL"); | |
43 | virtual Bool_t RunDigitization(const char* detectors = "ALL", | |
44 | const char* excludeDetectors = ""); | |
45 | virtual Bool_t RunHitsDigitization(const char* detectors = "ALL"); | |
8e4a4643 | 46 | |
95601147 | 47 | private: |
48 | AliRunLoader* LoadRun() const; | |
05526d44 | 49 | Int_t GetNSignalPerBkgrd(Int_t nEvents = 0) const; |
85a5290f | 50 | Bool_t IsSelected(TString detName, TString& detectors) const; |
51 | ||
85a5290f | 52 | Bool_t fRunGeneration; // generate prim. particles or not |
53 | Bool_t fRunSimulation; // simulate detectors (hits) or not | |
54 | TString fMakeSDigits; // create sdigits for these detectors | |
55 | TString fMakeDigits; // create digits for these detectors | |
56 | TString fMakeDigitsFromHits; // create digits from hits for these detectors | |
57 | Bool_t fStopOnError; // stop or continue on errors | |
58 | ||
59 | Int_t fNEvents; // number of events | |
60 | TString fConfigFileName; // name of the config file | |
61 | TString fGAliceFileName; // name of the galice file | |
62 | TObjArray* fBkgrdFileNames; // names of background files for merging | |
04bae0a0 | 63 | Bool_t fUseBkgrdVertex; // use vertex from background in case of merging |
4df28b43 | 64 | Bool_t fRegionOfInterest; // digitization in region of interest |
85a5290f | 65 | |
85a5290f | 66 | ClassDef(AliSimulation, 1) // class for running generation, simulation and digitization |
67 | }; | |
68 | ||
69 | #endif |