CMS 3D CMS Logo

Public Member Functions | Private Attributes

VirtualKinematicParticleFactory Class Reference

#include <VirtualKinematicParticleFactory.h>

List of all members.

Public Member Functions

RefCountedKinematicParticle particle (const KinematicState &kineState, float &chiSquared, float &degreesOfFr, ReferenceCountingPointer< KinematicParticle > previousParticle, KinematicConstraint *lastConstraint=0) const
 VirtualKinematicParticleFactory (KinematicStatePropagator *pr)
 VirtualKinematicParticleFactory ()
 ~VirtualKinematicParticleFactory ()

Private Attributes

const
TransientTrackKinematicStateBuilder 
builder
KinematicStatePropagatorpropagator

Detailed Description

Definition at line 9 of file VirtualKinematicParticleFactory.h.


Constructor & Destructor Documentation

VirtualKinematicParticleFactory::VirtualKinematicParticleFactory ( )

Factory constructor taking a KinematicStatePropagator

Definition at line 4 of file VirtualKinematicParticleFactory.cc.

References propagator.

VirtualKinematicParticleFactory::VirtualKinematicParticleFactory ( KinematicStatePropagator pr)

Factory constructor taking a KinematicStatePropagator

Definition at line 7 of file VirtualKinematicParticleFactory.cc.

References KinematicStatePropagator::clone(), and propagator.

{
 if(pr!=0)
 {
  propagator = pr->clone();
 }else{
  propagator =  new TrackKinematicStatePropagator();
 }
}
VirtualKinematicParticleFactory::~VirtualKinematicParticleFactory ( ) [inline]

Default destructor

Definition at line 26 of file VirtualKinematicParticleFactory.h.

References propagator.

  {delete propagator;}

Member Function Documentation

RefCountedKinematicParticle VirtualKinematicParticleFactory::particle ( const KinematicState kineState,
float &  chiSquared,
float &  degreesOfFr,
ReferenceCountingPointer< KinematicParticle previousParticle,
KinematicConstraint lastConstraint = 0 
) const

Method building a particle out of new created kinematic state, chi2, number of degrees of freedom and history information

Definition at line 17 of file VirtualKinematicParticleFactory.cc.

References propagator, and prp.

Referenced by FinalTreeBuilder::buildTree(), ConstrainedTreeBuilder::buildTree(), and ConstrainedTreeBuilderT::buildTree().

{
 if(previousParticle.get() != 0)
 {
  KinematicParticle * prp = &(*previousParticle);
  VirtualKinematicParticle * pr = dynamic_cast<VirtualKinematicParticle * >(prp);
  if(pr == 0){ throw VertexException("KinematicParticleFactoryFromTransientTrack::Previous particle passed is not TransientTrack based!");}
 } 
 return ReferenceCountingPointer<KinematicParticle>(new VirtualKinematicParticle(kineState, chiSquared, degreesOfFr, 
                                                                            lastConstraint, previousParticle, propagator));
}

Member Data Documentation

Definition at line 39 of file VirtualKinematicParticleFactory.h.