ATLAS Offline Software
Loading...
Searching...
No Matches
TrigT1Run3ZDC.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3*/
14
15#ifndef TRIG_T1_RUN_3_ZDC_H
16#define TRIG_T1_RUN_3_ZDC_H
17
18#include <string>
19#include <vector>
20
23#include "GaudiKernel/ServiceHandle.h"
24#include "GaudiKernel/ToolHandle.h"
30
31// Input Containers
34#include "ZdcIdentifier/ZdcID.h"
36
37// Outputs to CTP
41#include "nlohmann/json.hpp"
42
43namespace LVL1 {
46
47 public:
48 // This is a standard algorithm constructor
49 using AthReentrantAlgorithm::AthReentrantAlgorithm;
50
51 // These are the functions inherited from Algorithm
52 virtual StatusCode initialize() override;
53 virtual StatusCode execute(const EventContext& ctx) const override;
54
55private:
56 /* Input handles */
58 this, "ZdcModuleCalibEnergyKey", "ZdcModules.CalibEnergy",
59 "ReadHandleKey for Zdc CalibEnergy AuxData"};
60
61 // Access Bytestream data from Lucrod
62 const ZdcID* m_zdcId{};
63
65 this, "ZdcLucrodDataContainerKey", TrigT1CaloDefs::ZdcLucrodDataContainer,
66 "Read Handle key for ZdcLucrodDataContainer"};
67
68 /* Output handles */
71 "Write handle key for ZdcCTP"};
72
73 /* properties */
74 Gaudi::Property<std::string> m_lutFile{
75 this, "filepath_LUT", "TrigT1ZDC/zdcRun3T1LUT_v1_30_05_2023.json",
76 "path to LUT file"};
77 Gaudi::Property<unsigned int> m_minSampleAna{
78 this, "MinSampleAna", 7, "First Sample in ZDC LUCROD Analysis window"};
79 Gaudi::Property<unsigned int> m_maxSampleAna{
80 this, "MaxSampleAna",154, "Last Sample in ZDC LUCROD Analysis window"};
81 Gaudi::Property<unsigned int> m_negHG2ndDerivThresh{
82 this, "NegHG2ndDerivThresh", 45,
83 "Negative 2nd Derivative Threshold for High Gain LUCROD Channel"};
84 Gaudi::Property<unsigned int> m_negLG2ndDerivThresh{
85 this, "NegLG2ndDerivThresh", 15,
86 "Negative 2nd Derivative Threshold for Low Gain LUCROD Channel"};
87 Gaudi::Property<unsigned int> m_baselineDelta{
88 this, "BaselineDelta", 3,
89 "Parameter to take out average offset from raw Flash ADC values"};
90
94 std::shared_ptr<ZDCTriggerSimFADC> m_triggerSimHGPtr;
95 std::shared_ptr<ZDCTriggerSimFADC> m_triggerSimLGPtr;
96
100 std::shared_ptr<ZDCTriggerSim::FADCInputs> m_hgFADC_ptr;
101 std::shared_ptr<ZDCTriggerSim::FADCInputs> m_lgFADC_ptr;
102};
103} // namespace LVL1
104
105#endif
An STL vector of pointers that by default owns its pointed-to elements.
Property holding a SG store/key/clid/attr name from which a ReadDecorHandle is made.
Handle class for reading a decoration on an object.
Property holding a SG store/key/clid from which a ReadHandle is made.
Property holding a SG store/key/clid from which a WriteHandle is made.
A tool to make L1 decision using LUTs.
An algorithm that can be simultaneously executed in multiple threads.
static const std::string ZdcCTPLocation
static const std::string ZdcLucrodDataContainer
level 1 ZDC trigger simulation
Gaudi::Property< unsigned int > m_maxSampleAna
Gaudi::Property< unsigned int > m_negLG2ndDerivThresh
std::shared_ptr< ZDCTriggerSimFADC > m_triggerSimLGPtr
SG::ReadHandleKey< ZdcLucrodDataContainer > m_zldContainerName
virtual StatusCode initialize() override
Gaudi::Property< unsigned int > m_minSampleAna
SG::WriteHandleKey< ZdcCTP > m_zdcCTPLocation
std::shared_ptr< ZDCTriggerSimFADC > m_triggerSimHGPtr
Two data member to hold the ZDCTrigger Object that computes the LUT logic: shared ptr to ensure clean...
Gaudi::Property< std::string > m_lutFile
std::shared_ptr< ZDCTriggerSim::FADCInputs > m_hgFADC_ptr
A data member to hold the ZDCTrigger Object that stores flash ADC input values: shared ptr to ensure ...
Gaudi::Property< unsigned int > m_negHG2ndDerivThresh
const ZdcID * m_zdcId
SG::ReadDecorHandleKey< xAOD::ZdcModuleContainer > m_zdcModuleCalibEnergyKey
Gaudi::Property< unsigned int > m_baselineDelta
std::shared_ptr< ZDCTriggerSim::FADCInputs > m_lgFADC_ptr
virtual StatusCode execute(const EventContext &ctx) const override
Property holding a SG store/key/clid/attr name from which a ReadDecorHandle is made.
Property holding a SG store/key/clid from which a ReadHandle is made.
Property holding a SG store/key/clid from which a WriteHandle is made.
Definition ZdcID.h:25
eFexTowerBuilder creates xAOD::eFexTowerContainer from supercells (LATOME) and triggerTowers (TREX) i...