3 #ifndef ALIHLTTRIGGERPHOSMIP_H
4 #define ALIHLTTRIGGERPHOSMIP_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 AliHLTTriggerPhosMip.h
10 /// @author Svein Lindal
12 /// @brief HLT Minimum Ionizing Particle (MIP) trigger for PHOS
14 #include "AliHLTTrigger.h"
20 * @class AliHLTTriggerPhosMip
21 * HLT trigger component for Minimum Ionizing Particles (MIPs) in PHOS.
23 * Triggers on PHOS clusters containing total energy in the range
24 * fEMin < energy < fEMax spread out between fewer than fNCellsMax cells.
26 * <h2>General properties:</h2>
28 * Component ID: \b PhosMipTrigger <br>
29 * Library: \b libAliHLTTrigger.so <br>
30 * Input Data Types: kAliHLTDataTypeESDObject, kAliHLTDataTypeESDTree <br>
31 * Output Data Types: ::kAliHLTAnyDataType <br>
33 * <h2>Mandatory arguments:</h2>
34 * <!-- NOTE: ignore the \li. <i> and </i>: it's just doxygen formatting -->
36 * <h2>Optional arguments:</h2>
37 * <!-- NOTE: ignore the \li. <i> and </i>: it's just doxygen formatting -->
39 * <h2>Configuration:</h2>
40 * <!-- NOTE: ignore the \li. <i> and </i>: it's just doxygen formatting -->
41 * \li -emin <i> e </i> <br>
42 * minimum required energy of the cluster
44 * \li -emax <i> e </i> <br>
45 * maximum energy of the cluster
47 * \li -ncells <i> e </i> <br>
48 * Maximum number of cells in cluster
51 * By default, configuration is loaded from OCDB, can be overridden by
52 * component arguments.
54 * <h2>Default CDB entries:</h2>
55 * HLT/ConfigHLT/PhosMipTrigger: TObjString storing the arguments
57 * <h2>Performance:</h2>
60 * <h2>Memory consumption:</h2>
63 * <h2>Output size:</h2>
66 * \ingroup alihlt_trigger_components
69 class AliHLTTriggerPhosMip : public AliHLTTrigger
72 AliHLTTriggerPhosMip();
73 ~AliHLTTriggerPhosMip();
76 /// inherited from AliHLTTrigger: name of this trigger
77 virtual const char* GetTriggerName() const;
78 /// inherited from AliHLTComponent: create an instance
79 virtual AliHLTComponent* Spawn();
82 /// inherited from AliHLTComponent: handle the initialization
83 int DoInit(int argc, const char** argv);
85 /// inherited from AliHLTComponent: handle cleanup
88 /// inherited from AliHLTComponent: handle re-configuration event
89 int Reconfigure(const char* cdbEntry, const char* chainId);
91 /// inherited from AliHLTComponent, scan one argument and
93 int ScanConfigurationArgument(int argc, const char** argv);
95 /// inherited from AliHLTComponent
96 // Get a ratio by how much the data volume is shrunken or enhanced.
97 virtual void GetOutputDataSize(unsigned long& constBase, double& inputMultiplier);
101 /// inherited from AliHLTTrigger: calculate the trigger
102 virtual int DoTrigger();
104 /// Variables for triggger configuration
109 /// the default configuration entry for this component
110 static const char* fgkOCDBEntry; //!transient
112 ClassDef(AliHLTTriggerPhosMip, 0)
115 #endif //ALIHLTTRIGGERPHOSMIP_H