|
ATLAS Offline Software
|
Go to the documentation of this file.
36 declareInterface<IDataRetriever>(
this);
40 "Collection to be first in output, shown in Atlantis without switching");
58 if (
sc.isFailure() ) {
70 return StatusCode::SUCCESS;
93 DataVect logLhRatio; logLhRatio.reserve(tauCont->
size());
97 DataVect trackLinkCount; trackLinkCount.reserve(tauCont->
size());
98 DataVect isTauString; isTauString.reserve(tauCont->
size());
108 for (; tauItr != tauItrE; ++tauItr) {
112 << (*tauItr)->phi() <<
endmsg;
115 phi.push_back(
DataType((*tauItr)->phi()));
116 eta.push_back(
DataType((*tauItr)->eta()));
120 logLhRatio.push_back(
DataType( 1. ));
123 isTauString.push_back(
DataType(
"xAOD_tauJet_withoutQuality" ));
132 #ifndef XAODTAU_VERSIONS_TAUTRACK_V1_H
133 const std::vector< ElementLink< xAOD::TrackParticleContainer > > tpLinks = (*tauItr)->trackLinks();
139 unsigned int tp_size = tpLinks.size();
140 numTracks.push_back(
DataType( tp_size ));
141 trackLinkCount.push_back(
DataType( tp_size ));
143 for(
unsigned int tp = 0;
tp<tp_size; ++
tp)
152 <<
", collection : " << tpl.
key()
153 <<
", Tracks : " <<
tp <<
" out of " << tp_size <<
", own count: " << trkCnt++ <<
endmsg;
169 DataMap[
"numTracks"] = numTracks;
171 DataMap[
"logLhRatio"] = logLhRatio;
174 DataMap[
"trackLinkCount"] = trackLinkCount;
175 DataMap[
"isTauString"] = isTauString;
179 if ((numTracks.size()) != 0){
181 double NTracksPerVertex = tracks.size()*1./numTracks.size();
182 std::string
tag =
"trackIndex multiple=\"" +
DataType(NTracksPerVertex).toString()+
"\"";
184 tag =
"trackKey multiple=\"" +
DataType(NTracksPerVertex).toString()+
"\"";
JetConstituentVector::iterator iterator
char data[hepevt_bytes_allocation_ATLAS]
Const iterator class for DataVector/DataList.
Gaudi::Details::PropertyBase & declareProperty(Gaudi::Property< T > &t)
std::vector< DataType > DataVect
Defines a map with a key and a vector of DataType objects e.g.
sgkey_t key() const
Get the key that we reference, as a hash.
bool msgLvl(const MSG::Level lvl) const
virtual StatusCode retrieve(ToolHandle< IFormatTool > &FormatTool)
Retrieve all the data.
const DataMap getData(const xAOD::TauJetContainer *)
Retrieve basic parameters, mainly four-vectors, for each collection.
std::map< std::string, DataVect > DataMap
ServiceHandle< StoreGateSvc > & evtStore()
The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc.
::StatusCode StatusCode
StatusCode definition for legacy code.
std::vector< ElementLink< xAOD::TrackParticleContainer > > trackParticleLinks(const xAOD::TauJet *tau, xAOD::TauJetParameters::TauTrackFlag flag=xAOD::TauJetParameters::TauTrackFlag::classifiedCharged)
This header is shared inbetween the C-style server thread and the C++ Athena ServerSvc.
double charge(const T &p)
xAODTauRetriever(const std::string &type, const std::string &name, const IInterface *parent)
Standard Constructor.
Wrapper to avoid constant divisions when using units.
const_iterator end() const noexcept
Return a const_iterator pointing past the end of the collection.
index_type index() const
Get the index of the element inside of its container.
@ isolFrac
Get isolation fraction.
virtual std::string dataTypeName() const
Return the name of the data type.
size_type size() const noexcept
Returns the number of elements in the collection.
const_iterator begin() const noexcept
Return a const_iterator pointing at the beginning of the collection.