1 #ifndef HLTCollectionProducer_h
2 #define HLTCollectionProducer_h
54 : hltObjectTag_(iConfig.getParameter<edm::
InputTag>(
"HLTObject")),
55 hltObjectToken_(consumes<trigger::TriggerFilterObjectWithRefs>(hltObjectTag_)),
56 triggerTypes_(iConfig.getParameter<std::
vector<int>>(
"TriggerTypes")) {
57 produces<std::vector<T>>();
81 std::unique_ptr<std::vector<T>>
collection(
new std::vector<T>());
86 std::vector<edm::Ref<std::vector<T>>> objectRefs;
88 for (
size_t t = 0;
t < triggerTypes_.size(); ++
t) {
90 hltObject->getObjects(triggerTypes_[
t], objectRefs);
91 for (
size_t i = 0;
i < objectRefs.size(); ++
i) {
92 collection->push_back(*objectRefs[
i]);
99 #endif // HLTCollectionProducer_h
OrphanHandle< PROD > put(std::unique_ptr< PROD > product)
Put a new product.
void produce(edm::StreamID, edm::Event &, const edm::EventSetup &) const override
bool getByToken(EDGetToken token, Handle< PROD > &result) const
~HLTCollectionProducer() override
std::string defaultModuleLabel()
HLTCollectionProducer(const edm::ParameterSet &)
const std::vector< int > triggerTypes_
const edm::EDGetTokenT< trigger::TriggerFilterObjectWithRefs > hltObjectToken_
ParameterDescriptionBase * add(U const &iLabel, T const &value)
const edm::InputTag hltObjectTag_
void add(std::string const &label, ParameterSetDescription const &psetDescription)
static void fillDescriptions(edm::ConfigurationDescriptions &descriptions)