ATLAS Offline Software
Loading...
Searching...
No Matches
Trigger/TrigEvent/TrigDecisionEvent/TrigDecisionEvent/TrigDecision.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2026 CERN for the benefit of the ATLAS collaboration
3*/
4
5/**********************************************************************************
6 * @Project: HLT
7 * @Package: TrigDecisionEvent
8 * @class : TrigDecision
9 *
10 * @brief transient trigger decision class
11 *
12 * @author Nicolas Berger <Nicolas.Berger@cern.ch> - CERN
13 * @author Till Eifert <Till.Eifert@cern.ch> - U. of Geneva, Switzerland
14 * @author Ricardo Goncalo <Jose.Goncalo@cern.ch> - Royal Holloway, U. of London
15 * @author Fabrizio Salvatore <p.salvatore@cern.ch> - University of Sussex/Royal Holloway,
16 * U. of London
17 *
18 * File and Version Information:
19 * $Id: TrigDecision.h,v 1.3 2009-02-11 13:43:06 tbold Exp $
20 **********************************************************************************/
21
22#ifndef TrigDecisionEvent_TrigDecision_H
23#define TrigDecisionEvent_TrigDecision_H
24
25#include "AthLinks/DataLink.h"
27
28
31
32#include "xAODCore/CLASS_DEF.h"
33#include <string>
34#include <memory>
35#include <stdint.h>
36
37
38
39namespace TrigDec {
41
47 {
48 public:
49
50 // constructors
52
53 TrigDecision( const LVL1CTP::Lvl1Result& l1Result,
54 const HLT::HLTResult& l2Result,
55 const HLT::HLTResult& efResult,
56 uint32_t masterKey = 0 );
57
58 TrigDecision( const LVL1CTP::Lvl1Result& l1Result,
59 const HLT::HLTResult& HltResult,
60 uint32_t masterKey = 0 );
61
62 TrigDecision( const LVL1CTP::Lvl1Result& l1Result,
63 const DataLink<HLT::HLTResult>& l2Result,
64 const DataLink<HLT::HLTResult>& efResult,
65 uint32_t masterKey = 0,
66 char bgCode = 0);
67
69
70 virtual ~TrigDecision();
71
72
73 uint32_t masterKey() const { return m_configMasterKey; }
74 char BGCode() const { return m_bgCode; }
75
76 const LVL1CTP::Lvl1Result& getL1Result() const { return m_l1_result; }
77 const HLT::HLTResult& getL2Result() const;
79 const HLT::HLTResult& getEFResult() const;
81 const HLT::HLTResult& getHLTResult() const;
83
84 friend class TrigDecisionTool;
85 friend class TrigDecisionMaker;
86
87 private:
88 friend class TrigDecisionCnv_p1;
89
92
93 // The packed data
94 // ----------------
95
100
101 std::unique_ptr<HLT::HLTResult> m_l2_result_ptr; // this is for backward compatibility // remove in the next non-cache release
102 std::unique_ptr<HLT::HLTResult> m_ef_result_ptr; // this is for backward compatibility
103 };
104
105} // end of namespace
106
107CLASS_DEF( TrigDec::TrigDecision, 4356087 , 1 )
108
109#endif
#define CLASS_DEF(NAME, CID, VERSION)
associate a clid and a version to a type eg
File providing the different SG_BASE macros.
HLT::HLTResult is sumarising result of trigger decision evaluation (online/offline) It contains basic...
Definition HLTResult.h:51
The TrigDecision is an object which merges trigger informations from various levels.
const HLT::HLTResult & getEFResult() const
const HLT::HLTResult & getL2Result() const
TrigDecision & operator=(TrigDecision &&)
DataLink< HLT::HLTResult > m_ef_result
HLTResult of trigger level EF.
const HLT::HLTResult & getHLTResult() const
DataLink< HLT::HLTResult > m_l2_result
HLTResult of trigger level 2.
DataLink< HLT::HLTResult > m_hlt_result
HLTResult of merged L2EF.