Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:01:16

0001 #ifndef RecoAlgos_ObjectSelector_h
0002 #define RecoAlgos_ObjectSelector_h
0003 /** \class ObjectSelector
0004  *
0005  * selects a subset of a collection.
0006  *
0007  * \author Luca Lista, INFN
0008  *
0009  * \version $Revision: 1.3 $
0010  *
0011  * $Id: ObjectSelector.h,v 1.3 2010/02/20 20:55:27 wmtan Exp $
0012  *
0013  */
0014 
0015 #include "FWCore/Framework/interface/stream/EDFilter.h"
0016 #include "CommonTools/UtilAlgos/interface/ObjectSelectorBase.h"
0017 #include "CommonTools/UtilAlgos/interface/NonNullNumberSelector.h"
0018 #include "CommonTools/UtilAlgos/interface/StoreManagerTrait.h"
0019 #include "CommonTools/UtilAlgos/interface/SelectedOutputCollectionTrait.h"
0020 #include "CommonTools/UtilAlgos/interface/NullPostProcessor.h"
0021 #include "CommonTools/UtilAlgos/interface/EventSetupInitTrait.h"
0022 
0023 template <typename Selector,
0024           typename OutputCollection =
0025               typename ::helper::SelectedOutputCollectionTrait<typename Selector::collection>::type,
0026           typename SizeSelector = NonNullNumberSelector,
0027           typename PostProcessor = ::helper::NullPostProcessor<OutputCollection>,
0028           typename StoreManager = typename ::helper::StoreManagerTrait<OutputCollection, edm::stream::EDFilter<>>::type,
0029           typename Base = typename ::helper::StoreManagerTrait<OutputCollection, edm::stream::EDFilter<>>::base,
0030           typename Init = typename ::reco::modules::EventSetupInit<Selector>::type>
0031 using ObjectSelector =
0032     ObjectSelectorBase<Selector, OutputCollection, SizeSelector, PostProcessor, StoreManager, Base, Init>;
0033 
0034 #endif