#include <RecoTracker/ConstraintProducerTest/src/TwoBodyDecayMomConstraintProducer.cc>
Private Types | |
enum | MomentumForRefitting { atVertex, atInnermostSurface } |
Private Member Functions | |
std::pair< bool, TrajectoryStateOnSurface > | innermostState (const reco::TransientTrack &ttrack) const |
bool | match (const TrajectoryStateOnSurface &newTsos, const TrajectoryStateOnSurface &oldTsos) const |
std::pair< double, double > | momentaAtInnermostSurface (const TwoBodyDecay &tbd, const std::vector< reco::TransientTrack > &ttracks, const MagneticField *magField) const |
std::pair< double, double > | momentaAtVertex (const TwoBodyDecay &tbd) const |
void | produce (edm::StreamID streamid, edm::Event &, const edm::EventSetup &) const override |
Static Private Member Functions | |
static MomentumForRefitting | momentumForRefittingFromString (std::string momentumForRefittingString) |
Private Attributes | |
const edm::InputTag | bsSrcTag_ |
edm::EDGetTokenT< reco::BeamSpot > | bsToken_ |
const double | chi2CutValue_ |
const double | fixedMomentumError_ |
const edm::ESGetToken< MagneticField, IdealMagneticFieldRecord > | magFieldToken_ |
const MomentumForRefitting | momentumForRefitting_ |
const double | primaryMass_ |
const double | primaryWidth_ |
const double | secondaryMass_ |
const double | sigmaPositionCutValue_ |
const edm::InputTag | srcTag_ |
const TwoBodyDecayFitter | tbdFitter_ |
edm::EDGetTokenT< reco::TrackCollection > | trackCollToken_ |
const edm::ESGetToken< GlobalTrackingGeometry, GlobalTrackingGeometryRecord > | trackingGeometryToken_ |
Additional Inherited Members | |
Public Types inherited from edm::global::EDProducerBase | |
typedef EDProducerBase | ModuleType |
Public Types inherited from edm::ProducerBase | |
template<typename T > | |
using | BranchAliasSetterT = ProductRegistryHelper::BranchAliasSetterT< T > |
using | ModuleToResolverIndicies = std::unordered_multimap< std::string, std::tuple< edm::TypeID const *, const char *, edm::ProductResolverIndex > > |
typedef ProductRegistryHelper::TypeLabelList | TypeLabelList |
Public Types inherited from edm::EDConsumerBase | |
typedef ProductLabels | Labels |
Static Public Member Functions inherited from edm::global::EDProducerBase | |
static const std::string & | baseType () |
static void | fillDescriptions (ConfigurationDescriptions &descriptions) |
static void | prevalidate (ConfigurationDescriptions &descriptions) |
Protected Member Functions inherited from edm::ProducerBase | |
template<Transition Tr = Transition::Event> | |
auto | produces (std::string instanceName) noexcept |
declare what type of product will make and with which optional label More... | |
template<Transition B> | |
BranchAliasSetter | produces (const TypeID &id, std::string instanceName=std::string(), bool recordProvenance=true) |
template<BranchType B> | |
BranchAliasSetter | produces (const TypeID &id, std::string instanceName=std::string(), bool recordProvenance=true) |
BranchAliasSetter | produces (const TypeID &id, std::string instanceName=std::string(), bool recordProvenance=true) |
template<typename ProductType , Transition B> | |
BranchAliasSetterT< ProductType > | produces (std::string instanceName) |
template<class ProductType > | |
BranchAliasSetterT< ProductType > | produces () |
template<typename ProductType , BranchType B> | |
BranchAliasSetterT< ProductType > | produces (std::string instanceName) |
template<typename ProductType , BranchType B> | |
BranchAliasSetterT< ProductType > | produces () |
template<class ProductType > | |
BranchAliasSetterT< ProductType > | produces (std::string instanceName) |
template<typename ProductType , Transition B> | |
BranchAliasSetterT< ProductType > | produces () |
template<Transition Tr = Transition::Event> | |
auto | produces () noexcept |
ProducesCollector | producesCollector () |
Protected Member Functions inherited from edm::EDConsumerBase | |
template<typename ProductType , BranchType B = InEvent> | |
EDGetTokenT< ProductType > | consumes (edm::InputTag const &tag) |
template<BranchType B = InEvent> | |
EDConsumerBaseAdaptor< B > | consumes (edm::InputTag tag) noexcept |
EDGetToken | consumes (const TypeToGet &id, edm::InputTag const &tag) |
template<BranchType B> | |
EDGetToken | consumes (TypeToGet const &id, edm::InputTag const &tag) |
ConsumesCollector | consumesCollector () |
Use a ConsumesCollector to gather consumes information from helper functions. More... | |
template<typename ESProduct , typename ESRecord , Transition Tr = Transition::Event> | |
auto | esConsumes () |
template<typename ESProduct , typename ESRecord , Transition Tr = Transition::Event> | |
auto | esConsumes (ESInputTag const &tag) |
template<Transition Tr = Transition::Event> | |
constexpr auto | esConsumes () |
template<Transition Tr = Transition::Event> | |
auto | esConsumes (ESInputTag tag) |
template<Transition Tr = Transition::Event> | |
ESGetTokenGeneric | esConsumes (eventsetup::EventSetupRecordKey const &iRecord, eventsetup::DataKey const &iKey) |
Used with EventSetupRecord::doGet. More... | |
template<typename ProductType , BranchType B = InEvent> | |
EDGetTokenT< ProductType > | mayConsume (edm::InputTag const &tag) |
EDGetToken | mayConsume (const TypeToGet &id, edm::InputTag const &tag) |
template<BranchType B> | |
EDGetToken | mayConsume (const TypeToGet &id, edm::InputTag const &tag) |
void | resetItemsToGetFrom (BranchType iType) |
Description: Produces track parameter constraints for refitting tracks, according to information TwoBodyDecay kinematic fit.
Original Author: Edmund Widl
Definition at line 40 of file TwoBodyDecayMomConstraintProducer.cc.
Enumerator | |
---|---|
atVertex | |
atInnermostSurface |
Definition at line 70 of file TwoBodyDecayMomConstraintProducer.cc.
|
explicit |
Definition at line 84 of file TwoBodyDecayMomConstraintProducer.cc.
References bsSrcTag_, bsToken_, ProducerED_cfi::InputTag, srcTag_, and trackCollToken_.
|
overridedefault |
|
private |
Definition at line 227 of file TwoBodyDecayMomConstraintProducer.cc.
References TrajectoryStateOnSurface::globalPosition(), reco::TransientTrack::innermostMeasurementState(), insideOut, reco::TransientTrack::outermostMeasurementState(), and PV3DBase< T, PVType, FrameType >::perp().
Referenced by momentaAtInnermostSurface().
|
private |
Definition at line 235 of file TwoBodyDecayMomConstraintProducer.cc.
References TrajectoryStateOnSurface::localPosition(), sigmaPositionCutValue_, PV3DBase< T, PVType, FrameType >::x(), and PV3DBase< T, PVType, FrameType >::y().
Referenced by momentaAtInnermostSurface().
|
private |
Get the innermost trajectory states
Construct the TBD trajectory states
Match the old and the new estimates for the trajectory state
Definition at line 200 of file TwoBodyDecayMomConstraintProducer.cc.
References innermostState(), TwoBodyDecayTrajectoryState::isValid(), match(), mps_fire::result, secondaryMass_, and TwoBodyDecayTrajectoryState::trajectoryStates().
Referenced by produce().
|
private |
Definition at line 192 of file TwoBodyDecayMomConstraintProducer.cc.
References TwoBodyDecayModel::cartesianSecondaryMomenta(), TwoBodyDecayParameters::mass, and secondaryMass_.
Referenced by produce().
|
staticprivate |
Definition at line 247 of file TwoBodyDecayMomConstraintProducer.cc.
References atInnermostSurface, atVertex, and Exception.
|
overrideprivatevirtual |
Construct virtual measurement (for TBD)
Get transient tracks from track collection
Fit the TBD
Implements edm::global::EDProducerBase.
Definition at line 111 of file TwoBodyDecayMomConstraintProducer.cc.
References atInnermostSurface, atVertex, pwdgSkimBPark_cfi::beamSpot, bsToken_, TwoBodyDecay::chi2(), chi2CutValue_, TwoBodyDecayFitter::estimate(), fixedMomentumError_, edm::EventSetup::getData(), edm::EventSetup::getHandle(), iEvent, TwoBodyDecay::isValid(), magFieldToken_, momentaAtInnermostSurface(), momentaAtVertex(), momentumForRefitting_, eostools::move(), or, convertSQLitetoXML_cfg::output, primaryMass_, primaryWidth_, secondaryMass_, tbdFitter_, trackCollToken_, and trackingGeometryToken_.
|
private |
Definition at line 58 of file TwoBodyDecayMomConstraintProducer.cc.
Referenced by TwoBodyDecayMomConstraintProducer().
|
private |
Definition at line 76 of file TwoBodyDecayMomConstraintProducer.cc.
Referenced by produce(), and TwoBodyDecayMomConstraintProducer().
|
private |
Definition at line 67 of file TwoBodyDecayMomConstraintProducer.cc.
Referenced by produce().
|
private |
Definition at line 68 of file TwoBodyDecayMomConstraintProducer.cc.
Referenced by produce().
|
private |
Definition at line 78 of file TwoBodyDecayMomConstraintProducer.cc.
Referenced by produce().
|
private |
Definition at line 71 of file TwoBodyDecayMomConstraintProducer.cc.
Referenced by produce().
|
private |
Definition at line 62 of file TwoBodyDecayMomConstraintProducer.cc.
Referenced by produce().
|
private |
Definition at line 63 of file TwoBodyDecayMomConstraintProducer.cc.
Referenced by produce().
|
private |
Definition at line 64 of file TwoBodyDecayMomConstraintProducer.cc.
Referenced by momentaAtInnermostSurface(), momentaAtVertex(), and produce().
|
private |
Definition at line 66 of file TwoBodyDecayMomConstraintProducer.cc.
Referenced by match().
|
private |
Definition at line 57 of file TwoBodyDecayMomConstraintProducer.cc.
Referenced by TwoBodyDecayMomConstraintProducer().
|
private |
Definition at line 60 of file TwoBodyDecayMomConstraintProducer.cc.
Referenced by produce().
|
private |
Definition at line 75 of file TwoBodyDecayMomConstraintProducer.cc.
Referenced by produce(), and TwoBodyDecayMomConstraintProducer().
|
private |
Definition at line 79 of file TwoBodyDecayMomConstraintProducer.cc.
Referenced by produce().