Back to home page

Project CMSSW displayed by LXR

 
 

    


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

0001 #ifndef HeterogeneousCore_AlpakaTest_plugins_alpaka_TestAlgo_h
0002 #define HeterogeneousCore_AlpakaTest_plugins_alpaka_TestAlgo_h
0003 
0004 #include "DataFormats/PortableTestObjects/interface/alpaka/TestDeviceCollection.h"
0005 #include "DataFormats/PortableTestObjects/interface/alpaka/TestDeviceObject.h"
0006 #include "HeterogeneousCore/AlpakaInterface/interface/config.h"
0007 #include "HeterogeneousCore/AlpakaTest/interface/alpaka/AlpakaESTestData.h"
0008 
0009 namespace ALPAKA_ACCELERATOR_NAMESPACE {
0010 
0011   class TestAlgo {
0012   public:
0013     void fill(Queue& queue, portabletest::TestDeviceCollection& collection, double xvalue = 0.) const;
0014     void fillObject(
0015         Queue& queue, portabletest::TestDeviceObject& object, double x, double y, double z, int32_t id) const;
0016 
0017     portabletest::TestDeviceCollection update(Queue& queue,
0018                                               portabletest::TestDeviceCollection const& input,
0019                                               AlpakaESTestDataEDevice const& esData) const;
0020     portabletest::TestDeviceMultiCollection2 updateMulti2(Queue& queue,
0021                                                           portabletest::TestDeviceMultiCollection2 const& input,
0022                                                           AlpakaESTestDataEDevice const& esData) const;
0023     portabletest::TestDeviceMultiCollection3 updateMulti3(Queue& queue,
0024                                                           portabletest::TestDeviceMultiCollection3 const& input,
0025                                                           AlpakaESTestDataEDevice const& esData) const;
0026 
0027     void fillMulti2(Queue& queue, portabletest::TestDeviceMultiCollection2& collection, double xvalue = 0.) const;
0028     void fillMulti3(Queue& queue, portabletest::TestDeviceMultiCollection3& collection, double xvalue = 0.) const;
0029   };
0030 
0031 }  // namespace ALPAKA_ACCELERATOR_NAMESPACE
0032 
0033 #endif  // HeterogeneousCore_AlpakaTest_plugins_alpaka_TestAlgo_h