3 #ifndef ALIHLTTRIGGERBARRELMULTIPLICITY_H
4 #define ALIHLTTRIGGERBARRELMULTIPLICITY_H
5 //* This file is property of and copyright by the ALICE HLT Project *
6 //* ALICE Experiment at CERN, All rights reserved. *
7 //* See cxx source for full Copyright notice *
9 /// @file AliHLTTriggerBarrelMultiplicity.h
10 /// @author Matthias Richter
12 /// @brief HLT trigger component for charged particle multiplicity in
13 /// the central barrel.
15 #include "AliHLTTrigger.h"
20 * @class AliHLTTriggerBarrelMultiplicity
21 * HLT trigger component for charged particle multiplicity in the
24 * Triggers on charged particle number in a certain pt range.
26 * <h2>General properties:</h2>
28 * Component ID: \b BarrelMultiplicityTrigger <br>
29 * Library: \b libAliHLTTrigger.so <br>
30 * Input Data Types: kAliHLTDataTypeESDObject, kAliHLTDataTypeESDTree
31 * kAliHLTDataTypeTrack <br>
32 * Output Data Types: ::kAliHLTAnyDataType <br>
34 * <h2>Mandatory arguments:</h2>
35 * <!-- NOTE: ignore the \li. <i> and </i>: it's just doxygen formatting -->
37 * <h2>Optional arguments:</h2>
38 * <!-- NOTE: ignore the \li. <i> and </i>: it's just doxygen formatting -->
40 * <h2>Configuration:</h2>
41 * <!-- NOTE: ignore the \li. <i> and </i>: it's just doxygen formatting -->
42 * \li -mintracks <i> n </i> <br>
43 * required number of tracks for a trigger
44 * \li -minpt <i> pt </i> <br>
45 * required minimum pt for a trigger
46 * \li -maxpt <i> pt </i> <br>
47 * required maximum pt for a trigger
49 * By default, configuration is loaded from OCDB, can be overridden by
50 * component arguments.
52 * <h2>Default CDB entries:</h2>
53 * HLT/ConfigHLT/BarrelMultiplicityTrigger: TObjString storing the arguments
55 * <h2>Performance:</h2>
58 * <h2>Memory consumption:</h2>
61 * <h2>Output size:</h2>
64 * \ingroup alihlt_trigger_components
66 class AliHLTTriggerBarrelMultiplicity : public AliHLTTrigger
69 AliHLTTriggerBarrelMultiplicity();
70 ~AliHLTTriggerBarrelMultiplicity();
72 /// inherited from AliHLTTrigger: name of this trigger
73 virtual const char* GetTriggerName() const;
74 /// inherited from AliHLTComponent: create an instance
75 virtual AliHLTComponent* Spawn();
78 /// inherited from AliHLTComponent: handle the initialization
79 int DoInit(int argc, const char** argv);
81 /// inherited from AliHLTComponent: handle cleanup
84 /// inherited from AliHLTComponent: handle re-configuration event
85 int Reconfigure(const char* cdbEntry, const char* chainId);
87 /// inherited from AliHLTComponent, scan one argument and
89 int ScanConfigurationArgument(int argc, const char** argv);
92 /// inherited from AliHLTTrigger: calculate the trigger
93 virtual int DoTrigger();
95 /// check whether a track meets the criteria
97 bool CheckCondition(T* track);
100 float fPtMin; //! transient
102 float fPtMax; //! transient
103 /// required number of tracks
104 int fMinTracks; //!transient
106 /// the default configuration entry for this component
107 static const char* fgkOCDBEntry; //!transient
109 ClassDef(AliHLTTriggerBarrelMultiplicity, 0)
111 #endif //ALIHLTTRIGGERBARRELMULTIPLICITY_H