ATLAS Offline Software
Loading...
Searching...
No Matches
TrigMissingETCnvAlg.cxx
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
3*/
4
5// $Id: TrigMissingETCnvAlg.cxx 592539 2014-04-11 10:17:29Z krasznaa $
6
7// Gaudi/Athena include(s):
9
10// EDM include(s):
14
15// Local include(s):
16#include "TrigMissingETCnvAlg.h"
17
18namespace xAODMaker {
19
21 ISvcLocator* svcLoc )
22 : AthAlgorithm( name, svcLoc ),
23 m_cnvTool( "xAODMaker::TrigMissingETCnvTool/TrigMissingETCnvTool", this ) {
24
25 declareProperty( "AODKey", m_aodKey = "HLT_TrigEFMissingET" );
26 declareProperty( "xAODKey", m_xaodKey = "HLT_TrigEFMissingET" );
27 declareProperty( "CnvTool", m_cnvTool );
28 }
29
31
32 // Greet the user:
33 ATH_MSG_INFO( "Initializing" );
34 ATH_MSG_DEBUG( " AOD Key: " << m_aodKey );
35 ATH_MSG_DEBUG( "xAOD Key: " << m_xaodKey );
36
37 // Retrieve the converter tool:
38 CHECK( m_cnvTool.retrieve() );
39
40 // Return gracefully:
41 return StatusCode::SUCCESS;
42 }
43
45
46 // Check if the input is available:
48 ATH_MSG_WARNING( "No TrigMissingETContainer with key \""
49 << m_aodKey << "\" available" );
50 return StatusCode::SUCCESS;
51 }
52
53 // Retrieve the AOD container:
54 const TrigMissingETContainer* aod = nullptr;
55 CHECK( evtStore()->retrieve( aod, m_aodKey ) );
56
57 // Create the xAOD container and its auxiliary store:
60 xaod->setStore( aux );
61
62 // Fill the xAOD container:
63 CHECK( m_cnvTool->convert( aod, xaod ) );
64
65 // Record the xAOD containers:
66 CHECK( evtStore()->record( aux, m_xaodKey + "Aux." ) );
67 CHECK( evtStore()->record( xaod, m_xaodKey ) );
68
69 // Return gracefully:
70 return StatusCode::SUCCESS;
71 }
72
73} // namespace xAODMaker
#define ATH_MSG_INFO(x)
#define ATH_MSG_WARNING(x)
#define ATH_MSG_DEBUG(x)
Helpers for checking error return status codes and reporting errors.
#define CHECK(...)
Evaluate an expression and check for errors.
AthAlgorithm(const std::string &name, ISvcLocator *pSvcLocator)
Constructor with parameters:
Gaudi::Details::PropertyBase & declareProperty(Gaudi::Property< T, V, H > &t)
ToolHandle< ITrigMissingETCnvTool > m_cnvTool
Handle to the converter tool.
TrigMissingETCnvAlg(const std::string &name, ISvcLocator *svcLoc)
Regular Algorithm constructor.
virtual StatusCode execute()
Function executing the algorithm.
std::string m_xaodKey
StoreGate key for the output container.
virtual StatusCode initialize()
Function initialising the algorithm.
std::string m_aodKey
StoreGate key of the input container.
bool contains(const std::string &s, const std::string &regx)
does a string contain the substring
Definition hcg.cxx:114
TrigMissingETContainer_v1 TrigMissingETContainer
DataVector of TrigMissingET - the current version.
TrigMissingETAuxContainer_v1 TrigMissingETAuxContainer
Define the most recent version of the AuxContainer for the TrigMissingET object(s).