ATLAS Offline Software
Loading...
Searching...
No Matches
ToolWithConstants.h File Reference

Hold constants for a tool. More...

#include "CaloUtils/exceptions.h"
#include "CaloInterface/IToolWithConstants.h"
#include "CaloConditions/ToolConstants.h"
#include "AthenaBaseComps/AthCheckMacros.h"
#include "StoreGate/ReadCondHandleKey.h"
#include "StoreGate/ReadCondHandle.h"
#include "AthenaKernel/errorcheck.h"
#include "Gaudi/Property.h"
#include <string>
#include <sstream>
#include <type_traits>
#include "CaloUtils/ToolWithConstants.icc"
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  CaloUtils::ToolConstantsContext
 Context object for retrieving ToolConstant values. More...
class  CaloUtils::IToolConstant
 Internal interface for dealing with a collection of ToolConstants. More...
class  CaloUtils::ToolWithConstantsImpl
 Internal implementation object. More...
class  CaloUtils::ToolConstant< T >
 Constant of a ToolWithConstants. More...
class  CaloUtils::ToolConstant< T >::CProperty
 Internal wrapper for Gaudi::Property. More...

Namespaces

namespace  Gaudi
 =============================================================================
namespace  Gaudi::Parsers
namespace  CaloUtils

Concepts

concept  CaloUtils::HasProperties
 Concept to test if a class has Gaudi properties.

Functions

template<unsigned int N>
StatusCode Gaudi::Parsers::parse (CaloRec::Array< N > &, const std::string &)
virtual StatusCode CaloUtils::initialize () override
 Hold constants for a tool.
Context CaloUtils::context (const EventContext &ctx) const
 Create a Context object.
virtual void CaloUtils::writeConstants (std::ostream &stream, const std::string &name, const EventContext &ctx) const
 Dump method (for debugging).
virtual StatusCode CaloUtils::mergeConstants (CaloRec::ToolConstants &out, const EventContext &ctx) const override
 Merge our constants into out with the proper prefix.
virtual int CaloUtils::toolVersion () const
 Return the version number for this tool.
virtual const std::string & CaloUtils::toolType () const
 Return the name of the type of this tool.

Variables

SG::ReadCondHandleKey< CaloRec::ToolConstantsCaloUtils::m_DBHandle { this, "DBHandleKey", "", "" }
 Handle to a ToolConstants conditions object.
StringProperty CaloUtils::m_prefix { this, "prefix", "", "" }
 Prefix for finding our constants within the ToolConstants object.
ToolWithConstantsImpl CaloUtils::m_impl { this->name(), m_prefix, m_DBHandle }
 Internal implementation object.
Constant< int > CaloUtils::m_order { this, "order", 0 }
 Used to fix the ordering of tools when we're initializing from COOL based on a hierarchical tag. Tools should be executed in order of increasing m_order.
Constant< bool > CaloUtils::m_isdummy {this, "isDummy", false }
 If true, then this is a dummy tool that should not be executed. This is used for the case of reading from COOL using hierarchical tags: we need to have such tags associated with some object in each folder, regardless of whether or not the correction from that folder is actually used. [Every folder that IOVDbSvc knows about at configuration time needs to have a valid object for the configured tag, else IOVDbSvc will raise a fatal error. But we don't know at configuration time which folders we're actually going to need, so we gotta configure all of them.].

Detailed Description

Hold constants for a tool.

Author
scott snyder snyde.nosp@m.r@bn.nosp@m.l.gov
Date
Apr, 2020

An extension to Gaudi components to manage a set of Constants, which are like properties but are set from COOL with the possibility of overriding them from job options.

See the class ToolWithConstants below for more information.

Definition in file ToolWithConstants.h.