4 #ifndef ALIHLTOUTRAWREADER_H
5 #define ALIHLTOUTRAWREADER_H
6 /* This file is property of and copyright by the ALICE HLT Project *
7 * ALICE Experiment at CERN, All rights reserved. *
8 * See cxx source for full Copyright notice */
10 /** @file AliHLTOUTRawReader.h
11 @author Matthias Richter
13 @brief HLTOUT data wrapper for AliRawReader.
15 // see below for class documentation
17 // refer to README to build package
19 // visit http://web.ift.uib.no/~kjeks/doc/alice-hlt
21 #include "AliHLTOUTHomerBuffer.h"
24 class AliHLTHOMERReader;
27 * @class AliHLTOUTRawReader
28 * Handler of HLTOUT data for AliRawReader input.
30 class AliHLTOUTRawReader : public AliHLTOUTHomerBuffer {
33 AliHLTOUTRawReader(AliRawReader* pRawReader);
35 virtual ~AliHLTOUTRawReader();
40 /** standard constructor prohibited */
42 /** copy constructor prohibited */
43 AliHLTOUTRawReader(const AliHLTOUTRawReader&);
44 /** assignment operator prohibited */
45 AliHLTOUTRawReader& operator=(const AliHLTOUTRawReader&);
48 * Generate the index of the HLTOUT data from the data buffer.
54 * @param index [in] index of the block
55 * @param pBuffer [out] buffer of the selected data block
56 * @param size [out] size of the selected data block
58 int GetDataBuffer(AliHLTUInt32_t index, const AliHLTUInt8_t* &pBuffer,
59 AliHLTUInt32_t& size);
62 AliRawReader* fpRawreader; //!transient
64 /** current instance of the HOMER reader */
65 AliHLTHOMERReader* fpCurrent; //!transient
67 /** DDL id offset shift for index
68 * bit 16-31: DDL id, bit 0-15 block no
70 static const int fgkIdShift; //!transient
72 ClassDef(AliHLTOUTRawReader, 0)