]>
Commit | Line | Data |
---|---|---|
1 | #ifndef ALIMUONPREPROCESSOR_H | |
2 | #define ALIMUONPREPROCESSOR_H | |
3 | ||
4 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * | |
5 | * See cxx source for full Copyright notice */ | |
6 | ||
7 | // $Id$ | |
8 | ||
9 | /// \ingroup shuttle | |
10 | /// \class AliMUONPreprocessor | |
11 | /// \brief Shuttle preprocessor for MUON subsystems (TRK and TRG) | |
12 | /// | |
13 | // Author Laurent Aphecetche | |
14 | ||
15 | #ifndef ALI_PREPROCESSOR_H | |
16 | # include "AliPreprocessor.h" | |
17 | #endif | |
18 | ||
19 | class AliMUONVSubprocessor; | |
20 | class TObjArray; | |
21 | ||
22 | class AliMUONPreprocessor : public AliPreprocessor | |
23 | { | |
24 | public: | |
25 | virtual void Initialize(Int_t run, UInt_t startTime, UInt_t endTime); | |
26 | virtual UInt_t Process(TMap* dcsAliasMap); | |
27 | virtual void Print(Option_t* opt="") const; | |
28 | ||
29 | virtual Bool_t ProcessDCS() { return fProcessDCS; } | |
30 | ||
31 | /// Publish AliPreprocessor::Log function | |
32 | void Log(const char* message) { AliPreprocessor::Log(message); } | |
33 | ||
34 | /// Publish AliPreprocessor::GetFileSources function | |
35 | TList* GetFileSources(Int_t system, const char* id) | |
36 | { return AliPreprocessor::GetFileSources(system,id); } | |
37 | ||
38 | /// Publish AliPreprocessor::Store function | |
39 | Bool_t Store(const char* pathLevel2, const char* pathLevel3, TObject* object, | |
40 | AliCDBMetaData* metaData, | |
41 | Int_t validityStart = 0, Bool_t validityInfinite = kFALSE) | |
42 | { | |
43 | return AliPreprocessor::Store(pathLevel2,pathLevel3,object,metaData, | |
44 | validityStart,validityInfinite); | |
45 | } | |
46 | ||
47 | /// Publish AliPreprocessor::GetFile function | |
48 | const char* GetFile(Int_t system, const char* id, const char* source) | |
49 | { | |
50 | return AliPreprocessor::GetFile(system,id,source); | |
51 | } | |
52 | ||
53 | protected: | |
54 | AliMUONPreprocessor(const char* detName, AliShuttleInterface* shuttle); | |
55 | virtual ~AliMUONPreprocessor(); | |
56 | ||
57 | void Add(AliMUONVSubprocessor* subProcessor, Bool_t processDCS=kFALSE); | |
58 | void ClearSubprocessors(); | |
59 | ||
60 | private: | |
61 | /// Not implemented | |
62 | AliMUONPreprocessor(const AliMUONPreprocessor& rhs); | |
63 | /// Not implemented | |
64 | AliMUONPreprocessor& operator=(const AliMUONPreprocessor& rhs); | |
65 | ||
66 | AliMUONVSubprocessor* Subprocessor(Int_t i) const; | |
67 | ||
68 | private: | |
69 | ||
70 | TObjArray* fSubprocessors; //!< sub processors to execute | |
71 | Bool_t fProcessDCS; //!< whether the current subprocessor(s) needs DCS or not | |
72 | ||
73 | ClassDef(AliMUONPreprocessor,2) // MUON Shuttle preprocessor | |
74 | }; | |
75 | ||
76 | #endif |