Updated macros for PHOS alignment calculation
[u/mrichter/AliRoot.git] / HLT / trigger / AliHLTTriggerGammaConversion.h
CommitLineData
fc2b0c6d 1//-*- Mode: C++ -*-
f6f84c8e 2// $Id$
fc2b0c6d 3
4#ifndef ALIHLTTRIGGERGAMMACONVERSION_H
5#define ALIHLTTRIGGERGAMMACONVERSION_H
6//* This file is property of and copyright by the ALICE HLT Project *
7//* ALICE Experiment at CERN, All rights reserved. *
8//* See cxx source for full Copyright notice *
9
10/// @file AliHLTTriggerGammaConversion.h
11/// @author Kenneth Aamodt
12/// @date 2009-11-01
13/// @brief HLT trigger component for gamma conversions.
14///
15
16#include "AliHLTTrigger.h"
17
18class AliESDtrack;
19
20/**
21 * @class AliHLTTriggerGammaConversion
22 * HLT trigger component for gamma conversions
23 *
24 *
25 * Triggers on gamma conversions wich satisfy cuts on invariant mass, radius, dca and Pt.
26 *
27 * <h2>General properties:</h2>
28 *
29 * Component ID: \b GammaConversionTrigger <br>
30 * Library: \b libAliHLTTrigger.so <br>
31 * Input Data Types: kAliHLTDataTypeESDObject <br>
32 * Output Data Types: ::kAliHLTAnyDataType <br>
33 *
34 * <h2>Mandatory arguments:</h2>
35 * <!-- NOTE: ignore the \li. <i> and </i>: it's just doxygen formatting -->
36 *
37 * <h2>Optional arguments:</h2>
38 * <!-- NOTE: ignore the \li. <i> and </i>: it's just doxygen formatting -->
39 *
40 * <h2>Configuration:</h2>
41 * <!-- NOTE: ignore the \li. <i> and </i>: it's just doxygen formatting -->
42 * \li -max-invmass <i> mass </i> <br>
43 * invariant mass of the two gamma daughters
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
48 * \li -max-dca <i> distance </i> <br>
49 * dca between the two gamma daughters
50 * \li -max-radius <i> r </i> <br>
51 * maximum radius from the collision point in xy-plane
52
53 *
54 * By default, configuration is loaded from OCDB, can be overridden by
55 * component arguments.
56 *
57 * <h2>Default CDB entries:</h2>
58 * HLT/ConfigHLT/GammaConversionTrigger: TObjString storing the arguments
59 *
60 * <h2>Performance:</h2>
61 *
62 *
63 * <h2>Memory consumption:</h2>
64 *
65 *
66 * <h2>Output size:</h2>
67 *
68 *
69 * \ingroup alihlt_trigger_components
70 */
71class AliHLTTriggerGammaConversion : public AliHLTTrigger
72{
73 public:
74 AliHLTTriggerGammaConversion();
75 ~AliHLTTriggerGammaConversion();
76
77 /// inherited from AliHLTTrigger: name of this trigger
78 virtual const char* GetTriggerName() const;
79 /// inherited from AliHLTComponent: create an instance
80 virtual AliHLTComponent* Spawn();
81
82 protected:
83 /// inherited from AliHLTComponent: handle the initialization
84 int DoInit(int argc, const char** argv);
85
86 /// inherited from AliHLTComponent: handle cleanup
87 int DoDeinit();
88
89 /// inherited from AliHLTComponent: handle re-configuration event
90 int Reconfigure(const char* cdbEntry, const char* chainId);
91
92 /// inherited from AliHLTComponent, scan one argument and
93 /// its parameters
94 int ScanConfigurationArgument(int argc, const char** argv);
95
96 private:
97
98 /// inherited from AliHLTTrigger: calculate the trigger
99 virtual int DoTrigger();
100
101 /// mass cut, maximum
102 double fMaxInvMass; //! transient
103 /// pt cut, maximum
104 double fPtMax; //! transient
105 /// pt cut, minimum
106 double fPtMin; //! transient
107 /// maximum dca to qualify as a gamma conversion
108 double fMaxDca; //! transient
109 /// maximum radius from collision point in xy-plane
110 double fMaxR;
111
112 /// number of reconstructed gammas
113 Int_t fNReconstructedGammas; //! transient
114
115 /// the default configuration entry for this component
116 static const char* fgkOCDBEntry; //!transient
117
118 ClassDef(AliHLTTriggerGammaConversion, 0)
119};
120#endif //ALIHLTTRIGGERGAMMACONVERSION_H