Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:12:07

0001 #ifndef FWCore_Framework_one_implementorsMethods_h
0002 #define FWCore_Framework_one_implementorsMethods_h
0003 // -*- C++ -*-
0004 //
0005 // Package:     FWCore/Framework
0006 // File  :     implementorsMethods
0007 //
0008 /**\file implementorsMethods.h "FWCore/Framework/src/one/implementorsMethods.h"
0009 
0010  Description: [one line class summary]
0011 
0012  Usage:
0013     <usage>
0014 
0015 */
0016 //
0017 // Original Author:  Chris Jones
0018 //         Created:  Thu, 09 May 2013 20:13:53 GMT
0019 //
0020 
0021 // system include files
0022 
0023 // user include files
0024 #include "FWCore/Framework/interface/one/implementors.h"
0025 #include "FWCore/Framework/interface/SharedResourcesRegistry.h"
0026 #include "FWCore/Framework/interface/SharedResourcesAcquirer.h"
0027 
0028 // forward declarations
0029 
0030 namespace edm {
0031   namespace one {
0032     namespace impl {
0033       template <typename T>
0034       void SharedResourcesUser<T>::usesResource(std::string const& iName) {
0035         resourceNames_.insert(iName);
0036         SharedResourcesRegistry::instance()->registerSharedResource(iName);
0037       }
0038 
0039       template <typename T>
0040       SharedResourcesAcquirer SharedResourcesUser<T>::createAcquirer() {
0041         std::vector<std::string> v(resourceNames_.begin(), resourceNames_.end());
0042         return SharedResourcesRegistry::instance()->createAcquirer(v);
0043       }
0044 
0045       template <typename T>
0046       void RunWatcher<T>::doBeginRun_(Run const& rp, EventSetup const& c) {
0047         this->beginRun(rp, c);
0048       }
0049       template <typename T>
0050       void RunWatcher<T>::doEndRun_(Run const& rp, EventSetup const& c) {
0051         this->endRun(rp, c);
0052       }
0053 
0054       template <typename T>
0055       void LuminosityBlockWatcher<T>::doBeginLuminosityBlock_(LuminosityBlock const& rp, EventSetup const& c) {
0056         this->beginLuminosityBlock(rp, c);
0057       }
0058       template <typename T>
0059       void LuminosityBlockWatcher<T>::doEndLuminosityBlock_(LuminosityBlock const& rp, EventSetup const& c) {
0060         this->endLuminosityBlock(rp, c);
0061       }
0062 
0063       template <typename T>
0064       void WatchProcessBlock<T>::doBeginProcessBlock_(ProcessBlock const& pb) {
0065         this->beginProcessBlock(pb);
0066       }
0067 
0068       template <typename T>
0069       void WatchProcessBlock<T>::doEndProcessBlock_(ProcessBlock const& pb) {
0070         this->endProcessBlock(pb);
0071       }
0072 
0073       template <typename T>
0074       void BeginProcessBlockProducer<T>::doBeginProcessBlockProduce_(ProcessBlock& pb) {
0075         this->beginProcessBlockProduce(pb);
0076       }
0077 
0078       template <typename T>
0079       void EndProcessBlockProducer<T>::doEndProcessBlockProduce_(ProcessBlock& pb) {
0080         this->endProcessBlockProduce(pb);
0081       }
0082 
0083       template <typename T>
0084       void BeginRunProducer<T>::doBeginRunProduce_(Run& rp, EventSetup const& c) {
0085         this->beginRunProduce(rp, c);
0086       }
0087 
0088       template <typename T>
0089       void EndRunProducer<T>::doEndRunProduce_(Run& rp, EventSetup const& c) {
0090         this->endRunProduce(rp, c);
0091       }
0092 
0093       template <typename T>
0094       void BeginLuminosityBlockProducer<T>::doBeginLuminosityBlockProduce_(LuminosityBlock& rp, EventSetup const& c) {
0095         this->beginLuminosityBlockProduce(rp, c);
0096       }
0097 
0098       template <typename T>
0099       void EndLuminosityBlockProducer<T>::doEndLuminosityBlockProduce_(LuminosityBlock& rp, EventSetup const& c) {
0100         this->endLuminosityBlockProduce(rp, c);
0101       }
0102     }  // namespace impl
0103   }    // namespace one
0104 }  // namespace edm
0105 
0106 #endif