]> git.uio.no Git - u/mrichter/AliRoot.git/blob - HLT/PHOS/AliHLTPHOSRawAnalyzerComponent.h
Changes needed due to changes in AliHLTPHOSValidCellDataStruct.h
[u/mrichter/AliRoot.git] / HLT / PHOS / AliHLTPHOSRawAnalyzerComponent.h
1 #ifndef ALIHLTPHOSRAWANALYZERCOMPONENT_H
2 #define ALIHLTPHOSRAWANALYZERCOMPONENT_H
3
4 /* Copyright(c) 2006, ALICE Experiment at CERN, All rights reserved. *
5  * See cxx source for full Copyright notice                          */
6
7 #include "AliHLTProcessor.h"
8 #include "AliHLTPHOSRawAnalyzer.h"
9 #include "AliRawReaderMemory.h"
10 #include "AliCaloRawStream.h"
11 #include "AliHLTPHOSDefinitions.h"
12 #include "AliHLTPHOSCommonDefs.h"
13
14 class AliHLTPHOSRcuCellEnergyDataStruct;
15
16
17 class AliHLTPHOSRawAnalyzerComponent: public AliHLTProcessor
18 {
19  public:
20
21   AliHLTPHOSRawAnalyzerComponent();
22   ~AliHLTPHOSRawAnalyzerComponent();
23   AliHLTPHOSRawAnalyzerComponent(const AliHLTPHOSRawAnalyzerComponent & );
24   AliHLTPHOSRawAnalyzerComponent & operator = (const AliHLTPHOSRawAnalyzerComponent &)
25    {
26       return *this;
27    };
28
29   virtual int DoInit( int argc, const char** argv );
30   virtual int Deinit();
31   virtual int DoDeinit();
32   void DumpData(int gain);
33   void DumpData();
34   void DumpChannelData(Double_t *data); 
35   void SetEquippmentID(AliHLTUInt32_t id);
36   int GetEquippmentID();
37   void SetCoordinates( AliHLTUInt32_t equippmentID);
38   virtual const char* GetComponentID() = 0;
39   virtual void GetInputDataTypes(std::vector<AliHLTComponentDataType, std::allocator<AliHLTComponentDataType> >&);
40   virtual AliHLTComponentDataType GetOutputDataType();
41   virtual void GetOutputDataSize(unsigned long& constBase, double& inputMultiplier);
42   virtual AliHLTComponent* Spawn() = 0;
43   virtual int DoEvent(const AliHLTComponentEventData&, const AliHLTComponentBlockData*, AliHLTComponentTriggerData&, AliHLTUInt8_t*, AliHLTUInt32_t&, std::vector<AliHLTComponentBlockData, std::allocator<AliHLTComponentBlockData> >&);
44
45  protected:
46   AliHLTPHOSRawAnalyzer *analyzerPtr; 
47
48  private:
49   void Reset();
50   void ResetDataPtr();
51   void ResetDataPtr(int sampleCnt);
52   void ResetDataPtr(int startindex, int sampleCnt);
53   static int fEventCount;
54   AliHLTUInt32_t fEquippmentID;
55   AliHLTUInt16_t fRcuX;
56   AliHLTUInt16_t fRcuZ;
57   AliHLTUInt16_t fRcuRowOffeset;
58   AliHLTUInt16_t fRcuColOffeset;
59   AliHLTUInt16_t fModuleID;
60   Double_t fTmpChannelData[ALTRO_MAX_SAMPLES];
61   Double_t fMaxValues[N_MODULES][N_ROWS_MOD][N_COLUMNS_MOD][N_GAINS];
62   AliCaloRawStream *fPHOSRawStream;
63   AliRawReaderMemory *fRawMemoryReader;
64   AliHLTPHOSRcuCellEnergyDataStruct* fOutPtr;
65   static const AliHLTComponentDataType inputDataTypes[];
66 };
67 #endif