CMS 3D CMS Logo

Public Member Functions | Private Member Functions

FWTrackProxyBuilder Class Reference

Inheritance diagram for FWTrackProxyBuilder:
FWSimpleProxyBuilderTemplate< reco::Track > FWSimpleProxyBuilder FWProxyBuilderBase

List of all members.

Public Member Functions

 FWTrackProxyBuilder ()
 REGISTER_PROXYBUILDER_METHODS ()
virtual ~FWTrackProxyBuilder ()

Private Member Functions

void build (const reco::Track &iData, unsigned int iIndex, TEveElement &oItemHolder, const FWViewContext *)
 FWTrackProxyBuilder (const FWTrackProxyBuilder &)
const FWTrackProxyBuilderoperator= (const FWTrackProxyBuilder &)

Detailed Description

Definition at line 26 of file FWTrackProxyBuilder.cc.


Constructor & Destructor Documentation

FWTrackProxyBuilder::FWTrackProxyBuilder ( )

Definition at line 42 of file FWTrackProxyBuilder.cc.

{
}
FWTrackProxyBuilder::~FWTrackProxyBuilder ( ) [virtual]

Definition at line 46 of file FWTrackProxyBuilder.cc.

{
}
FWTrackProxyBuilder::FWTrackProxyBuilder ( const FWTrackProxyBuilder ) [private]

Member Function Documentation

void FWTrackProxyBuilder::build ( const reco::Track iData,
unsigned int  iIndex,
TEveElement &  oItemHolder,
const FWViewContext  
) [private, virtual]

iIndex is the index where iData is found in the container from which it came iItemHolder is the object to which you add your own objects which inherit from TEveElement

Reimplemented from FWSimpleProxyBuilderTemplate< reco::Track >.

Definition at line 51 of file FWTrackProxyBuilder.cc.

References FWProxyBuilderBase::context(), fw::estimate_field(), reco::TrackBase::eta(), reco::Track::extra(), fireworks::Context::getField(), fireworks::Context::getTrackerTrackPropagator(), fireworks::Context::getTrackPropagator(), FWMagField::guessField(), FWMagField::kNone, fireworks::prepareTrack(), LargeD0_PixelPairStep_cff::propagator, reco::TrackBase::pt(), and FWProxyBuilderBase::setupAddElement().

{
   if( context().getField()->getSource() == FWMagField::kNone ) {
      if( fabs( iData.eta() ) < 2.0 && iData.pt() > 0.5 && iData.pt() < 30 ) {
         double estimate = fw::estimate_field( iData, true );
         if( estimate >= 0 ) context().getField()->guessField( estimate );
      }
   }

   TEveTrackPropagator* propagator = ( !iData.extra().isAvailable() ) ?  context().getTrackerTrackPropagator() : context().getTrackPropagator();

   TEveTrack* trk = fireworks::prepareTrack( iData, propagator );
   trk->MakeTrack();
   setupAddElement(trk, &oItemHolder);
}
const FWTrackProxyBuilder& FWTrackProxyBuilder::operator= ( const FWTrackProxyBuilder ) [private]
FWTrackProxyBuilder::REGISTER_PROXYBUILDER_METHODS ( )