Description: <one line="" class="" summary>="">
Implementation: <Notes on="" implementation>="">
EDProducer of the tagged TauJet with the ConeIsolationAlgorithm. It returns two collections: base collection is the JetTag, and extended Collection which is the IsolatedTauTagInfo. The method implemented in the IsolatedTauTagInfo class are used to compute the discriminator variable. A trick is used to link the IsolatedTauTagInfo to a smart reference to the JetTag.
- Author
- Simone Gennai
Definition at line 24 of file ConeIsolation.h.
Definition at line 95 of file ConeIsolation.cc.
References edm::AssociationVector< KeyRefProd, CVal, KeyRef, SizeType, KeyReferenceHelper >::begin(), reco::Vertex::chi2(), MillePedeFileConverter_cfg::e, edm::AssociationVector< KeyRefProd, CVal, KeyRef, SizeType, KeyReferenceHelper >::empty(), reco::Vertex::error(), edm::Event::getByToken(), mps_fire::i, iEvent, edm::makeRefToBaseProdFrom(), eostools::move(), reco::Vertex::ndof(), AlCaHLTBitMon_ParallelJobs::p, parseEventContent::prod, edm::Handle< T >::product(), edm::Event::put(), edm::AssociationVector< KeyRefProd, CVal, KeyRef, SizeType, KeyReferenceHelper >::size(), reco::Vertex::tracksSize(), electrons_cff::vertices, reco::BeamSpot::x0(), reco::BeamSpot::y0(), and reco::Vertex::z().
102 std::unique_ptr<reco::JetTagCollection> tagCollection;
104 if (not jetTracksAssociation->
empty()) {
124 if(vertCollection.begin() != vertCollection.end())
125 myPVtmp = *(vertCollection.begin());
135 vertexBeamSpot = *recoBeamSpotHandle;
137 Vertex combinedVertex =
Vertex(bspoint,myPVtmp.error(),myPVtmp.chi2(),myPVtmp.ndof(),myPVtmp.tracksSize());
138 myPV = combinedVertex;
143 for (
unsigned int i = 0;
i < jetTracksAssociation->
size(); ++
i)
146 tagCollection->setValue(
i, myPair.first);
147 extCollection->push_back(myPair.second);
OrphanHandle< PROD > put(std::unique_ptr< PROD > product)
Put a new product.
edm::EDGetTokenT< reco::VertexCollection > vertexToken
edm::EDGetTokenT< reco::BeamSpot > beamSpotToken
bool getByToken(EDGetToken token, Handle< PROD > &result) const
math::Error< dimension >::type Error
covariance error matrix (3x3)
std::vector< Vertex > VertexCollection
collection of Vertex objects
std::vector< IsolatedTauTagInfo > IsolatedTauTagInfoCollection
ConeIsolationAlgorithm * m_algo
math::XYZPoint Point
point in the space
std::pair< float,reco::IsolatedTauTagInfo > tag(const reco::JetTracksAssociationRef &jetTracks, const reco::Vertex &pv)
T const * product() const
RefToBaseProd< T > makeRefToBaseProdFrom(RefToBase< T > const &iRef, Event const &iEvent)
double y0() const
y coordinate
const_iterator begin() const
edm::EDGetTokenT< reco::JetTracksAssociationCollection > jetTrackToken
double x0() const
x coordinate