CMS 3D CMS Logo

Public Member Functions | Private Member Functions | Private Attributes

ObjectSelector< Selector, OutputCollection, SizeSelector, PostProcessor, StoreManager, Base, Init > Class Template Reference

#include <ObjectSelector.h>

Inheritance diagram for ObjectSelector< Selector, OutputCollection, SizeSelector, PostProcessor, StoreManager, Base, Init >:
Base

List of all members.

Public Member Functions

 ObjectSelector (const edm::ParameterSet &cfg)
 constructor
virtual ~ObjectSelector ()
 destructor

Private Member Functions

bool filter (edm::Event &evt, const edm::EventSetup &es)
 process one event

Private Attributes

bool filter_
 filter event
PostProcessor postProcessor_
 post processor
Selector selector_
 Object collection selector.
SizeSelector sizeSelector_
 selected object collection size selector
edm::InputTag src_
 source collection label

Detailed Description

template<typename Selector, typename OutputCollection = typename ::helper::SelectedOutputCollectionTrait<typename Selector::collection>::type, typename SizeSelector = NonNullNumberSelector, typename PostProcessor = ::helper::NullPostProcessor<OutputCollection>, typename StoreManager = typename ::helper::StoreManagerTrait<OutputCollection>::type, typename Base = typename ::helper::StoreManagerTrait<OutputCollection>::base, typename Init = typename ::reco::modules::EventSetupInit<Selector>::type>
class ObjectSelector< Selector, OutputCollection, SizeSelector, PostProcessor, StoreManager, Base, Init >

selects a subset of a collection.

Author:
Luca Lista, INFN
Version:
Revision:
1.4
Id:
ObjectSelector.h,v 1.4 2013/02/28 00:29:50 wmtan Exp

Definition at line 38 of file ObjectSelector.h.


Constructor & Destructor Documentation

template<typename Selector, typename OutputCollection = typename ::helper::SelectedOutputCollectionTrait<typename Selector::collection>::type, typename SizeSelector = NonNullNumberSelector, typename PostProcessor = ::helper::NullPostProcessor<OutputCollection>, typename StoreManager = typename ::helper::StoreManagerTrait<OutputCollection>::type, typename Base = typename ::helper::StoreManagerTrait<OutputCollection>::base, typename Init = typename ::reco::modules::EventSetupInit<Selector>::type>
ObjectSelector< Selector, OutputCollection, SizeSelector, PostProcessor, StoreManager, Base, Init >::ObjectSelector ( const edm::ParameterSet cfg) [inline, explicit]

constructor

Definition at line 41 of file ObjectSelector.h.

                                                       :
    Base(cfg),
    src_(cfg.template getParameter<edm::InputTag>("src")),
    filter_(false),
    selector_(cfg),
    sizeSelector_(reco::modules::make<SizeSelector>(cfg)),
    postProcessor_(cfg) {
    const std::string filter("filter");
    std::vector<std::string> bools = cfg.template getParameterNamesForType<bool>();
    bool found = std::find(bools.begin(), bools.end(), filter) != bools.end();
    if (found) filter_ = cfg.template getParameter<bool>(filter);
    postProcessor_.init(* this);
   }
template<typename Selector, typename OutputCollection = typename ::helper::SelectedOutputCollectionTrait<typename Selector::collection>::type, typename SizeSelector = NonNullNumberSelector, typename PostProcessor = ::helper::NullPostProcessor<OutputCollection>, typename StoreManager = typename ::helper::StoreManagerTrait<OutputCollection>::type, typename Base = typename ::helper::StoreManagerTrait<OutputCollection>::base, typename Init = typename ::reco::modules::EventSetupInit<Selector>::type>
virtual ObjectSelector< Selector, OutputCollection, SizeSelector, PostProcessor, StoreManager, Base, Init >::~ObjectSelector ( ) [inline, virtual]

destructor

Definition at line 55 of file ObjectSelector.h.

{ }

Member Function Documentation

template<typename Selector, typename OutputCollection = typename ::helper::SelectedOutputCollectionTrait<typename Selector::collection>::type, typename SizeSelector = NonNullNumberSelector, typename PostProcessor = ::helper::NullPostProcessor<OutputCollection>, typename StoreManager = typename ::helper::StoreManagerTrait<OutputCollection>::type, typename Base = typename ::helper::StoreManagerTrait<OutputCollection>::base, typename Init = typename ::reco::modules::EventSetupInit<Selector>::type>
bool ObjectSelector< Selector, OutputCollection, SizeSelector, PostProcessor, StoreManager, Base, Init >::filter ( edm::Event evt,
const edm::EventSetup es 
) [inline, private]

Member Data Documentation

template<typename Selector, typename OutputCollection = typename ::helper::SelectedOutputCollectionTrait<typename Selector::collection>::type, typename SizeSelector = NonNullNumberSelector, typename PostProcessor = ::helper::NullPostProcessor<OutputCollection>, typename StoreManager = typename ::helper::StoreManagerTrait<OutputCollection>::type, typename Base = typename ::helper::StoreManagerTrait<OutputCollection>::base, typename Init = typename ::reco::modules::EventSetupInit<Selector>::type>
bool ObjectSelector< Selector, OutputCollection, SizeSelector, PostProcessor, StoreManager, Base, Init >::filter_ [private]
template<typename Selector, typename OutputCollection = typename ::helper::SelectedOutputCollectionTrait<typename Selector::collection>::type, typename SizeSelector = NonNullNumberSelector, typename PostProcessor = ::helper::NullPostProcessor<OutputCollection>, typename StoreManager = typename ::helper::StoreManagerTrait<OutputCollection>::type, typename Base = typename ::helper::StoreManagerTrait<OutputCollection>::base, typename Init = typename ::reco::modules::EventSetupInit<Selector>::type>
PostProcessor ObjectSelector< Selector, OutputCollection, SizeSelector, PostProcessor, StoreManager, Base, Init >::postProcessor_ [private]
template<typename Selector, typename OutputCollection = typename ::helper::SelectedOutputCollectionTrait<typename Selector::collection>::type, typename SizeSelector = NonNullNumberSelector, typename PostProcessor = ::helper::NullPostProcessor<OutputCollection>, typename StoreManager = typename ::helper::StoreManagerTrait<OutputCollection>::type, typename Base = typename ::helper::StoreManagerTrait<OutputCollection>::base, typename Init = typename ::reco::modules::EventSetupInit<Selector>::type>
Selector ObjectSelector< Selector, OutputCollection, SizeSelector, PostProcessor, StoreManager, Base, Init >::selector_ [private]
template<typename Selector, typename OutputCollection = typename ::helper::SelectedOutputCollectionTrait<typename Selector::collection>::type, typename SizeSelector = NonNullNumberSelector, typename PostProcessor = ::helper::NullPostProcessor<OutputCollection>, typename StoreManager = typename ::helper::StoreManagerTrait<OutputCollection>::type, typename Base = typename ::helper::StoreManagerTrait<OutputCollection>::base, typename Init = typename ::reco::modules::EventSetupInit<Selector>::type>
SizeSelector ObjectSelector< Selector, OutputCollection, SizeSelector, PostProcessor, StoreManager, Base, Init >::sizeSelector_ [private]
template<typename Selector, typename OutputCollection = typename ::helper::SelectedOutputCollectionTrait<typename Selector::collection>::type, typename SizeSelector = NonNullNumberSelector, typename PostProcessor = ::helper::NullPostProcessor<OutputCollection>, typename StoreManager = typename ::helper::StoreManagerTrait<OutputCollection>::type, typename Base = typename ::helper::StoreManagerTrait<OutputCollection>::base, typename Init = typename ::reco::modules::EventSetupInit<Selector>::type>
edm::InputTag ObjectSelector< Selector, OutputCollection, SizeSelector, PostProcessor, StoreManager, Base, Init >::src_ [private]