CMS 3D CMS Logo

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

#include <MultiHitGenerator.h>

Inheritance diagram for MultiHitGenerator:
OrderedHitsGenerator CombinedMultiHitGenerator MultiHitGeneratorFromPairAndLayers MultiHitGeneratorFromChi2

Public Member Functions

virtual void clear ()
 
virtual void hitSets (const TrackingRegion &reg, OrderedMultiHits &prs, const edm::EventSetup &es)
 
virtual void hitSets (const TrackingRegion &reg, OrderedMultiHits &prs, const edm::Event &ev, const edm::EventSetup &es)=0
 
 MultiHitGenerator (unsigned int size=400)
 
 MultiHitGenerator (MultiHitGenerator const &other)
 
virtual const OrderedMultiHitsrun (const TrackingRegion &region, const edm::Event &ev, const edm::EventSetup &es) final
 
virtual ~MultiHitGenerator ()
 
- Public Member Functions inherited from OrderedHitsGenerator
 OrderedHitsGenerator ()
 
virtual ~OrderedHitsGenerator ()
 

Protected Types

using cacheHitPointer = std::unique_ptr< BaseTrackerRecHit >
 
using cacheHits = std::vector< cacheHitPointer >
 

Protected Attributes

cacheHits cache
 
edm::RunningAverage localRA
 

Private Attributes

OrderedMultiHits theHitSets
 

Additional Inherited Members

- Public Attributes inherited from OrderedHitsGenerator
unsigned int theMaxElement
 

Detailed Description

Definition at line 20 of file MultiHitGenerator.h.

Member Typedef Documentation

using MultiHitGenerator::cacheHitPointer = std::unique_ptr<BaseTrackerRecHit>
protected

Definition at line 45 of file MultiHitGenerator.h.

using MultiHitGenerator::cacheHits = std::vector<cacheHitPointer>
protected

Definition at line 46 of file MultiHitGenerator.h.

Constructor & Destructor Documentation

MultiHitGenerator::MultiHitGenerator ( unsigned int  size = 400)
inline

Definition at line 23 of file MultiHitGenerator.h.

23 : localRA(size){}
edm::RunningAverage localRA
tuple size
Write out results.
MultiHitGenerator::MultiHitGenerator ( MultiHitGenerator const &  other)
inline

Definition at line 24 of file MultiHitGenerator.h.

24 : localRA(other.localRA.mean()){}
edm::RunningAverage localRA
virtual MultiHitGenerator::~MultiHitGenerator ( )
inlinevirtual

Definition at line 27 of file MultiHitGenerator.h.

27 { }

Member Function Documentation

void MultiHitGenerator::clear ( void  )
virtual

Reimplemented from OrderedHitsGenerator.

Reimplemented in CombinedMultiHitGenerator.

Definition at line 18 of file MultiHitGenerator.cc.

References cache, and theHitSets.

19 {
20  theHitSets.clear(); theHitSets.shrink_to_fit();
21  //std::cout << "MultiHitGenerator " << typeid(*this).name()
22  // <<" cache c " << cache.size() << ' ' << cache.capacity() << std::endl;
23  cache.clear();
24 }
OrderedMultiHits theHitSets
virtual void MultiHitGenerator::hitSets ( const TrackingRegion reg,
OrderedMultiHits prs,
const edm::EventSetup es 
)
inlinevirtual

Definition at line 33 of file MultiHitGenerator.h.

Referenced by run().

34  {}
virtual void MultiHitGenerator::hitSets ( const TrackingRegion reg,
OrderedMultiHits prs,
const edm::Event ev,
const edm::EventSetup es 
)
pure virtual
const OrderedMultiHits & MultiHitGenerator::run ( const TrackingRegion region,
const edm::Event ev,
const edm::EventSetup es 
)
finalvirtual

Implements OrderedHitsGenerator.

Definition at line 5 of file MultiHitGenerator.cc.

References hitSets(), localRA, OrderedMultiHits::size(), theHitSets, edm::RunningAverage::update(), and edm::RunningAverage::upper().

7 {
8  // std::cout << "MultiHitGenerator cache b " << cache.size() << std::endl;
9  theHitSets.clear(); // called multiple time for the same seed collection
10  theHitSets.reserve(localRA.upper());
11  hitSets(region, theHitSets, ev, es);
12  // std::cout << "MultiHitGenerator cache a " << cache.size() << std::endl;
13  theHitSets.shrink_to_fit();
15  return theHitSets;
16 }
virtual void hitSets(const TrackingRegion &reg, OrderedMultiHits &prs, const edm::EventSetup &es)
OrderedMultiHits theHitSets
virtual unsigned int size() const
int upper() const
edm::RunningAverage localRA
void update(unsigned int q)

Member Data Documentation

cacheHits MultiHitGenerator::cache
protected

Definition at line 47 of file MultiHitGenerator.h.

Referenced by clear(), and MultiHitGeneratorFromChi2::hitSets().

edm::RunningAverage MultiHitGenerator::localRA
protected

Definition at line 48 of file MultiHitGenerator.h.

Referenced by run().

OrderedMultiHits MultiHitGenerator::theHitSets
private

Definition at line 42 of file MultiHitGenerator.h.

Referenced by clear(), and run().