ATLAS Offline Software
Loading...
Searching...
No Matches
HIEventShapeSummaryTool Class Reference

#include <HIEventShapeSummaryTool.h>

Inheritance diagram for HIEventShapeSummaryTool:
Collaboration diagram for HIEventShapeSummaryTool:

Classes

struct  summary_info_t

Public Member Functions

 HIEventShapeSummaryTool (const std::string &n)
StatusCode summarize (const xAOD::HIEventShapeContainer *in, xAOD::HIEventShapeContainer *out) const override
StatusCode initialize () override
 Dummy implementation of the initialisation function.
std::string dumpList () const override
virtual void print () const
 Print the state of the tool.
ServiceHandle< StoreGateSvc > & evtStore ()
 The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc.
const ServiceHandle< StoreGateSvc > & detStore () const
 The standard StoreGateSvc/DetectorStore Returns (kind of) a pointer to the StoreGateSvc.
virtual StatusCode sysInitialize () override
 Perform system initialization for an algorithm.
virtual StatusCode sysStart () override
 Handle START transition.
virtual std::vector< Gaudi::DataHandle * > inputHandles () const override
 Return this algorithm's input handles.
virtual std::vector< Gaudi::DataHandle * > outputHandles () const override
 Return this algorithm's output handles.
Gaudi::Details::PropertyBase & declareProperty (Gaudi::Property< T, V, H > &t)
void updateVHKA (Gaudi::Details::PropertyBase &)
MsgStream & msg () const
bool msgLvl (const MSG::Level lvl) const
Additional helper functions, not directly mimicking Athena
template<class T>
const T * getProperty (const std::string &name) const
 Get one of the tool's properties.
const std::string & msg_level_name () const __attribute__((deprecated))
 A deprecated function for getting the message level's name.
const std::string & getName (const void *ptr) const
 Get the name of an object that is / should be in the event store.
SG::sgkey_t getKey (const void *ptr) const
 Get the (hashed) key of an object that is in the event store.

Protected Member Functions

void renounceArray (SG::VarHandleKeyArray &handlesArray)
 remove all handles from I/O resolution
std::enable_if_t< std::is_void_v< std::result_of_t< decltype(&T::renounce)(T)> > &&!std::is_base_of_v< SG::VarHandleKeyArray, T > &&std::is_base_of_v< Gaudi::DataHandle, T >, void > renounce (T &h)
void extraDeps_update_handler (Gaudi::Details::PropertyBase &ExtraDeps)
 Add StoreName to extra input/output deps as needed.

Private Types

typedef std::function< bool(const xAOD::HIEventShape *)> function_t
typedef ServiceHandle< StoreGateSvcStoreGateSvc_t

Private Member Functions

int getSubCaloLayer (const std::vector< int > &samps) const
float getSubCaloEtaMin (const std::vector< int > &samps) const
float getSubCaloEtaMax (const std::vector< int > &samps) const
float roundToTenth (float v) const
Gaudi::Details::PropertyBase & declareGaudiProperty (Gaudi::Property< T, V, H > &hndl, const SG::VarHandleKeyType &)
 specialization for handling Gaudi::Property<SG::VarHandleKey>

Private Attributes

std::vector< std::string > m_samp_names
std::vector< std::string > m_subcalo_names
bool m_do_sides {}
std::map< std::string, summary_info_tm_summary_list
StoreGateSvc_t m_evtStore
 Pointer to StoreGate (event store by default)
StoreGateSvc_t m_detStore
 Pointer to StoreGate (detector store by default)
std::vector< SG::VarHandleKeyArray * > m_vhka
bool m_varHandleArraysDeclared

Static Private Attributes

static const std::vector< std::string > s_SubCaloNames {"EMBarrel", "EMEC", "HEC", "TileBarrel", "TileGap", "TileExt", "FCal", "EMCal", "Tile","HCal", "PreSampler","ALL"}
static const std::vector< std::initializer_list< int > > s_SubCaloLists

Detailed Description

Definition at line 16 of file HIEventShapeSummaryTool.h.

Member Typedef Documentation

◆ function_t

typedef std::function<bool (const xAOD::HIEventShape*)> HIEventShapeSummaryTool::function_t
private

Definition at line 28 of file HIEventShapeSummaryTool.h.

◆ StoreGateSvc_t

typedef ServiceHandle<StoreGateSvc> AthCommonDataStore< AthCommonMsg< AlgTool > >::StoreGateSvc_t
privateinherited

Definition at line 388 of file AthCommonDataStore.h.

Constructor & Destructor Documentation

◆ HIEventShapeSummaryTool()

HIEventShapeSummaryTool::HIEventShapeSummaryTool ( const std::string & n)

Definition at line 28 of file HIEventShapeSummaryTool.cxx.

28 : asg::AsgTool(n)
29{
30 declareProperty("Samplings",m_samp_names );
32 declareProperty("DoPositiveNegativeSides",m_do_sides=false);
33
34}
Gaudi::Details::PropertyBase & declareProperty(Gaudi::Property< T, V, H > &t)
std::vector< std::string > m_samp_names
std::vector< std::string > m_subcalo_names

Member Function Documentation

◆ declareGaudiProperty()

Gaudi::Details::PropertyBase & AthCommonDataStore< AthCommonMsg< AlgTool > >::declareGaudiProperty ( Gaudi::Property< T, V, H > & hndl,
const SG::VarHandleKeyType &  )
inlineprivateinherited

specialization for handling Gaudi::Property<SG::VarHandleKey>

Definition at line 156 of file AthCommonDataStore.h.

158 {
160 hndl.value(),
161 hndl.documentation());
162
163 }

◆ declareProperty()

Gaudi::Details::PropertyBase & AthCommonDataStore< AthCommonMsg< AlgTool > >::declareProperty ( Gaudi::Property< T, V, H > & t)
inlineinherited

Definition at line 145 of file AthCommonDataStore.h.

145 {
146 typedef typename SG::HandleClassifier<T>::type htype;
148 }
Gaudi::Details::PropertyBase & declareGaudiProperty(Gaudi::Property< T, V, H > &hndl, const SG::VarHandleKeyType &)
specialization for handling Gaudi::Property<SG::VarHandleKey>

◆ detStore()

const ServiceHandle< StoreGateSvc > & AthCommonDataStore< AthCommonMsg< AlgTool > >::detStore ( ) const
inlineinherited

The standard StoreGateSvc/DetectorStore Returns (kind of) a pointer to the StoreGateSvc.

Definition at line 95 of file AthCommonDataStore.h.

◆ dumpList()

std::string HIEventShapeSummaryTool::dumpList ( ) const
overridevirtual

Reimplemented from IHIEventShapeSummaryTool.

Definition at line 155 of file HIEventShapeSummaryTool.cxx.

156{
157 std::stringstream ss;
158 ss << "========= Dumping HIEventShapeSummaryTool ========" << std::endl;
159 ss << std::setw(15) << "Name"
160 << std::setw(15) << "eta min"
161 << std::setw(15) << "eta max"
162 << std::setw(15) << "layer"
163 << std::endl;
164 for(const auto& itr : m_summary_list)
165 {
166 ss << std::setw(15) << itr.second.name
167 << std::setw(15) << itr.second.eta_min
168 << std::setw(15) << itr.second.eta_max
169 << std::setw(15) << itr.second.layer
170 << std::endl;
171 }
172 return ss.str();
173}
static Double_t ss
std::map< std::string, summary_info_t > m_summary_list

◆ evtStore()

ServiceHandle< StoreGateSvc > & AthCommonDataStore< AthCommonMsg< AlgTool > >::evtStore ( )
inlineinherited

The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc.

Definition at line 85 of file AthCommonDataStore.h.

◆ extraDeps_update_handler()

void AthCommonDataStore< AthCommonMsg< AlgTool > >::extraDeps_update_handler ( Gaudi::Details::PropertyBase & ExtraDeps)
protectedinherited

Add StoreName to extra input/output deps as needed.

use the logic of the VarHandleKey to parse the DataObjID keys supplied via the ExtraInputs and ExtraOuputs Properties to add the StoreName if it's not explicitly given

◆ getKey()

SG::sgkey_t asg::AsgTool::getKey ( const void * ptr) const
inherited

Get the (hashed) key of an object that is in the event store.

This is a bit of a special one. StoreGateSvc and xAOD::TEvent both provide ways for getting the SG::sgkey_t key for an object that is in the store, based on a bare pointer. But they provide different interfaces for doing so.

In order to allow tools to efficiently perform this operation, they can use this helper function.

See also
asg::AsgTool::getName
Parameters
ptrThe bare pointer to the object that the event store should know about
Returns
The hashed key of the object in the store. If not found, an invalid (zero) key.

Definition at line 119 of file AsgTool.cxx.

119 {
120
121#ifdef XAOD_STANDALONE
122 // In case we use @c xAOD::TEvent, we have a direct function call
123 // for this.
124 return evtStore()->event()->getKey( ptr );
125#else
126 const SG::DataProxy* proxy = evtStore()->proxy( ptr );
127 return ( proxy == nullptr ? 0 : proxy->sgkey() );
128#endif // XAOD_STANDALONE
129 }
ServiceHandle< StoreGateSvc > & evtStore()

◆ getName()

const std::string & asg::AsgTool::getName ( const void * ptr) const
inherited

Get the name of an object that is / should be in the event store.

This is a bit of a special one. StoreGateSvc and xAOD::TEvent both provide ways for getting the std::string name for an object that is in the store, based on a bare pointer. But they provide different interfaces for doing so.

In order to allow tools to efficiently perform this operation, they can use this helper function.

See also
asg::AsgTool::getKey
Parameters
ptrThe bare pointer to the object that the event store should know about
Returns
The string name of the object in the store. If not found, an empty string.

Definition at line 106 of file AsgTool.cxx.

106 {
107
108#ifdef XAOD_STANDALONE
109 // In case we use @c xAOD::TEvent, we have a direct function call
110 // for this.
111 return evtStore()->event()->getName( ptr );
112#else
113 const SG::DataProxy* proxy = evtStore()->proxy( ptr );
114 static const std::string dummy = "";
115 return ( proxy == nullptr ? dummy : proxy->name() );
116#endif // XAOD_STANDALONE
117 }

◆ getProperty()

template<class T>
const T * asg::AsgTool::getProperty ( const std::string & name) const
inherited

Get one of the tool's properties.

◆ getSubCaloEtaMax()

float HIEventShapeSummaryTool::getSubCaloEtaMax ( const std::vector< int > & samps) const
private

Definition at line 137 of file HIEventShapeSummaryTool.cxx.

138{
139 float max=0.;
140 for(const auto i : samps)
141 {
142 float max_c=HICaloRange::getRange().getRangeMax(i);
143 if(max_c > max) max=max_c;
144 }
145 return max;
146}
#define max(a, b)
Definition cfImp.cxx:41
float getRangeMax(int layer) const
Definition HICaloRange.h:20
static const HICaloRange & getRange()

◆ getSubCaloEtaMin()

float HIEventShapeSummaryTool::getSubCaloEtaMin ( const std::vector< int > & samps) const
private

Definition at line 126 of file HIEventShapeSummaryTool.cxx.

127{
128 float min=10;
129 for(const auto i : samps)
130 {
131 float min_c=HICaloRange::getRange().getRangeMin(i);
132 if(min_c < min) min=min_c;
133 }
134 return min;
135}
#define min(a, b)
Definition cfImp.cxx:40
float getRangeMin(int layer) const
Definition HICaloRange.h:19

◆ getSubCaloLayer()

int HIEventShapeSummaryTool::getSubCaloLayer ( const std::vector< int > & samps) const
private

Definition at line 148 of file HIEventShapeSummaryTool.cxx.

149{
150 int outlayer=0;
151 for(const auto i : samps) outlayer |= 0x1 << i;
152 return outlayer;
153}

◆ initialize()

StatusCode HIEventShapeSummaryTool::initialize ( void )
overridevirtual

Dummy implementation of the initialisation function.

It's here to allow the dual-use tools to skip defining an initialisation function. Since many are doing so...

Reimplemented from asg::AsgTool.

Definition at line 53 of file HIEventShapeSummaryTool.cxx.

54{
55 //not optimal, but minimal code re-use, gets called only at initialization
56 ATH_MSG_INFO("Configuring for summary");
57 for(const auto& s : m_samp_names)
58 {
59 auto mItr=m_summary_list.find(s);
60 if(mItr!=m_summary_list.end()) continue;
62 for(unsigned int j=0; j<CaloSampling::getNumberOfSamplings(); j++)
63 {
64 if(s.compare(CaloSampling::getSamplingName(j))==0)
65 {
66 samp=j;
67 break;
68 }
69 }
70 if(samp == static_cast<int>(CaloSampling::getNumberOfSamplings()))
71 {
72 ATH_MSG_WARNING("Sampling with name " << s << " not defined in standard list, skipping.");
73 break;
74 }
75 float emin=HICaloRange::getRange().getRangeMin(samp);
76 float emax=HICaloRange::getRange().getRangeMax(samp);
77 m_summary_list.emplace(s,summary_info_t(s,emin,emax,samp,HI::ByLayer(samp)));
78 if(m_do_sides)
79 {
80 m_summary_list.emplace(s+"_pos",summary_info_t(s+"_pos",emin,emax,samp,HI::ByLayer(samp)));
81 m_summary_list.emplace(s+"_neg",summary_info_t(s+"_neg",-emax,-emin,samp,HI::ByLayer(samp)));
82 }
83 }
84
85 for(const auto& s : m_subcalo_names)
86 {
87 auto mItr=m_summary_list.find(s);
88 if(mItr!=m_summary_list.end()) continue;
89
90 unsigned int isub=s_SubCaloNames.size();
91 for(unsigned int i=0; i < s_SubCaloNames.size(); i++)
92 {
93 if(s_SubCaloNames.at(i)==s)
94 {
95 isub=i;
96 break;
97 }
98 }
99
100 if(isub==s_SubCaloNames.size())
101 {
102 ATH_MSG_WARNING("Subcalo with name " << s << " not defined in standard list, skipping." );
103 break;
104 }
105
106
107 const std::vector<int> layer_list=s_SubCaloLists.at(isub);
108 int samp=getSubCaloLayer(layer_list);
109 float emin=getSubCaloEtaMin(layer_list);
110 float emax=getSubCaloEtaMax(layer_list);
111
112 m_summary_list.emplace(s,summary_info_t(s,emin,emax,samp,HI::ByLayers(s_SubCaloLists.at(isub))));
113 if(m_do_sides)
114 {
115 m_summary_list.emplace(s+"_pos",summary_info_t(s+"_pos",emin,emax,samp,HI::ByLayersP(s_SubCaloLists.at(isub))));
116 m_summary_list.emplace(s+"_neg",summary_info_t(s+"_neg",-emax,-emin,samp,HI::ByLayersN(s_SubCaloLists.at(isub))));
117 }
118
119 }
120
122 return StatusCode::SUCCESS;
123}
#define ATH_MSG_INFO(x)
#define ATH_MSG_WARNING(x)
#define ATH_MSG_DEBUG(x)
static std::string getSamplingName(CaloSample theSample)
Returns a string (name) for each CaloSampling.
static constexpr unsigned int getNumberOfSamplings()
Get number of available samplings.
int getSubCaloLayer(const std::vector< int > &samps) const
static const std::vector< std::string > s_SubCaloNames
static const std::vector< std::initializer_list< int > > s_SubCaloLists
float getSubCaloEtaMin(const std::vector< int > &samps) const
float getSubCaloEtaMax(const std::vector< int > &samps) const
std::string dumpList() const override

◆ inputHandles()

virtual std::vector< Gaudi::DataHandle * > AthCommonDataStore< AthCommonMsg< AlgTool > >::inputHandles ( ) const
overridevirtualinherited

Return this algorithm's input handles.

We override this to include handle instances from key arrays if they have not yet been declared. See comments on updateVHKA.

◆ msg()

MsgStream & AthCommonMsg< AlgTool >::msg ( ) const
inlineinherited

Definition at line 24 of file AthCommonMsg.h.

24 {
25 return this->msgStream();
26 }

◆ msg_level_name()

const std::string & asg::AsgTool::msg_level_name ( ) const
inherited

A deprecated function for getting the message level's name.

Instead of using this, weirdly named function, user code should get the string name of the current minimum message level (in case they really need it...), with:

MSG::name( msg().level() )

This function's name doesn't follow the ATLAS coding rules, and as such will be removed in the not too distant future.

Returns
The string name of the current minimum message level that's printed

Definition at line 101 of file AsgTool.cxx.

101 {
102
103 return MSG::name( msg().level() );
104 }
MsgStream & msg() const
const std::string & name(Level lvl)
Convenience function for translating message levels to strings.
Definition MsgLevel.cxx:19

◆ msgLvl()

bool AthCommonMsg< AlgTool >::msgLvl ( const MSG::Level lvl) const
inlineinherited

Definition at line 30 of file AthCommonMsg.h.

30 {
31 return this->msgLevel(lvl);
32 }

◆ outputHandles()

virtual std::vector< Gaudi::DataHandle * > AthCommonDataStore< AthCommonMsg< AlgTool > >::outputHandles ( ) const
overridevirtualinherited

Return this algorithm's output handles.

We override this to include handle instances from key arrays if they have not yet been declared. See comments on updateVHKA.

◆ print()

◆ renounce()

std::enable_if_t< std::is_void_v< std::result_of_t< decltype(&T::renounce)(T)> > &&!std::is_base_of_v< SG::VarHandleKeyArray, T > &&std::is_base_of_v< Gaudi::DataHandle, T >, void > AthCommonDataStore< AthCommonMsg< AlgTool > >::renounce ( T & h)
inlineprotectedinherited

Definition at line 380 of file AthCommonDataStore.h.

381 {
382 h.renounce();
384 }
std::enable_if_t< std::is_void_v< std::result_of_t< decltype(&T::renounce)(T)> > &&!std::is_base_of_v< SG::VarHandleKeyArray, T > &&std::is_base_of_v< Gaudi::DataHandle, T >, void > renounce(T &h)

◆ renounceArray()

void AthCommonDataStore< AthCommonMsg< AlgTool > >::renounceArray ( SG::VarHandleKeyArray & handlesArray)
inlineprotectedinherited

remove all handles from I/O resolution

Definition at line 364 of file AthCommonDataStore.h.

364 {
366 }

◆ roundToTenth()

float HIEventShapeSummaryTool::roundToTenth ( float v) const
private

Definition at line 175 of file HIEventShapeSummaryTool.cxx.

176{
177 return std::floor(v*10.)/10.;
178}

◆ summarize()

StatusCode HIEventShapeSummaryTool::summarize ( const xAOD::HIEventShapeContainer * in,
xAOD::HIEventShapeContainer * out ) const
overridevirtual

Implements IHIEventShapeSummaryTool.

Definition at line 36 of file HIEventShapeSummaryTool.cxx.

37{
38 out->reserve(m_summary_list.size());
39 for(const auto& itr : m_summary_list)
40 {
42 out->push_back(es);
43 HI::fillSummary(in,es,itr.second.func);
44 es->setEtaMin(roundToTenth(itr.second.eta_min));
45 es->setEtaMax(roundToTenth(itr.second.eta_max));
46 es->setLayer(itr.second.layer);
47 static const SG::Accessor<std::string> SummaryAcc("Summary");
48 SummaryAcc(*es)=itr.second.name;
49 }
50 return StatusCode::SUCCESS;
51}
void setEtaMin(float value)
set eta slice "left" edge
void setLayer(int value)
set layer information
void setEtaMax(float value)
set eta slice "right" edge
void fillSummary(const xAOD::HIEventShapeContainer *in, xAOD::HIEventShape *out, const std::function< bool(const xAOD::HIEventShape *)> &incFunction, const std::function< void(xAOD::HIEventShape *, const xAOD::HIEventShape *)> &addFunction)
HIEventShape_v2 HIEventShape
Definition of the latest event info version.

◆ sysInitialize()

virtual StatusCode AthCommonDataStore< AthCommonMsg< AlgTool > >::sysInitialize ( )
overridevirtualinherited

Perform system initialization for an algorithm.

We override this to declare all the elements of handle key arrays at the end of initialization. See comments on updateVHKA.

Reimplemented in asg::AsgMetadataTool, AthCheckedComponent< AthAlgTool >, AthCheckedComponent<::AthAlgTool >, and DerivationFramework::CfAthAlgTool.

◆ sysStart()

virtual StatusCode AthCommonDataStore< AthCommonMsg< AlgTool > >::sysStart ( )
overridevirtualinherited

Handle START transition.

We override this in order to make sure that conditions handle keys can cache a pointer to the conditions container.

◆ updateVHKA()

void AthCommonDataStore< AthCommonMsg< AlgTool > >::updateVHKA ( Gaudi::Details::PropertyBase & )
inlineinherited

Definition at line 308 of file AthCommonDataStore.h.

308 {
309 // debug() << "updateVHKA for property " << p.name() << " " << p.toString()
310 // << " size: " << m_vhka.size() << endmsg;
311 for (auto &a : m_vhka) {
313 for (auto k : keys) {
314 k->setOwner(this);
315 }
316 }
317 }
std::vector< SG::VarHandleKeyArray * > m_vhka

Member Data Documentation

◆ m_detStore

StoreGateSvc_t AthCommonDataStore< AthCommonMsg< AlgTool > >::m_detStore
privateinherited

Pointer to StoreGate (detector store by default)

Definition at line 393 of file AthCommonDataStore.h.

◆ m_do_sides

bool HIEventShapeSummaryTool::m_do_sides {}
private

Definition at line 43 of file HIEventShapeSummaryTool.h.

43{};

◆ m_evtStore

StoreGateSvc_t AthCommonDataStore< AthCommonMsg< AlgTool > >::m_evtStore
privateinherited

Pointer to StoreGate (event store by default)

Definition at line 390 of file AthCommonDataStore.h.

◆ m_samp_names

std::vector<std::string> HIEventShapeSummaryTool::m_samp_names
private

Definition at line 41 of file HIEventShapeSummaryTool.h.

◆ m_subcalo_names

std::vector<std::string> HIEventShapeSummaryTool::m_subcalo_names
private

Definition at line 42 of file HIEventShapeSummaryTool.h.

◆ m_summary_list

std::map<std::string,summary_info_t> HIEventShapeSummaryTool::m_summary_list
private

Definition at line 46 of file HIEventShapeSummaryTool.h.

◆ m_varHandleArraysDeclared

bool AthCommonDataStore< AthCommonMsg< AlgTool > >::m_varHandleArraysDeclared
privateinherited

Definition at line 399 of file AthCommonDataStore.h.

◆ m_vhka

std::vector<SG::VarHandleKeyArray*> AthCommonDataStore< AthCommonMsg< AlgTool > >::m_vhka
privateinherited

Definition at line 398 of file AthCommonDataStore.h.

◆ s_SubCaloLists

const std::vector< std::initializer_list< int > > HIEventShapeSummaryTool::s_SubCaloLists
staticprivate
Initial value:
constexpr std::initializer_list< int > EMBarrel
Definition HIEventDefs.h:60
constexpr std::initializer_list< int > ALL
Definition HIEventDefs.h:79
constexpr std::initializer_list< int > Tile
Definition HIEventDefs.h:70
constexpr std::initializer_list< int > HEC
Definition HIEventDefs.h:62
constexpr std::initializer_list< int > EMCal
Definition HIEventDefs.h:68
constexpr std::initializer_list< int > PreSampler
Definition HIEventDefs.h:77
constexpr std::initializer_list< int > TileGap
Definition HIEventDefs.h:64
constexpr std::initializer_list< int > TileBarrel
Definition HIEventDefs.h:63
constexpr std::initializer_list< int > FCal
Definition HIEventDefs.h:66
constexpr std::initializer_list< int > EMEC
Definition HIEventDefs.h:61
constexpr std::initializer_list< int > TileExt
Definition HIEventDefs.h:65
constexpr std::initializer_list< int > HCal
Definition HIEventDefs.h:73

Definition at line 15 of file HIEventShapeSummaryTool.h.

16 : virtual public asg::AsgTool, virtual public IHIEventShapeSummaryTool
17{
18 ASG_TOOL_CLASS(HIEventShapeSummaryTool,IHIEventShapeSummaryTool)
19 public:
20 HIEventShapeSummaryTool(const std::string& n);
21
22
24 StatusCode initialize() override;
25 std::string dumpList() const override;
26
#define ASG_TOOL_CLASS(CLASSNAME, INT1)
HIEventShapeSummaryTool(const std::string &n)
StatusCode summarize(const xAOD::HIEventShapeContainer *in, xAOD::HIEventShapeContainer *out) const override
StatusCode initialize() override
Dummy implementation of the initialisation function.
::StatusCode StatusCode
StatusCode definition for legacy code.
HIEventShapeContainer_v2 HIEventShapeContainer
Define the latest version of the container.

◆ s_SubCaloNames

const std::vector< std::string > HIEventShapeSummaryTool::s_SubCaloNames {"EMBarrel", "EMEC", "HEC", "TileBarrel", "TileGap", "TileExt", "FCal", "EMCal", "Tile","HCal", "PreSampler","ALL"}
staticprivate

Definition at line 14 of file HIEventShapeSummaryTool.h.


The documentation for this class was generated from the following files: