]>
Commit | Line | Data |
---|---|---|
f4d27262 | 1 | #ifndef ALIHLTPHOSFILEWRITERCOMPONENT_H |
2 | #define ALIHLTPHOSFILEWRITERCOMPONENT_H | |
acd526ae | 3 | |
d504c864 | 4 | //#include "AliHLTPHOSDefinitions.h" |
f4d27262 | 5 | #include <string> |
6 | #include "AliHLTPHOSCommonDefs.h" | |
f4d27262 | 7 | #include "Rtypes.h" |
6a8ab2ab | 8 | #include "AliHLTFileWriter.h" |
d504c864 | 9 | #include <vector> |
ab9c03b3 | 10 | #include "AliHLTPHOSConstants.h" |
6a8ab2ab | 11 | |
ab9c03b3 | 12 | using namespace PhosHLTConst; |
05be0766 | 13 | |
45c8f2b2 | 14 | class AliRawReaderMemory; |
15 | class AliCaloRawStream; | |
f4d27262 | 16 | class AliHLTPHOSRcuCellEnergyDataStruct; |
45c8f2b2 | 17 | class AliHLTPHOSFileWriterComponent; |
d504c864 | 18 | class AliHLTPHOSDDLPackedFileWriter; |
19 | class AliHLTPHOSCellEnergiesFileWriter; | |
20 | //class AliHLTFileWriter; | |
05be0766 | 21 | |
6a8ab2ab | 22 | class 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(); |
ab9c03b3 | 31 | virtual void GetInputDataTypes( std::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*/ | |
50 | int fEventCount; /**<Event counter*/ | |
51 | static const AliHLTComponentDataType fgkInputDataTypes[]; /**<Datatypes that can be given as input to this component*/ | |
acd526ae | 52 | }; |
acd526ae | 53 | #endif |