]> git.uio.no Git - u/mrichter/AliRoot.git/blame - HLT/PHOS/AliHLTPHOSRawAnalyzerComponent.h
New component for writing calibration data to fxs (Oystein)
[u/mrichter/AliRoot.git] / HLT / PHOS / AliHLTPHOSRawAnalyzerComponent.h
CommitLineData
ee7849e6 1#ifndef ALIHLTPHOSRAWANALYZERCOMPONENT_H
2#define ALIHLTPHOSRAWANALYZERCOMPONENT_H
3
cbab66dd 4/* Copyright(c) 2006, ALICE Experiment at CERN, All rights reserved. *
5 * See cxx source for full Copyright notice */
b60bd496 6#include "AliHLTPHOSRcuProcessor.h"
cbab66dd 7
2b7cf4fb 8class AliHLTPHOSRawAnalyzer;
2bcb5a06 9class AliHLTPHOSRcuCellEnergyDataStruct;
2b7cf4fb 10class AliHLTPHOSRcuChannelDataStruct;
e0c124c5 11class AliHLTPHOSMapper;
12class AliHLTDDLDecoder;
13class AliHLTAltroData;
43dd7c5e 14class AliHLTAltroBunch;
dbd79fad 15class AliHLTPHOSSanityInspector;
2bcb5a06 16
b60bd496 17class AliHLTPHOSRawAnalyzerComponent: public AliHLTPHOSRcuProcessor
cbab66dd 18{
19 public:
20 AliHLTPHOSRawAnalyzerComponent();
146c463a 21 virtual ~AliHLTPHOSRawAnalyzerComponent();
2b7cf4fb 22 virtual int DoInit(int argc =0, const char** argv = 0);
cbab66dd 23 virtual int Deinit();
ee7849e6 24 virtual const char* GetComponentID() = 0;
9be2600f 25 virtual void GetInputDataTypes( vector <AliHLTComponentDataType>& list);
cbab66dd 26 virtual AliHLTComponentDataType GetOutputDataType();
eccb54e8 27 virtual void GetOutputDataSize(unsigned long& constBase, double& inputMultiplier);
eae02153 28 virtual AliHLTComponent* Spawn() = 0;
cbab66dd 29 protected:
2b7cf4fb 30 AliHLTPHOSRawAnalyzer *fAnalyzerPtr; /**<Pointer to an analyzer object used for raw data anlysis*/
d2a0b488 31
ee7849e6 32 private:
d504c864 33 virtual int DoEvent( const AliHLTComponentEventData& evtData, const AliHLTComponentBlockData* blocks,
34 AliHLTComponentTriggerData& trigData, AliHLTUInt8_t* outputPtr,
35 AliHLTUInt32_t& size, vector<AliHLTComponentBlockData>& outputBlocks );
1804b020 36 using AliHLTPHOSRcuProcessor::DoEvent;
37
432edd34 38 void Reset();
2b7cf4fb 39 void ResetDataPtr(int startindex = 0, int sampleCnt = 0);
dbd79fad 40 void SetBaselines(const char* baselineFile);
2b7cf4fb 41 Bool_t fSendChannelData; /**<wether or not to send raw data from the component into shared memory*/
42 Double_t fTmpChannelData[ALTRO_MAX_SAMPLES]; /**<temporary variable to store raw samples from a single altro channel*/
b60bd496 43 Double_t fMaxValues[N_MODULES][N_ZROWS_MOD][N_XCOLUMNS_MOD][N_GAINS]; /**<array to store cell energies*/
dbd79fad 44 // AliHLTPHOSRcuCellEnergyDataStruct* fOutPtr; /**<Pointer to outputbuffer to write results from the component into shared memory*/
45
ab38011b 46 AliHLTPHOSRcuCellEnergyDataStruct* fOutPtr; //comment
47 AliHLTPHOSMapper *fMapperPtr; //comment
48 AliHLTDDLDecoder *fDecoderPtr; //comment
49 AliHLTAltroData *fAltroDataPtr; //comment
50 AliHLTAltroBunch *fAltroBunchPtr; //comment
51 AliHLTPHOSSanityInspector *fSanityInspectorPtr; //comment
52 Bool_t fUseBaselineSubtraction; //comment
53 Float_t fBaselines[N_XCOLUMNS_RCU][N_ZROWS_RCU][N_GAINS]; //comment
54 int fDebugCnt; //comment
dbd79fad 55
cbab66dd 56};
57#endif
05be0766 58