]> git.uio.no Git - u/mrichter/AliRoot.git/blame - HLT/BASE/AliHLTTriggerMenuItem.h
moving trigger description classes to HLTbase to make them commonly available
[u/mrichter/AliRoot.git] / HLT / BASE / AliHLTTriggerMenuItem.h
CommitLineData
e2bb8ddd 1#ifndef ALIHLTTRIGGERMENUITEM_H
2#define ALIHLTTRIGGERMENUITEM_H
3/* This file is property of and copyright by the ALICE HLT Project *
4 * ALICE Experiment at CERN, All rights reserved. *
5 * See cxx source for full Copyright notice */
6
7/// @file AliHLTTriggerMenuItem.h
8/// @author Artur Szostak <artursz@iafrica.com>
9/// @date 19 Dec 2008
10/// @brief Declaration of the AliHLTTriggerMenuItem class.
11
12#include "TObject.h"
13#include "TString.h"
14#include "TArrayL.h"
15
16/**
17 * \class AliHLTTriggerMenuItem
18 * TODO
19 */
20class AliHLTTriggerMenuItem : public TObject
21{
22 public:
23
24 /**
25 * Default constructor.
26 */
27 AliHLTTriggerMenuItem();
28
29 /**
30 * Default destructor.
31 */
32 virtual ~AliHLTTriggerMenuItem();
33
34 /**
35 * Inherited from TObject, this prints the contents of the menu item.
36 * \param option Can be "compact", which will print in the compact format.
37 */
38 virtual void Print(Option_t* option = "") const;
39
52f67e50 40 /**
41 * Returns the optional comment string.
42 */
43 const char* Description() const { return fDescription.Data(); }
44
45 /**
46 * Set the optional comment string.
47 */
48 void Description(const char* value) { fDescription = value; }
49
e2bb8ddd 50 /**
51 * Returns the trigger condition expression.
52 */
53 const char* TriggerCondision() const { return fConditionExpr.Data(); }
54
55 /**
56 * Set the trigger condition expression.
57 */
58 void TriggerCondision(const char* value) { fConditionExpr = value; }
59
60 /**
61 * Returns the trigger domain merging expression.
62 */
63 const char* MergeExpression() const { return fDomainExpr.Data(); }
64
65 /**
66 * Set the trigger domain merging expression.
67 */
68 void MergeExpression(const char* value) { fDomainExpr = value; }
69
70 /**
71 * Returns the pre-scalar value.
72 */
73 UInt_t PreScalar() const { return fPrescalar; }
74
75 /**
76 * Set the pre-scalar value. A value of zero turns off the prescalar.
77 */
78 void PreScalar(UInt_t value) { fPrescalar = value; }
79
80 private:
81
52f67e50 82 TString fDescription; /// Optional description or comment string.
e2bb8ddd 83 TString fConditionExpr; /// The trigger condition expression.
84 TString fDomainExpr; /// Trigger domain merging expression.
85 UInt_t fPrescalar; /// Pre-scalar value used to optionally reduce the trigger rate. Every modulus n'th event is triggered, where n equals the pre-scalar value.
86
52f67e50 87 ClassDef(AliHLTTriggerMenuItem, 2) // Trigger menu item for global HLT trigger.
e2bb8ddd 88};
89
90#endif // ALIHLTTRIGGERMENUITEM_H
91