Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:15:42

0001 #include "FWCore/Framework/interface/ESTransientHandle.h"
0002 #include "FWCore/ParameterSet/interface/ParameterSet.h"
0003 #include "FWCore/Utilities/interface/ESGetToken.h"
0004 #include "FWCore/Utilities/interface/ESInputTag.h"
0005 #include "HeterogeneousCore/AlpakaCore/interface/alpaka/ESGetToken.h"
0006 #include "HeterogeneousCore/AlpakaCore/interface/alpaka/ESProducer.h"
0007 #include "HeterogeneousCore/AlpakaCore/interface/alpaka/ModuleFactory.h"
0008 #include "HeterogeneousCore/AlpakaInterface/interface/config.h"
0009 #include "HeterogeneousCore/AlpakaInterface/interface/memory.h"
0010 #include "HeterogeneousCore/AlpakaTest/interface/AlpakaESTestData.h"
0011 #include "HeterogeneousCore/AlpakaTest/interface/AlpakaESTestRecords.h"
0012 #include "HeterogeneousCore/AlpakaTest/interface/ESTestData.h"
0013 #include "HeterogeneousCore/AlpakaTest/interface/alpaka/AlpakaESTestData.h"
0014 
0015 namespace ALPAKA_ACCELERATOR_NAMESPACE {
0016   /**
0017    * This class demonstrates an ESProducer that
0018    * - produces a null in a host produce function
0019    * - produces a null in a device produce function
0020    */
0021   class TestAlpakaESProducerNull : public ESProducer {
0022   public:
0023     TestAlpakaESProducerNull(edm::ParameterSet const& iConfig) : ESProducer(iConfig) {
0024       setWhatProduced(this, &TestAlpakaESProducerNull::produceHost);
0025       setWhatProduced(this, &TestAlpakaESProducerNull::produceDevice);
0026     }
0027 
0028     static void fillDescriptions(edm::ConfigurationDescriptions& descriptions) {
0029       edm::ParameterSetDescription desc;
0030       descriptions.addWithDefaultLabel(desc);
0031     }
0032 
0033     std::optional<AlpakaESTestDataAHost> produceHost(AlpakaESTestRecordA const& iRecord) { return {}; }
0034 
0035     std::unique_ptr<AlpakaESTestDataCDevice> produceDevice(device::Record<AlpakaESTestRecordD> const& iRecord) {
0036       return {};
0037     }
0038   };
0039 }  // namespace ALPAKA_ACCELERATOR_NAMESPACE
0040 
0041 DEFINE_FWK_EVENTSETUP_ALPAKA_MODULE(TestAlpakaESProducerNull);