CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Types | Public Member Functions | Protected Member Functions | Protected Attributes
CompositeTSG Class Referenceabstract

#include <CompositeTSG.h>

Inheritance diagram for CompositeTSG:
TrackerSeedGenerator CombinedTSG SeparatingTSG DualByEtaTSG DualByL2TSG

Public Types

typedef std::vector
< TrajectorySeed
BTSeedCollection
 
typedef std::pair< const
Trajectory *, reco::TrackRef
TrackCand
 
- Public Types inherited from TrackerSeedGenerator
typedef std::vector
< TrajectorySeed
BTSeedCollection
 
typedef std::pair< const
Trajectory *, reco::TrackRef
TrackCand
 

Public Member Functions

 CompositeTSG (const edm::ParameterSet &pset, edm::ConsumesCollector &IC)
 
void init (const MuonServiceProxy *service)
 initialized the TSGs More...
 
void setEvent (const edm::Event &event)
 set the event to the TSGs More...
 
virtual void trackerSeeds (const TrackCand &, const TrackingRegion &, const TrackerTopology *, BTSeedCollection &)=0
 provides the seeds from the TSGs: must be overloaded More...
 
virtual ~CompositeTSG ()
 
- Public Member Functions inherited from TrackerSeedGenerator
const edm::EventgetEvent () const
 
 TrackerSeedGenerator ()
 
virtual ~TrackerSeedGenerator ()
 destructor More...
 

Protected Member Functions

unsigned int nTSGs ()
 

Protected Attributes

std::string theCategory
 
std::vector< std::string > theNames
 
const MuonServiceProxytheProxyService
 
std::vector
< TrackerSeedGenerator * > 
theTSGs
 
- Protected Attributes inherited from TrackerSeedGenerator
const edm::EventtheEvent
 
const MuonServiceProxytheProxyService
 

Detailed Description

Description: TrackerSeedGenerator generic class to allow more than one TSG to be used. used as a SeparatingTSG of CombinedTSG

Author
Jean-Roch Vlimant, Adam Everett

Definition at line 21 of file CompositeTSG.h.

Member Typedef Documentation

Definition at line 24 of file CompositeTSG.h.

Definition at line 25 of file CompositeTSG.h.

Constructor & Destructor Documentation

CompositeTSG::CompositeTSG ( const edm::ParameterSet pset,
edm::ConsumesCollector IC 
)

Definition at line 7 of file CompositeTSG.cc.

References SurfaceDeformationFactory::create(), edm::ParameterSet::empty(), reco::get(), edm::ParameterSet::getParameter(), AlCaHLTBitMon_QueryRunRegistry::string, theCategory, theNames, and theTSGs.

7  {
8  theCategory = "CompositeTSG";
9 
10  //configure the individual components of the TSG
11  std::vector<std::string> PSetNames = par.getParameter<std::vector<std::string> >("PSetNames");
12 
13  for (std::vector<std::string>::iterator nIt = PSetNames.begin();nIt!=PSetNames.end();nIt++){
15  if (TSGpset.empty()) {
16  theNames.push_back((*nIt)+":"+"NULL");
17  theTSGs.push_back((TrackerSeedGenerator*)(0));
18  }else {
19  std::string SeedGenName = TSGpset.getParameter<std::string>("ComponentName");
20  theNames.push_back((*nIt)+":"+SeedGenName);
21  theTSGs.push_back(TrackerSeedGeneratorFactory::get()->create(SeedGenName,TSGpset,IC));
22  }
23  }
24 
25 }
T getParameter(std::string const &) const
bool empty() const
Definition: ParameterSet.h:216
std::vector< TrackerSeedGenerator * > theTSGs
Definition: CompositeTSG.h:41
std::string theCategory
Definition: CompositeTSG.h:43
std::vector< std::string > theNames
Definition: CompositeTSG.h:42
SurfaceDeformation * create(int type, const std::vector< double > &params)
T get(const Candidate &c)
Definition: component.h:55
CompositeTSG::~CompositeTSG ( )
virtual

Definition at line 27 of file CompositeTSG.cc.

27  {
28  //delete the components ?
29 }

Member Function Documentation

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.

32  {
33  theProxyService = service;
34  for (unsigned int iTSG=0; iTSG!=theTSGs.size();iTSG++){
35  if(theTSGs[iTSG]) theTSGs[iTSG]->init(service);
36  }
37 }
std::vector< TrackerSeedGenerator * > theTSGs
Definition: CompositeTSG.h:41
const MuonServiceProxy * theProxyService
Definition: CompositeTSG.h:45
unsigned int CompositeTSG::nTSGs ( )
inlineprotected

Definition at line 40 of file CompositeTSG.h.

References theTSGs.

Referenced by DualByEtaTSG::DualByEtaTSG(), and DualByL2TSG::DualByL2TSG().

40 { return theTSGs.size();}
std::vector< TrackerSeedGenerator * > theTSGs
Definition: CompositeTSG.h:41
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.

39  {
40  theEvent = &event;
41  for (unsigned int iTSG=0; iTSG!=theTSGs.size();iTSG++){
42  if(theTSGs[iTSG]) theTSGs[iTSG]->setEvent(event);
43  }
44 }
const edm::Event * theEvent
How EventSelector::AcceptEvent() decides whether to accept an event for output otherwise it is excluding the probing of A single or multiple positive and the trigger will pass if any such matching triggers are PASS or EXCEPTION[A criterion thatmatches no triggers at all is detected and causes a throw.] A single negative with an expectation of appropriate bit checking in the decision and the trigger will pass if any such matching triggers are FAIL or EXCEPTION A wildcarded negative criterion that matches more than one trigger in the trigger but the state exists so we define the behavior If all triggers are the negative crieriion will lead to accepting the event(this again matches the behavior of"!*"before the partial wildcard feature was incorporated).The per-event"cost"of each negative criterion with multiple relevant triggers is about the same as!*was in the past
std::vector< TrackerSeedGenerator * > theTSGs
Definition: CompositeTSG.h:41
virtual void CompositeTSG::trackerSeeds ( const TrackCand ,
const TrackingRegion ,
const TrackerTopology ,
BTSeedCollection  
)
pure virtual

provides the seeds from the TSGs: must be overloaded

Reimplemented from TrackerSeedGenerator.

Implemented in CombinedTSG, and SeparatingTSG.

Member Data Documentation

std::string CompositeTSG::theCategory
protected

Definition at line 43 of file CompositeTSG.h.

Referenced by CompositeTSG().

std::vector<std::string> CompositeTSG::theNames
protected

Definition at line 42 of file CompositeTSG.h.

Referenced by CompositeTSG(), and SeparatingTSG::trackerSeeds().

const MuonServiceProxy* CompositeTSG::theProxyService
protected

Definition at line 45 of file CompositeTSG.h.

Referenced by init().

std::vector<TrackerSeedGenerator*> CompositeTSG::theTSGs
protected