]> git.uio.no Git - u/mrichter/AliRoot.git/blame - HLT/trigger/AliHLTTriggerITSMultiplicity.h
Unregistering CINT callback in destructor for proper cleanup.
[u/mrichter/AliRoot.git] / HLT / trigger / AliHLTTriggerITSMultiplicity.h
CommitLineData
5f4502cc 1//-*- Mode: C++ -*-
2// $Id: AliHLTTriggerITSMultiplicity.h
3#ifndef ALIHLTTRIGGERITSMULTIPLICITY_H
4#define ALIHLTTRIGGERITSMULTIPLICITY_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 *
8
9/// @file AliHLTTriggerITSMultiplicity.h
10/// @author Gaute Ovrebekk
11/// @date 2009-10-22
12/// @brief HLT trigger component for cluster multiplicity
13/// in ITS.
14
15#include "AliHLTTrigger.h"
16
17/**
18 * @class AliHLTTriggerITSMultiplicity
19 * HLT trigger component for cluster multiplicity in ITS.
20 *
21 * Triggers if number of clusters if over the set limit.
22 *
23 * <h2>General properties:</h2>
24 *
25 * Component ID: \b ITSMultiplicityTrigger <br>
26 * Library: \b libAliHLTTrigger.so <br>
27 * Input Data Types: kAliHLTDataTypeClusters <br>
28 * Output Data Types: ::kAliHLTAnyDataType <br>
29 *
30 * <h2>Mandatory arguments:</h2>
31 * <!-- NOTE: ignore the \li. <i> and </i>: it's just doxygen formatting -->
32 *
33 * <h2>Optional arguments:</h2>
34 * <!-- NOTE: ignore the \li. <i> and </i>: it's just doxygen formatting -->
35 *
36 * <h2>Configuration:</h2>
37 * <!-- NOTE: ignore the \li. <i> and </i>: it's just doxygen formatting -->
38 * \li -nclusters <i> n </i> <br>
39 * Number of clusters to trigger on.
40 *
41 * By default, configuration is loaded from OCDB, can be overridden by
42 * component arguments.
43 *
44 * <h2>Default CDB entries:</h2>
45 * HLT/ConfigHLT/ITSMultiplicityTrigger: TObjString storing the arguments
46 *
47 * <h2>Performance:</h2>
48 *
49 *
50 * <h2>Memory consumption:</h2>
51 *
52 *
53 * <h2>Output size:</h2>
54 *
55 *
56 * \ingroup alihlt_trigger_components
57 */
58class AliHLTTriggerITSMultiplicity : public AliHLTTrigger
59{
60 public:
61 AliHLTTriggerITSMultiplicity();
62 ~AliHLTTriggerITSMultiplicity();
63
64 /// inherited from AliHLTTrigger: name of this trigger
65 virtual const char* GetTriggerName() const;
66 /// inherited from AliHLTComponent: create an instance
67 virtual AliHLTComponent* Spawn();
68
69 protected:
70 /// inherited from AliHLTComponent: handle the initialization
71 int DoInit(int argc, const char** argv);
72
73 /// inherited from AliHLTComponent: handle cleanup
74 int DoDeinit();
75
76 /// inherited from AliHLTComponent: handle re-configuration event
77 int Reconfigure(const char* cdbEntry, const char* chainId);
78
79 /// inherited from AliHLTComponent, scan one argument and
80 /// its parameters
81 int ScanConfigurationArgument(int argc, const char** argv);
82
83 private:
84
85 /// inherited from AliHLTTrigger: calculate the trigger
86 virtual int DoTrigger();
87
88 /// Number of clusters to trigger on
89 int fnClusters; //! transient
90
91 /// the default configuration entry for this component
92 static const char* fgkOCDBEntry; //!transient
93
94 ClassDef(AliHLTTriggerITSMultiplicity, 0)
95};
96#endif //ALIHLTTRIGGERITSMULTIPLICITY_H