]> git.uio.no Git - u/mrichter/AliRoot.git/blame - HLT/PHOS/AliHLTPHOSFileWriterComponent.h
New component for writing calibration data to fxs (Oystein)
[u/mrichter/AliRoot.git] / HLT / PHOS / AliHLTPHOSFileWriterComponent.h
CommitLineData
f4d27262 1#ifndef ALIHLTPHOSFILEWRITERCOMPONENT_H
2#define ALIHLTPHOSFILEWRITERCOMPONENT_H
56673b84 3/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
acd526ae 5
f4d27262 6#include <string>
f4d27262 7#include "Rtypes.h"
6a8ab2ab 8#include "AliHLTFileWriter.h"
d504c864 9#include <vector>
ab9c03b3 10#include "AliHLTPHOSConstants.h"
6a8ab2ab 11
ab9c03b3 12using namespace PhosHLTConst;
05be0766 13
45c8f2b2 14class AliRawReaderMemory;
15class AliCaloRawStream;
f4d27262 16class AliHLTPHOSRcuCellEnergyDataStruct;
45c8f2b2 17class AliHLTPHOSFileWriterComponent;
d504c864 18class AliHLTPHOSDDLPackedFileWriter;
19class AliHLTPHOSCellEnergiesFileWriter;
20//class AliHLTFileWriter;
05be0766 21
6a8ab2ab 22class AliHLTPHOSFileWriterComponent:public AliHLTFileWriter
acd526ae 23{
24 public:
25 AliHLTPHOSFileWriterComponent();
f4d27262 26 virtual ~AliHLTPHOSFileWriterComponent();
27 int AddDataType(string dataType);
f4d27262 28 virtual int Deinit();
29 virtual int DoDeinit();
f4d27262 30 virtual const char* GetComponentID();
7c4091c1 31 virtual void GetInputDataTypes( vector <AliHLTComponentDataType>&);
f4d27262 32 virtual AliHLTComponentDataType GetOutputDataType();
33 virtual void GetOutputDataSize(unsigned long& constBase, double& inputMultiplier);
34 virtual AliHLTComponent* Spawn();
acd526ae 35
f4d27262 36 protected:
acd526ae 37
f4d27262 38 private:
6a8ab2ab 39 Bool_t IsRegisteredDataType(const AliHLTComponentDataType&);
f4d27262 40 AliHLTPHOSFileWriterComponent(const AliHLTPHOSFileWriterComponent & );
41 AliHLTPHOSFileWriterComponent & operator = (const AliHLTPHOSFileWriterComponent)
42 {
43 return *this;
44 };
d504c864 45 AliHLTPHOSCellEnergiesFileWriter *fCellEnergiesFileWriterPtr; /**<to write celle energies to files*/
46 AliHLTPHOSDDLPackedFileWriter *fDDLPackedFileWriterPtr ; /**<to write untouched DDL raw data to files*/
47 string fDirectory; /**<target directory for files*/
48 string fFilename; /**<the basename of the output file*/
49 AliHLTComponentDataType fDataTypesToFile[N_DATATYPES]; /**<Array for registering datatypes that should be written to files*/
ab38011b 50 int fEvtCnt; /**<Event counter*/
d504c864 51 static const AliHLTComponentDataType fgkInputDataTypes[]; /**<Datatypes that can be given as input to this component*/
acd526ae 52};
acd526ae 53#endif