]> git.uio.no Git - u/mrichter/AliRoot.git/blob - HLT/EMCAL/AliHLTEMCALClusterMonitorComponent.h
bug fix: call AliVVevent() in AliESDevent constructor
[u/mrichter/AliRoot.git] / HLT / EMCAL / AliHLTEMCALClusterMonitorComponent.h
1 /**************************************************************************
2  * This file is property of and copyright by the ALICE HLT Project        *
3  * All rights reserved.                                                   *
4  * INFN, Laboratori Nazionali di Frascati                                 *
5  * Primary Authors: Federico Ronchetti                                    *
6  *                                                                        *
7  * Permission to use, copy, modify and distribute this software and its   *
8  * documentation strictly for non-commercial purposes is hereby granted   *
9  * without fee, provided that the above copyright notice appears in all   *
10  * copies and that both the copyright notice and this permission notice   *
11  * appear in the supporting documentation. The authors make no claims     *
12  * about the suitability of this software for any purpose. It is          *
13  * provided "as is" without express or implied warranty.                  *
14  **************************************************************************/
15 #ifndef ALIHLTEMCALCLUSTERMONITORCOMPONENT_H
16 #define ALIHLTEMCALCLUSTERMONITORCOMPONENT_H
17
18 /** @file   AliHLTEMCALClusterMonitorComponent.h
19     @author Francesco Blanco
20     @date   
21     @brief  A histo maker component for EMCAL HLT
22  */
23
24
25
26 #include "AliHLTCaloProcessor.h"
27
28
29 class AliHLTEMCALClusterMonitor;
30
31 class AliHLTEMCALClusterMonitorComponent : public AliHLTCaloProcessor
32 {
33 public:
34
35         /** Constructor */
36         AliHLTEMCALClusterMonitorComponent();
37
38         /** Destructor */
39         virtual ~AliHLTEMCALClusterMonitorComponent();
40
41
42         /** interface function, see @ref AliHLTComponent for description */
43         const char* GetComponentID();
44
45         /** interface function, see @ref AliHLTComponent for description */
46         void GetInputDataTypes(std::vector<AliHLTComponentDataType>& list);
47
48         /** interface function, see @ref AliHLTComponent for description */
49         AliHLTComponentDataType GetOutputDataType();
50
51         /** interface function, see @ref AliHLTComponent for description */
52         void GetOutputDataSize(unsigned long& constBase, double& inputMultiplier);
53
54         /** interface function, see @ref AliHLTComponent for description */
55         int DoEvent(const AliHLTComponentEventData& evtData, const AliHLTComponentBlockData* blocks,
56                         AliHLTComponentTriggerData& /*trigData*/, AliHLTUInt8_t* /*outputPtr*/, AliHLTUInt32_t& /*size*/,
57                         std::vector<AliHLTComponentBlockData>& /*outputBlocks*/);
58
59         /** interface function, see @ref AliHLTComponent for description */
60         AliHLTComponent* Spawn();
61
62 protected:
63
64         /** interface function, see @ref AliHLTComponent for description */
65
66         int DoInit(int argc, const char** argv);
67         int DoDeinit() {return 0;};
68
69         using AliHLTCaloProcessor::DoEvent;
70
71         /** interface function, see @ref AliHLTComponent for description */
72         virtual int Deinit(); ////////// PTH WARNING
73
74         
75
76 private:
77         TString fRootFileName;
78         int fPushFraction;
79         int fLocalEventCount;
80         int fBeVerbose;
81
82         /** Pointer to the histo maker itself */
83         AliHLTEMCALClusterMonitor *fHistoMakerPtr;                    //! transient
84
85         
86         AliHLTEMCALClusterMonitorComponent(const AliHLTEMCALClusterMonitorComponent & );
87         AliHLTEMCALClusterMonitorComponent & operator = (const AliHLTEMCALClusterMonitorComponent &);
88 };
89
90 #endif
91