9 #include "CLHEP/Units/SystemOfUnits.h"
25 declareInterface<IDataRetriever>(
this);
28 "Collection to be first in output, shown in Atlantis without switching");
30 "Other collections to be retrieved. If list left empty, all available retrieved");
49 if (
sc.isFailure() ) {
63 if (
msgLvl(MSG::WARNING))
msg(MSG::WARNING) <<
"Unable to retrieve iterator for Jet collection" <<
endmsg;
69 std::string::size_type position =
iterator.key().find(
"HLTAutoKey",0);
79 if (
msgLvl(MSG::WARNING))
msg(MSG::WARNING) <<
"Collection " <<
iterator.key() <<
" not found in SG " <<
endmsg;
88 std::vector<std::string>::const_iterator keyIter;
90 if ( !
evtStore()->contains<JetCollection>( (*keyIter) ) ){
continue; }
92 if (!
sc.isFailure()) {
95 if ( FormatTool->AddToEvent(
dataTypeName(), (*keyIter)+
"_AOD", &
data).isFailure()){
96 if (
msgLvl(MSG::WARNING))
msg(MSG::WARNING) <<
"Collection " << (*keyIter) <<
" not found in SG " <<
endmsg;
104 return StatusCode::SUCCESS;
141 DataVect qualityTile; qualityTile.reserve(
jets->size());
143 DataVect timeClusters; timeClusters.reserve(
jets->size());
152 DataVect fcorJetForCell; fcorJetForCell.reserve(
jets->size());
154 DataVect fracSamplingMax; fracSamplingMax.reserve(
jets->size());
156 DataVect OutOfTimeEfrac; OutOfTimeEfrac.reserve(
jets->size());
165 for (; itr !=
jets->end(); ++itr) {
175 bTagName.push_back(
DataType(
"JetFitterCOMBNN" ));
176 bTagValue.push_back(
DataType( (*itr)->getFlavourTagWeight(
"JetFitterCOMBNN") ));
177 bTagName.push_back(
DataType(
"JetFitterTagNN" ));
178 bTagValue.push_back(
DataType( (*itr)->getFlavourTagWeight(
"JetFitterTagNN") ));
179 bTagName.push_back(
DataType(
"IP3D+SV1" ));
180 bTagValue.push_back(
DataType( (*itr)->getFlavourTagWeight() ));
181 bTagName.push_back(
DataType(
"IP2D" ));
182 bTagValue.push_back(
DataType( (*itr)->getFlavourTagWeight(
"IP2D") ));
183 bTagName.push_back(
DataType(
"IP3D" ));
184 bTagValue.push_back(
DataType( (*itr)->getFlavourTagWeight(
"IP3D") ));
185 bTagName.push_back(
DataType(
"SV1" ));
186 bTagValue.push_back(
DataType( (*itr)->getFlavourTagWeight(
"SV1") ));
187 bTagName.push_back(
DataType(
"SV2" ));
188 bTagValue.push_back(
DataType( (*itr)->getFlavourTagWeight(
"SV2") ));
189 bTagName.push_back(
DataType(
"MV1" ));
190 bTagValue.push_back(
DataType( (*itr)->getFlavourTagWeight(
"MV1") ));
191 bTagName.push_back(
DataType(
"MV2" ));
192 bTagValue.push_back(
DataType( (*itr)->getFlavourTagWeight(
"MV2") ));
195 quality.push_back(
DataType((*itr)->getMoment(
"LArQuality")));
233 jvf.push_back(
DataType((*itr)->getMoment(
"JVF") ));
243 const auto n =
phi.size();
248 DataMap[
"id"] = std::move(idVec);
250 DataMap[
"bTagName multiple=\"9\""] = std::move(bTagName);
251 DataMap[
"bTagValue multiple=\"9\""] = std::move(bTagValue);
254 DataMap[
"quality"] = std::move(quality);
255 DataMap[
"isGood"] = std::move(isGood);
256 DataMap[
"isBad"] = std::move(isBad);
257 DataMap[
"isUgly"] = std::move(isUgly);
258 DataMap[
"emfrac"] = std::move(emfrac);
260 DataMap[
"jvf"] = std::move(jvf);
263 DataMap[
"qualityLAr"] = std::move(qualityLAr);
264 DataMap[
"qualityTile"] = std::move(qualityTile);
266 DataMap[
"timeClusters"] = std::move(timeClusters);
267 DataMap[
"n90cells"] = std::move(n90cells);
268 DataMap[
"n90const"] = std::move(n90const);
269 DataMap[
"hecf"] = std::move(hecf);
270 DataMap[
"tileGap3f"] = std::move(tileGap3f);
271 DataMap[
"fcorCell"] = std::move(fcorCell);
272 DataMap[
"fcorDotx"] = std::move(fcorDotx);
273 DataMap[
"fcorJet"] = std::move(fcorJet);
274 DataMap[
"fcorJetForCell"] = std::move(fcorJetForCell);
275 DataMap[
"nbadcells"] = std::move(nbadcells);
276 DataMap[
"fracSamplingMax"] = std::move(fracSamplingMax);
277 DataMap[
"sMax"] = std::move(sMax);
278 DataMap[
"OutOfTimeEfrac"] = std::move(OutOfTimeEfrac);