Add reaction plane to the header. Update the Lhyquid hypersurface parameterization...
[u/mrichter/AliRoot.git] / HLT / rec / AliRawReaderHLT.h
CommitLineData
9c7b5023 1//-*- Mode: C++ -*-
2// @(#) $Id: AliRawReaderHLT.h,v 1.1 2007/10/29 19:01:06 richterm Exp $
3
4#ifndef ALIRAWREADERHLT_H
5#define ALIRAWREADERHLT_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 *
9
10/** @file AliRawReaderHLT.h
11 @author Matthias Richter
12 @date
13 @brief AliRawReader implementation which replaces original input of
14 detectors with the appropriate HLT output. */
15
16// see below for class documentation
17// or
18// refer to README to build package
19// or
20// visit http://web.ift.uib.no/~kjeks/doc/alice-hlt
21
22#include "AliRawReader.h"
23#include "TString.h"
24
25/**
26 * @class AliRawReaderHLT
27 * Handler of HLTOUT data for AliRawReader input.
28 */
29class AliRawReaderHLT : public AliRawReader {
30 public:
31 /** constructor */
32 AliRawReaderHLT(AliRawReader* pParentReader, const char* options=NULL);
33 /** destructor */
34 virtual ~AliRawReaderHLT();
35
36 // interface methods of AliRawReader
37 UInt_t GetType() const;
38 UInt_t GetRunNumber() const;
39 const UInt_t* GetEventId() const;
40 const UInt_t* GetTriggerPattern() const;
41 const UInt_t* GetDetectorPattern() const;
42 const UInt_t* GetAttributes() const;
43 const UInt_t* GetSubEventAttributes() const;
44 UInt_t GetLDCId() const;
45 UInt_t GetGDCId() const;
46 UInt_t GetTimestamp() const;
47
48 const UInt_t* GetEquipmentAttributes() const;
49 Int_t GetEquipmentElementSize() const;
50 Int_t GetEquipmentHeaderSize() const;
51
52 Int_t GetEquipmentSize() const;
53 Int_t GetEquipmentType() const;
54 Int_t GetEquipmentId() const;
55 Bool_t ReadHeader();
56 Bool_t ReadNextData(UChar_t*& data);
57 Bool_t ReadNextInt(UInt_t& data);
58 Bool_t ReadNextShort(UShort_t& data);
59 Bool_t ReadNextChar(UChar_t& data);
60 Bool_t ReadNext(UChar_t* data, Int_t size);
61
62 Bool_t Reset();
63
64 Bool_t NextEvent();
65 Bool_t RewindEvents();
66
67 protected:
68
69 private:
70 /** standard constructor prohibited */
71 AliRawReaderHLT();
72 /** copy constructor prohibited */
73 AliRawReaderHLT(const AliRawReaderHLT&);
74 /** assignment operator prohibited */
75 AliRawReaderHLT& operator=(const AliRawReaderHLT&);
76
77 /** the rawreader */
78 AliRawReader* fpParentReader; //!transient
79
80 /** options */
81 TString fOptions; //!transient
82
83 ClassDef(AliRawReaderHLT, 0)
84};
85
86#define ALIHLTREC_LIBRARY "libHLTrec.so"
87#define ALIHLTREC_LIBRARY_VERSION 0
88#define ALIRAWREADERHLT_CREATE_INSTANCE "AliRawReaderHLTCreateInstance"
89
90#ifdef __cplusplus
91extern "C" {
92#endif
93 typedef AliRawReader* (*AliRawReaderHLTCreateInstance_t)(AliRawReader* pParentReader, const char* options);
94
95 /**
96 * Create an instance of the AliRawReader class
97 */
98 AliRawReader* AliRawReaderHLTCreateInstance(AliRawReader* pParentReader, const char* options);
99#ifdef __cplusplus
100}
101#endif
102#endif