6#include "CLHEP/Units/SystemOfUnits.h"
19 declareInterface<IDataRetriever>(
this);
22 "Storegate key for TrigEMClusters");
32 if (
msgLvl(MSG::DEBUG))
msg(MSG::DEBUG) <<
"No TrigEMCluster found in SG at "
34 return StatusCode::SUCCESS;
36 int noClu = tec->
size();
38 if (
msgLvl(MSG::DEBUG))
msg(MSG::DEBUG) <<
" Retrieving TrigEMCluster with size " << noClu <<
endmsg;
43 DataVect numCells; numCells.reserve(noClu);
44 DataVect cells; cells.reserve(noClu);
45 DataVect idVec; idVec.reserve(noClu);
52 tagCells =
"cells multiple=\"1.0\"";
55 for (; cluster != tec->
end(); ++cluster){
56 et.push_back(
DataType((*cluster)->energy() / CLHEP::GeV));
61 numCells.push_back(
DataType(nCells));
65 const auto n =
phi.size();
66 myDataMap[
"et"] = std::move(
et);
67 myDataMap[
"phi"] = std::move(
phi);
68 myDataMap[
"eta"] = std::move(
eta);
69 myDataMap[
"id"] = std::move(idVec);
70 myDataMap[tagCells] = std::move(cells);
71 myDataMap[
"numCells"] = std::move(numCells);
Scalar eta() const
pseudorapidity method
Scalar phi() const
phi method
Gaudi::Details::PropertyBase & declareProperty(Gaudi::Property< T, V, H > &t)
ServiceHandle< StoreGateSvc > & evtStore()
bool msgLvl(const MSG::Level lvl) const
DataModel_detail::const_iterator< DataVector > const_iterator
const_iterator end() const noexcept
Return a const_iterator pointing past the end of the collection.
const_iterator begin() const noexcept
Return a const_iterator pointing at the beginning of the collection.
size_type size() const noexcept
Returns the number of elements in the collection.
virtual std::string dataTypeName() const
Return the name of the data type.
virtual StatusCode retrieve(ToolHandle< IFormatTool > &FormatTool)
Retrieve all the data.
std::string m_sgKey
The storegate key for the TrigEMClusters.
const std::string m_typeName
The data type that is generated by this retriever.
TrigEMClusterRetriever(const std::string &type, const std::string &name, const IInterface *parent)
Standard Constructor.
Container from TrigEMCluster type objects.
This header is shared inbetween the C-style server thread and the C++ Athena ServerSvc.
std::map< std::string, DataVect > DataMap
std::vector< DataType > DataVect
Defines a map with a key and a vector of DataType objects e.g.
Extra patterns decribing particle interation process.