// or
// visit http://web.ift.uib.no/~kjeks/doc/alice-hlt
-#include "AliHLTPHOSProcessor.h"
-class AliHLTPHOSDigitMaker;
-class AliHLTPHOSDigitContainerDataStruct;
+#include "AliHLTPHOSDefinitions.h" // PTH
+#include "AliHLTCaloProcessor.h"
+#include "AliHLTCaloConstantsHandler.h"
+
+class AliHLTCaloDigitMaker;
+class AliHLTCaloDigitContainerDataStruct;
+class AliPHOSEmcBadChannelsMap;
+class AliPHOSEmcCalibData;
/**
* @class AliHLTPHOSDigitMakerComponent
*
* @ingroup alihlt_phos
*/
-class AliHLTPHOSDigitMakerComponent : public AliHLTPHOSProcessor
+class AliHLTPHOSDigitMakerComponent : public AliHLTCaloProcessor, public AliHLTCaloConstantsHandler
{
public:
/** Destructor */
virtual ~AliHLTPHOSDigitMakerComponent();
-
- /** Copy constructor */
- AliHLTPHOSDigitMakerComponent(const AliHLTPHOSDigitMakerComponent &) :
- AliHLTPHOSProcessor(),
- fDigitMakerPtr(0),
- fDigitContainerPtr(0)
- {
- //Copy constructor not implemented
- }
- /** Assignment */
- AliHLTPHOSDigitMakerComponent & operator = (const AliHLTPHOSDigitMakerComponent)
- {
- //Assignment
- return *this;
- }
-
/** interface function, see @ref AliHLTComponent for description */
const char* GetComponentID();
/** interface function, see @ref AliHLTComponent for description */
int DoInit(int argc, const char** argv);
- using AliHLTPHOSProcessor::DoEvent;
+ using AliHLTCaloProcessor::DoEvent;
/** interface function, see @ref AliHLTComponent for description */
virtual int Deinit(); ////////// PTH WARNING you should Define a class AliHLTPHOSModuleProcessor
+
+ /** Get bad channel map from CDB */
+ virtual int GetBCMFromCDB();
+
+ /** Get the ADC <-> Energy (GeV) gain factors */
+ virtual int GetGainsFromCDB();
+
private:
-
- /** Pointer to the digit maker it self */
- AliHLTPHOSDigitMaker *fDigitMakerPtr; //! transient
+
+ /** Copy constructor, prohibited */
+ AliHLTPHOSDigitMakerComponent(const AliHLTPHOSDigitMakerComponent &);
+
+ /** Assignment operator, prohibited */
+ AliHLTPHOSDigitMakerComponent & operator = (const AliHLTPHOSDigitMakerComponent);
+
+ /** Pointer to the digit maker itself */
+ AliHLTCaloDigitMaker *fDigitMakerPtr; //! transient
/** The output of the component, digits in a container */
- AliHLTPHOSDigitContainerDataStruct *fDigitContainerPtr; //! transient
+ AliHLTCaloDigitContainerDataStruct *fDigitContainerPtr; //! transient
+
+ /** Bad channel map */
+ AliPHOSEmcBadChannelsMap *fBadChannelMap; //! transient
+
+// /** Temporary holder for bad channel map */
+ //Bool_t ***fBadChannelMap; //! transient
+
+ /** Calibration data */
+ AliPHOSEmcCalibData *fCalibData; //! transient
+
+
+ /** Is the bad map initialised? */
+ Bool_t fBCMInitialised; //! transient
- /** Event count */
- // UInt_t fEvtCnt;
+ /** Are the gains initialised? */
+ Bool_t fGainsInitialised; //! transient
- static const AliHLTComponentDataType fgkInputDataTypes[]; //HLT input data type
+ ClassDef(AliHLTPHOSDigitMakerComponent, 0);
};
#endif