]> git.uio.no Git - u/mrichter/AliRoot.git/blob - HLT/PHOS/AliHLTPHOSTreeMaker.h
- handling of global AliHLTSystem singleton moved to BASE
[u/mrichter/AliRoot.git] / HLT / PHOS / AliHLTPHOSTreeMaker.h
1  
2  /**************************************************************************
3  * This file is property of and copyright by the ALICE HLT Project        * 
4  * All rights reserved.                                                   *
5  *                                                                        *
6  * Primary Authors: Oystein Djuvsland                                     *
7  *                                                                        *
8  * Permission to use, copy, modify and distribute this software and its   *
9  * documentation strictly for non-commercial purposes is hereby granted   *
10  * without fee, provided that the above copyright notice appears in all   *
11  * copies and that both the copyright notice and this permission notice   *
12  * appear in the supporting documentation. The authors make no claims     *
13  * about the suitability of this software for any purpose. It is          * 
14  * provided "as is" without express or implied warranty.                  *
15  **************************************************************************/
16
17
18 #ifndef ALIHLTPHOSTREEMAKER_H
19 #define ALIHLTPHOSTREEMAKER_H
20
21 /**
22  * Class makes tree of digits of the class AliHLTPHOSDigit 
23  * stored in an TClonesArray
24  *
25  * @file   AliHLTPHOSTreeMaker.h
26  * @author Oystein Djuvsland
27  * @date
28  * @brief  Tree maker  for PHOS HLT
29  */
30
31 #include "AliHLTPHOSBase.h"
32 #include "TTree.h"
33 class AliHLTPHOSDigitContainerDataStruct;
34
35 class TClonesArray;
36 //class TTree;
37
38
39 /** 
40  * @class AliHLTPHOSTreeMaker
41  * Tree maker for PHOS HLT. Takes AliHLTPHOSDigitContainerDataStruct as input,
42  * makes a TClonesArray of objecst of the class AliHLTPHOSDigit, and then makes
43  * a tree out of it.
44  *
45  * @ingroup alihlt_phos
46  */
47 class AliHLTPHOSTreeMaker : public AliHLTPHOSBase
48 {
49 public:
50
51   /** Constructor */
52   AliHLTPHOSTreeMaker();
53
54   /** Destructor */ 
55   ~AliHLTPHOSTreeMaker();
56
57   /** 
58    * Make a TClonesArray AliHLTPHOSDigits from a container of digit structs
59    * @param digitContainer is the container of digit structs
60    * @param nDigits is the number of digits in the container
61    * @return the number of digits
62    */
63   Int_t MakeDigitArray(AliHLTPHOSDigitContainerDataStruct* digitContainer, Int_t nDigits);
64
65   /** Fill the digit tree */
66   void FillDigitTree();
67   
68   /** Reset the digit tree */
69   void ResetDigitTree() { fDigitTreePtr->Reset(); }
70   
71   /** Set the digit tree */
72   void SetDigitTree(TTree* tree);
73   
74   /** 
75    * Get the digit tree 
76    * @return a pointer to the tree
77    */
78   TTree* GetDigitTree() { return fDigitTreePtr; }
79   
80 private:
81
82   /** The array of digit object */
83   TClonesArray *fDigitArrayPtr;     //COMMENT
84
85   /** The digit tree */
86   TTree* fDigitTreePtr;             //COMMENT
87  
88   ClassDef(AliHLTPHOSTreeMaker, 1);
89
90 };
91
92
93 #endif