CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Member Functions | Private Member Functions | Private Attributes
HLTTrackSeedMultiplicityFilter Class Reference
Inheritance diagram for HLTTrackSeedMultiplicityFilter:
HLTFilter edm::EDFilter edm::ProducerBase edm::ProductRegistryHelper

Public Member Functions

 HLTTrackSeedMultiplicityFilter (const edm::ParameterSet &)
 
 ~HLTTrackSeedMultiplicityFilter ()
 
- Public Member Functions inherited from HLTFilter
 HLTFilter (const edm::ParameterSet &config)
 
int module () const
 
const std::string * moduleLabel () const
 
int path () const
 
const std::string * pathName () const
 
std::pair< int, int > pmid () const
 
bool saveTags () const
 
virtual ~HLTFilter ()
 
- Public Member Functions inherited from edm::EDFilter
 EDFilter ()
 
virtual ~EDFilter ()
 
- Public Member Functions inherited from edm::ProducerBase
 ProducerBase ()
 
void registerProducts (ProducerBase *, ProductRegistry *, ModuleDescription const &)
 
boost::function< void(const
BranchDescription &)> 
registrationCallback () const
 used by the fwk to register list of products More...
 
virtual ~ProducerBase ()
 

Private Member Functions

virtual bool hltFilter (edm::Event &, const edm::EventSetup &, trigger::TriggerFilterObjectWithRefs &filterproduct)
 

Private Attributes

edm::InputTag inputTag_
 
unsigned int max_seeds_
 
unsigned int min_seeds_
 

Additional Inherited Members

- Public Types inherited from edm::EDFilter
typedef EDFilter ModuleType
 
typedef WorkerT< EDFilterWorkerType
 
- Public Types inherited from edm::ProducerBase
typedef
ProductRegistryHelper::TypeLabelList 
TypeLabelList
 
- Static Public Member Functions inherited from HLTFilter
static void makeHLTFilterDescription (edm::ParameterSetDescription &desc)
 
- Static Public Member Functions inherited from edm::EDFilter
static const std::string & baseType ()
 
static void fillDescriptions (ConfigurationDescriptions &descriptions)
 
static void prevalidate (ConfigurationDescriptions &)
 
- Protected Member Functions inherited from edm::EDFilter
CurrentProcessingContext const * currentContext () const
 
- Protected Member Functions inherited from edm::ProducerBase
template<class TProducer , class TMethod >
void callWhenNewProductsRegistered (TProducer *iProd, TMethod iMethod)
 

Detailed Description

Definition at line 7 of file HLTTrackSeedMultiplicityFilter.cc.

Constructor & Destructor Documentation

HLTTrackSeedMultiplicityFilter::HLTTrackSeedMultiplicityFilter ( const edm::ParameterSet config)
explicit

Definition at line 34 of file HLTTrackSeedMultiplicityFilter.cc.

References inputTag_, LogDebug, max_seeds_, and min_seeds_.

34  : HLTFilter(config),
35  inputTag_ (config.getParameter<edm::InputTag>("inputTag")),
36  min_seeds_ (config.getParameter<unsigned int>("minSeeds")),
37  max_seeds_ (config.getParameter<unsigned int>("maxSeeds"))
38 {
39  LogDebug("") << "Using the " << inputTag_ << " input collection";
40  LogDebug("") << "Requesting at least " << min_seeds_ << " seeds";
41  if(max_seeds_ > 0)
42  LogDebug("") << "...but no more than " << max_seeds_ << " seeds";
43 }
#define LogDebug(id)
T getParameter(std::string const &) const
HLTFilter(const edm::ParameterSet &config)
Definition: HLTFilter.cc:18
HLTTrackSeedMultiplicityFilter::~HLTTrackSeedMultiplicityFilter ( )

Definition at line 45 of file HLTTrackSeedMultiplicityFilter.cc.

46 {
47 }

Member Function Documentation

bool HLTTrackSeedMultiplicityFilter::hltFilter ( edm::Event event,
const edm::EventSetup iSetup,
trigger::TriggerFilterObjectWithRefs filterproduct 
)
privatevirtual

Implements HLTFilter.

Definition at line 54 of file HLTTrackSeedMultiplicityFilter.cc.

References accept(), trigger::TriggerFilterObjectWithRefs::addCollectionTag(), inputTag_, edm::HandleBase::isValid(), LogDebug, max_seeds_, min_seeds_, edm::Handle< T >::product(), and HLTFilter::saveTags().

55 {
56  // All HLT filters must create and fill an HLT filter object,
57  // recording any reconstructed physics objects satisfying (or not)
58  // this HLT filter, and place it in the Event.
59 
60  // The filter object
61  if (saveTags()) filterproduct.addCollectionTag(inputTag_);
62 
63  // get hold of products from Event
65  event.getByLabel(inputTag_, seedColl);
66 
67  const TrajectorySeedCollection *rsSeedCollection = 0;
68 
69 
70  if( seedColl.isValid() )
71  {
72  //std::cout << "Problem!!" << std::endl;
73  rsSeedCollection = seedColl.product();
74  }
75  else
76  {
77  return false;
78  }
79 
80 
81  // Number of trakc seeds in the collection
82 
83  unsigned int seedsize = rsSeedCollection->size();
84 
85 
86  LogDebug("") << "Number of seeds: " << seedsize;
87 
88  // Apply the filter cuts
89 
90  bool accept = (seedsize >= min_seeds_);
91 
92  if(max_seeds_ > 0)
93  accept &= (seedsize <= max_seeds_);
94 
95  // return with final filter decision
96  return accept;
97 }
#define LogDebug(id)
bool accept(const edm::Event &event, const edm::TriggerResults &triggerTable, const std::string &triggerPath)
Definition: TopDQMHelpers.h:22
std::vector< TrajectorySeed > TrajectorySeedCollection
bool isValid() const
Definition: HandleBase.h:76
void addCollectionTag(const edm::InputTag &collectionTag)
collectionTags
T const * product() const
Definition: Handle.h:74
bool saveTags() const
Definition: HLTFilter.h:45

Member Data Documentation

edm::InputTag HLTTrackSeedMultiplicityFilter::inputTag_
private

Definition at line 15 of file HLTTrackSeedMultiplicityFilter.cc.

Referenced by hltFilter(), and HLTTrackSeedMultiplicityFilter().

unsigned int HLTTrackSeedMultiplicityFilter::max_seeds_
private

Definition at line 17 of file HLTTrackSeedMultiplicityFilter.cc.

Referenced by hltFilter(), and HLTTrackSeedMultiplicityFilter().

unsigned int HLTTrackSeedMultiplicityFilter::min_seeds_
private

Definition at line 16 of file HLTTrackSeedMultiplicityFilter.cc.

Referenced by hltFilter(), and HLTTrackSeedMultiplicityFilter().