]> git.uio.no Git - u/mrichter/AliRoot.git/blob - HLT/TPCLib/EVE/AliHLTTPCEVE.h
including cmath to be consistent with macosx
[u/mrichter/AliRoot.git] / HLT / TPCLib / EVE / AliHLTTPCEVE.h
1 //-*- Mode: C++ -*-
2 // $Id$
3
4 #ifndef ALIHLTTPCEVE_H
5 #define ALIHLTTPCEVE_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   AliHLTTPCEVE.h
11     @author Matthias Richter
12     @date   2008-11-22
13     @brief  AliEVE bindings for the HLT TPC.
14 */
15
16 #include "AliHLTLogging.h"
17
18 class TEvePointSet;
19 class TEveElement;
20 class AliRawReader;
21 class AliHLTOUT;
22 class AliHLTTPCClusterData;
23
24 /**
25  * @class AliHLTTPCEVE
26  * AliEVE bindings for the HLT TPC.
27  * The class provides methods to convert HLT TPC proprietary data structures
28  * to EVE objects.
29  * 
30  * @ingroup alihlt_tpc
31  */
32 class AliHLTTPCEVE : public AliHLTLogging {
33  public:
34   /** standard constructor */
35   AliHLTTPCEVE();
36   /** standard destructor */
37   virtual ~AliHLTTPCEVE();
38
39   /**
40    * Create EVE point collection from HLTOUT of HLT.Digits.root
41    * Calls ::MakePointSetFromHLTOUT(AliHLTOUT*, TEveElement*, Float_t)
42    * @param path        path of the digit file
43    * @param eventNo     event number to be displayed
44    * @param cont        EVE element collection
45    * @param maxR        geometrical cut, maximum radius of clusters
46    */
47   TEvePointSet* MakePointSetFromHLTDigits(const char* path, int eventNo, TEveElement* cont=0, Float_t maxR=270) const;
48
49   /**
50    * Create EVE point collection from HLTOUT from RawReader.
51    * Calls ::MakePointSetFromHLTOUT(AliHLTOUT*, TEveElement*, Float_t)
52    * @param pRawReader  the RawReader
53    * @param cont        EVE element collection
54    * @param maxR        geometrical cut, maximum radius of clusters
55    */
56   TEvePointSet* MakePointSetFromHLTOUT(AliRawReader* pRawReader, TEveElement* cont=0, Float_t maxR=270) const;
57
58   /**
59    * Create EVE point collection from HLTOUT instance.
60    * Base method to create EVE point list from HLTOUT.
61    * @param pHLTOUT     the HLTOUT instance
62    * @param cont        EVE element collection
63    * @param maxR        geometrical cut, maximum radius of clusters
64    */
65   TEvePointSet* MakePointSetFromHLTOUT(AliHLTOUT* pHLTOUT, TEveElement* cont=0, Float_t maxR=270) const;
66
67   /**
68    * Add clusters from AliHLTTPCClusterData set to EVE point collection.
69    * @param clusters    EVE point collection
70    * @param data        AliHLTTPCClusterData set
71    * @param sizeInByte  size of the buffer of the data set in byte
72    * @param slice       TPC slice number, determines ratotion of space points
73    * @param maxR        geometrical cut, maximum radius of clusters
74    */
75   int AddClusters(TEvePointSet* clusters, const AliHLTTPCClusterData* data, unsigned int sizeInByte, int slice, Float_t maxR) const;
76
77  protected:
78
79  private:
80   /** copy constructor prohibited */
81   AliHLTTPCEVE(const AliHLTTPCEVE&);
82   /** assignment operator prohibited */
83   AliHLTTPCEVE& operator=(const AliHLTTPCEVE&);
84
85   ClassDef(AliHLTTPCEVE, 0)
86 };
87 #endif