CMS 3D CMS Logo

TrackConfigSelector Struct Reference

List of all members.

Public Types

typedef reco::TrackCollection collection
typedef container::const_iterator const_iterator
typedef std::vector< const
reco::Track * > 
container

Public Member Functions

const_iterator begin () const
const_iterator end () const
void select (const edm::Handle< reco::TrackCollection > &c, const edm::Event &evt, const edm::EventSetup &)
size_t size () const
 TrackConfigSelector (const edm::ParameterSet &cfg)

Private Attributes

AlignmentTrackSelector theBaseSelector
bool theBaseSwitch
AlignmentGlobalTrackSelector theGlobalSelector
bool theGlobalSwitch
container theSelectedTracks
AlignmentTwoBodyDecayTrackSelector theTwoBodyDecaySelector
bool theTwoBodyDecaySwitch


Detailed Description

Definition at line 18 of file AlignmentTrackSelectorModule.cc.


Member Typedef Documentation

typedef reco::TrackCollection TrackConfigSelector::collection

Definition at line 22 of file AlignmentTrackSelectorModule.cc.

typedef container::const_iterator TrackConfigSelector::const_iterator

Definition at line 21 of file AlignmentTrackSelectorModule.cc.

typedef std::vector<const reco::Track*> TrackConfigSelector::container

Definition at line 20 of file AlignmentTrackSelectorModule.cc.


Constructor & Destructor Documentation

TrackConfigSelector::TrackConfigSelector ( const edm::ParameterSet cfg  )  [inline]

Definition at line 24 of file AlignmentTrackSelectorModule.cc.

References theBaseSelector, theBaseSwitch, theGlobalSelector, theGlobalSwitch, theTwoBodyDecaySelector, theTwoBodyDecaySwitch, AlignmentTrackSelector::useThisFilter(), AlignmentTwoBodyDecayTrackSelector::useThisFilter(), and AlignmentGlobalTrackSelector::useThisFilter().

00024                                                     :
00025     theBaseSelector(cfg),
00026     theGlobalSelector(cfg.getParameter<edm::ParameterSet>("GlobalSelector")),
00027     theTwoBodyDecaySelector(cfg.getParameter<edm::ParameterSet>("TwoBodyDecaySelector"))
00028   {
00029     //TODO Wrap the BaseSelector into its own PSet
00030     theBaseSwitch = theBaseSelector.useThisFilter();
00031     
00032     theGlobalSwitch =  theGlobalSelector.useThisFilter();
00033       
00034     theTwoBodyDecaySwitch = theTwoBodyDecaySelector.useThisFilter();
00035   }
  


Member Function Documentation

const_iterator TrackConfigSelector::begin (  )  const [inline]

Definition at line 37 of file AlignmentTrackSelectorModule.cc.

References theSelectedTracks.

00037 { return theSelectedTracks.begin(); }

const_iterator TrackConfigSelector::end (  )  const [inline]

Definition at line 38 of file AlignmentTrackSelectorModule.cc.

References theSelectedTracks.

00038 { return theSelectedTracks.end(); }

void TrackConfigSelector::select ( const edm::Handle< reco::TrackCollection > &  c,
const edm::Event evt,
const edm::EventSetup  
) [inline]

Definition at line 41 of file AlignmentTrackSelectorModule.cc.

References i, edm::Handle< T >::product(), AlignmentTwoBodyDecayTrackSelector::select(), AlignmentGlobalTrackSelector::select(), AlignmentTrackSelector::select(), theBaseSelector, theBaseSwitch, theGlobalSelector, theGlobalSwitch, theSelectedTracks, theTwoBodyDecaySelector, and theTwoBodyDecaySwitch.

00043   {
00044     theSelectedTracks.clear();
00045     for( reco::TrackCollection::const_iterator i=c.product()->begin();i!=c.product()->end();++i){
00046       theSelectedTracks.push_back(& * i );
00047     }
00048     // might add EvetSetup to the select(...) method of the Selectors
00049     if(theBaseSwitch)
00050       theSelectedTracks=theBaseSelector.select(theSelectedTracks,evt);
00051     if(theGlobalSwitch)
00052       theSelectedTracks=theGlobalSelector.select(theSelectedTracks,evt);    
00053     if(theTwoBodyDecaySwitch)
00054       theSelectedTracks=theTwoBodyDecaySelector.select(theSelectedTracks,evt);
00055   }

size_t TrackConfigSelector::size ( void   )  const [inline]

Definition at line 39 of file AlignmentTrackSelectorModule.cc.

References theSelectedTracks.

00039 { return theSelectedTracks.size(); }


Member Data Documentation

AlignmentTrackSelector TrackConfigSelector::theBaseSelector [private]

Definition at line 61 of file AlignmentTrackSelectorModule.cc.

Referenced by select(), and TrackConfigSelector().

bool TrackConfigSelector::theBaseSwitch [private]

Definition at line 60 of file AlignmentTrackSelectorModule.cc.

Referenced by select(), and TrackConfigSelector().

AlignmentGlobalTrackSelector TrackConfigSelector::theGlobalSelector [private]

Definition at line 62 of file AlignmentTrackSelectorModule.cc.

Referenced by select(), and TrackConfigSelector().

bool TrackConfigSelector::theGlobalSwitch [private]

Definition at line 60 of file AlignmentTrackSelectorModule.cc.

Referenced by select(), and TrackConfigSelector().

container TrackConfigSelector::theSelectedTracks [private]

Definition at line 58 of file AlignmentTrackSelectorModule.cc.

Referenced by begin(), end(), select(), and size().

AlignmentTwoBodyDecayTrackSelector TrackConfigSelector::theTwoBodyDecaySelector [private]

Definition at line 63 of file AlignmentTrackSelectorModule.cc.

Referenced by select(), and TrackConfigSelector().

bool TrackConfigSelector::theTwoBodyDecaySwitch [private]

Definition at line 60 of file AlignmentTrackSelectorModule.cc.

Referenced by select(), and TrackConfigSelector().


The documentation for this struct was generated from the following file:
Generated on Tue Jun 9 18:34:02 2009 for CMSSW by  doxygen 1.5.4