#include <CompositeTSG.h>
Public Types | |
typedef std::vector < TrajectorySeed > | BTSeedCollection |
typedef std::pair< const Trajectory *, reco::TrackRef > | TrackCand |
Public Member Functions | |
CompositeTSG (const edm::ParameterSet &pset) | |
void | init (const MuonServiceProxy *service) |
initialized the TSGs | |
void | setEvent (const edm::Event &event) |
set the event to the TSGs | |
virtual void | trackerSeeds (const TrackCand &, const TrackingRegion &, BTSeedCollection &)=0 |
provides the seeds from the TSGs: must be overloaded | |
virtual | ~CompositeTSG () |
Protected Member Functions | |
unsigned int | nTSGs () |
Protected Attributes | |
std::string | theCategory |
std::vector< std::string > | theNames |
const MuonServiceProxy * | theProxyService |
std::vector < TrackerSeedGenerator * > | theTSGs |
Description: TrackerSeedGenerator generic class to allow more than one TSG to be used. used as a SeparatingTSG of CombinedTSG
Definition at line 19 of file CompositeTSG.h.
typedef std::vector<TrajectorySeed> CompositeTSG::BTSeedCollection |
Reimplemented from TrackerSeedGenerator.
Definition at line 22 of file CompositeTSG.h.
typedef std::pair<const Trajectory*, reco::TrackRef> CompositeTSG::TrackCand |
Reimplemented from TrackerSeedGenerator.
Definition at line 23 of file CompositeTSG.h.
CompositeTSG::CompositeTSG | ( | const edm::ParameterSet & | pset | ) |
Definition at line 7 of file CompositeTSG.cc.
References SurfaceDeformationFactory::create(), edm::ParameterSet::empty(), reco::get(), edm::ParameterSet::getParameter(), theCategory, theNames, and theTSGs.
{ theCategory = "CompositeTSG"; //configure the individual components of the TSG std::vector<std::string> PSetNames = par.getParameter<std::vector<std::string> >("PSetNames"); for (std::vector<std::string>::iterator nIt = PSetNames.begin();nIt!=PSetNames.end();nIt++){ edm::ParameterSet TSGpset = par.getParameter<edm::ParameterSet>(*nIt); if (TSGpset.empty()) { theNames.push_back((*nIt)+":"+"NULL"); theTSGs.push_back((TrackerSeedGenerator*)(0)); }else { std::string SeedGenName = TSGpset.getParameter<std::string>("ComponentName"); theNames.push_back((*nIt)+":"+SeedGenName); theTSGs.push_back(TrackerSeedGeneratorFactory::get()->create(SeedGenName,TSGpset)); } } }
CompositeTSG::~CompositeTSG | ( | ) | [virtual] |
Definition at line 27 of file CompositeTSG.cc.
{
//delete the components ?
}
void CompositeTSG::init | ( | const MuonServiceProxy * | service | ) | [virtual] |
initialized the TSGs
Reimplemented from TrackerSeedGenerator.
Definition at line 32 of file CompositeTSG.cc.
References theProxyService, and theTSGs.
{ theProxyService = service; for (unsigned int iTSG=0; iTSG!=theTSGs.size();iTSG++){ if(theTSGs[iTSG]) theTSGs[iTSG]->init(service); } }
unsigned int CompositeTSG::nTSGs | ( | ) | [inline, protected] |
Definition at line 38 of file CompositeTSG.h.
References theTSGs.
Referenced by DualByEtaTSG::DualByEtaTSG(), and DualByL2TSG::DualByL2TSG().
{ return theTSGs.size();}
void CompositeTSG::setEvent | ( | const edm::Event & | event | ) | [virtual] |
set the event to the TSGs
Reimplemented from TrackerSeedGenerator.
Definition at line 39 of file CompositeTSG.cc.
References event(), TrackerSeedGenerator::theEvent, and theTSGs.
virtual void CompositeTSG::trackerSeeds | ( | const TrackCand & | , |
const TrackingRegion & | , | ||
BTSeedCollection & | |||
) | [pure virtual] |
provides the seeds from the TSGs: must be overloaded
Reimplemented from TrackerSeedGenerator.
Implemented in CombinedTSG, and SeparatingTSG.
std::string CompositeTSG::theCategory [protected] |
Reimplemented in CombinedTSG, DualByEtaTSG, DualByL2TSG, and SeparatingTSG.
Definition at line 41 of file CompositeTSG.h.
Referenced by CompositeTSG().
std::vector<std::string> CompositeTSG::theNames [protected] |
Definition at line 40 of file CompositeTSG.h.
Referenced by CompositeTSG(), and SeparatingTSG::trackerSeeds().
const MuonServiceProxy* CompositeTSG::theProxyService [protected] |
Reimplemented from TrackerSeedGenerator.
Definition at line 43 of file CompositeTSG.h.
Referenced by init().
std::vector<TrackerSeedGenerator*> CompositeTSG::theTSGs [protected] |
Definition at line 39 of file CompositeTSG.h.
Referenced by CompositeTSG(), init(), nTSGs(), setEvent(), CombinedTSG::trackerSeeds(), and SeparatingTSG::trackerSeeds().