1 #ifndef ALIMUONPREPROCESSOR_H
2 #define ALIMUONPREPROCESSOR_H
4 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5 * See cxx source for full Copyright notice */
10 /// \class AliMUONPreprocessor
11 /// \brief Shuttle preprocessor for MUON subsystems (TRK and TRG)
13 // Author Laurent Aphecetche
15 #ifndef ALI_PREPROCESSOR_H
16 # include "AliPreprocessor.h"
19 class AliMUONVSubprocessor;
22 class AliMUONPreprocessor : public AliPreprocessor
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;
29 /// Return info whether the current subprocessor(s) needs DCS or not
30 virtual Bool_t ProcessDCS() { return fProcessDCS; }
32 /// Publish AliPreprocessor::Log function
33 void Log(const char* message) { AliPreprocessor::Log(message); }
35 /// Publish AliPreprocessor::GetFileSources function
36 TList* GetFileSources(Int_t system, const char* id)
37 { return AliPreprocessor::GetFileSources(system,id); }
39 /// Publish AliPreprocessor::Store function
40 Bool_t Store(const char* pathLevel2, const char* pathLevel3, TObject* object,
41 AliCDBMetaData* metaData,
42 Int_t validityStart = 0, Bool_t validityInfinite = kFALSE)
44 return AliPreprocessor::Store(pathLevel2,pathLevel3,object,metaData,
45 validityStart,validityInfinite);
48 /// Publish AliPreprocessor::GetFile function
49 const char* GetFile(Int_t system, const char* id, const char* source)
51 return AliPreprocessor::GetFile(system,id,source);
55 AliMUONPreprocessor(const char* detName, AliShuttleInterface* shuttle);
56 virtual ~AliMUONPreprocessor();
58 void Add(AliMUONVSubprocessor* subProcessor, Bool_t processDCS=kFALSE);
59 void ClearSubprocessors();
63 AliMUONPreprocessor(const AliMUONPreprocessor& rhs);
65 AliMUONPreprocessor& operator=(const AliMUONPreprocessor& rhs);
67 AliMUONVSubprocessor* Subprocessor(Int_t i) const;
71 TObjArray* fSubprocessors; //!< sub processors to execute
72 Bool_t fProcessDCS; //!< whether the current subprocessor(s) needs DCS or not
74 ClassDef(AliMUONPreprocessor,2) // MUON Shuttle preprocessor