]> git.uio.no Git - u/mrichter/AliRoot.git/blame - HLT/PHOS/AliHLTPHOSMonitorTriggerComponent.h
Update From Debojit
[u/mrichter/AliRoot.git] / HLT / PHOS / AliHLTPHOSMonitorTriggerComponent.h
CommitLineData
1b41ab20 1//-*- Mode: C++ -*-
2// $Id$
3
d8122453 4/**************************************************************************
5 * This file is property of and copyright by the ALICE HLT Project *
6 * All rights reserved. *
7 * *
8 * Primary Authors: Oystein Djuvsland *
9 * *
10 * Permission to use, copy, modify and distribute this software and its *
11 * documentation strictly for non-commercial purposes is hereby granted *
12 * without fee, provided that the above copyright notice appears in all *
13 * copies and that both the copyright notice and this permission notice *
14 * appear in the supporting documentation. The authors make no claims *
15 * about the suitability of this software for any purpose. It is *
16 * provided "as is" without express or implied warranty. *
17 **************************************************************************/
18
19#ifndef ALIHLTPHOSMONITORTRIGGERCOMPONENT_H
20#define ALIHLTPHOSMONITORTRIGGERCOMPONENT_H
21
22/**
23 * Monitor component
24 *
25 * @file AliHLTPHOSMonitorTriggerComponent.h
26 * @author Oystein Djuvsland
27 * @date
28 * @brief A monitor trigger component
29*/
30
31// see below for class documentation
32// or
33// refer to README to build package
34// or
35// visit http://web.ift.uib.no/~kjeks/doc/alice-hlt
36
bc304d87 37#include "AliHLTCaloProcessor.h"
d8122453 38
7fc04b67 39class AliHLTCaloClusterHeaderStruct;
d8122453 40
41/**
42 * @class AliHLTPHOSMonitorTriggerComponent
43 *
44 * @ingroup alihlt_phos
45 */
46
bc304d87 47class AliHLTPHOSMonitorTriggerComponent: public AliHLTCaloProcessor
d8122453 48{
49 public:
50
51 /** Constructor */
52 AliHLTPHOSMonitorTriggerComponent();
53
54 /** Destructor */
55 virtual ~AliHLTPHOSMonitorTriggerComponent();
56
57 /** Copy constructor */
58 AliHLTPHOSMonitorTriggerComponent(const AliHLTPHOSMonitorTriggerComponent &) :
bc304d87 59 AliHLTCaloProcessor(),
d8122453 60 fCheckClusterEnergy(false),
61 fCheckClusterMultiplicities(false),
62 fClusterEnergyThreshold(1),
63 fMultiplicityThreshold(5),
64 fMultEnergyThreshold(0.5),
65 fDigitMultiplicityThreshold(16),
e304ea31 66 fMultDigitMultiplicityThreshold(9),
67 fLowerCentrality(0),
68 fUpperCentrality(0)
d8122453 69 {
70 //Copy constructor not implemented
71 }
72
73 /** Assignment */
8eb80570 74 AliHLTPHOSMonitorTriggerComponent & operator = (const AliHLTPHOSMonitorTriggerComponent&)
d8122453 75 {
76 //Assignment
77 return *this;
78 }
79
80 /** interface function, see @ref AliHLTComponent for description */
81 const char* GetComponentID();
82
83 /** interface function, see @ref AliHLTComponent for description */
84 void GetInputDataTypes(std::vector<AliHLTComponentDataType>& list);
85
86 /** interface function, see @ref AliHLTComponent for description */
87 AliHLTComponentDataType GetOutputDataType();
88
89 /** interface function, see @ref AliHLTComponent for description */
90 void GetOutputDataSize(unsigned long& constBase, double& inputMultiplier);
91
92 /** interface function, see @ref AliHLTComponent for description */
93
bc304d87 94 using AliHLTCaloProcessor::DoEvent;
d8122453 95 int DoEvent(const AliHLTComponentEventData& evtData, const AliHLTComponentBlockData* blocks,
96 AliHLTComponentTriggerData& trigData, AliHLTUInt8_t* outputPtr, AliHLTUInt32_t& size,
97 std::vector<AliHLTComponentBlockData>& outputBlocks);
98 // Int_t DoEvent( const AliHLTComponentEventData& evtData, AliHLTComponentTriggerData& trigData);
99 /** interface function, see @ref AliHLTComponent for description */
100 AliHLTComponent* Spawn();
101
102protected:
103
104 /** interface function, see @ref AliHLTComponent for description */
105 int DoInit(int argc, const char** argv);
106
107 /** interface function, see @ref AliHLTComponent for description */
108 int Deinit();
109
7fc04b67 110 Bool_t CheckClusters(AliHLTCaloClusterHeaderStruct* clusterHeader);
d8122453 111
112private:
113
114 Bool_t fCheckClusterEnergy; //COMMENT
115 Bool_t fCheckClusterMultiplicities; //COMMENT
116
117 Float_t fClusterEnergyThreshold; //COMMENT
118 UInt_t fMultiplicityThreshold; //COMMENT
119 Float_t fMultEnergyThreshold; //COMMENT
fc7132e2 120 UInt_t fDigitMultiplicityThreshold; //COMMENT
121 UInt_t fMultDigitMultiplicityThreshold; //COMMENT
e304ea31 122
123 Float_t fLowerCentrality; //COMMENT
124 Float_t fUpperCentrality; //COMMENT
125
126
127 /** interface function, see @ref AliHLTComponent for description */
128 static const AliHLTComponentDataType fgkInputDataTypes[]; //COMMENT
129
d8122453 130
131};
132
133#endif