]> git.uio.no Git - u/mrichter/AliRoot.git/blame - HLT/PHOS/AliHLTPHOSModuleMergerComponent.h
Coding conventions & doccumentation
[u/mrichter/AliRoot.git] / HLT / PHOS / AliHLTPHOSModuleMergerComponent.h
CommitLineData
67b4900f 1#ifndef ALIHLTPHOSMODULEMERGERCOMPONENT_H
2#define ALIHLTPHOSMODULEMERGERCOMPONENT_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 "AliHLTPHOSDefinitions.h"
415cfd05 9#include "AliHLTPHOSCommonDefs.h"
67b4900f 10
415cfd05 11class AliHLTPHOSModuleMergerComponent:public AliHLTProcessor
67b4900f 12{
13 public:
14 AliHLTPHOSModuleMergerComponent();
ed7c7c43 15 virtual ~AliHLTPHOSModuleMergerComponent();
67b4900f 16 AliHLTPHOSModuleMergerComponent(const AliHLTPHOSModuleMergerComponent & );
17 AliHLTPHOSModuleMergerComponent & operator = (const AliHLTPHOSModuleMergerComponent &)
05be0766 18 {
67b4900f 19 return *this;
20 };
ed7c7c43 21 virtual int DoInit(int argc =0, const char** argv = 0);
67b4900f 22 virtual int Deinit();
23 virtual int DoDeinit();
d504c864 24 virtual int DoEvent( const AliHLTComponentEventData& evtData, const AliHLTComponentBlockData* blocks,
25 AliHLTComponentTriggerData& trigData, AliHLTUInt8_t* outputPtr,
26 AliHLTUInt32_t& size, vector<AliHLTComponentBlockData>& outputBlocks );
27
ed7c7c43 28 void DumpData(int gain =0);
d504c864 29 const int GetEquippmentId() const;
05be0766 30 virtual const char* GetComponentID();
d504c864 31 virtual void GetInputDataTypes( std::vector <AliHLTComponentDataType>& list);
67b4900f 32 virtual AliHLTComponentDataType GetOutputDataType();
33 virtual void GetOutputDataSize(unsigned long& constBase, double& inputMultiplier);
ed7c7c43 34 void SetEquippmentId(int id = 0);
bd3d5aa2 35 virtual AliHLTComponent* Spawn();
415cfd05 36
67b4900f 37 protected:
67b4900f 38 void Reset();
39 void ResetDataPtr();
40
41 private:
d504c864 42 int fPhosEventCount; /**<event counter*/
ed7c7c43 43 AliHLTUInt32_t fEquippmentID; /**<Eguippment ID as given by ALICE*/
44 Double_t fTmpChannelData[ALTRO_MAX_SAMPLES]; /**<Array to tmporarily store samples from a single ALTRO*/
45 Double_t fMaxValues[N_MODULES][N_ROWS_MOD][N_COLUMNS_MOD][N_GAINS]; /**<Tower/Crystal energies*/
46 static const AliHLTComponentDataType fgkInputDataTypes[]; /**<The input datatypes the component can recieve (obsolete ?)*/
47 static const AliHLTComponentDataType fgkOutputDataType; /**<The type of date the compnent writes to shared memory */
67b4900f 48};
49
50#endif