Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2025-07-03 00:42:11

0001 #ifndef DataFormats_TrackSoA_interface_alpaka_TracksSoACollection_h
0002 #define DataFormats_TrackSoA_interface_alpaka_TracksSoACollection_h
0003 
0004 #include <type_traits>
0005 
0006 #include <alpaka/alpaka.hpp>
0007 
0008 #include "DataFormats/Portable/interface/alpaka/PortableCollection.h"
0009 #include "DataFormats/TrackSoA/interface/TracksDevice.h"
0010 #include "DataFormats/TrackSoA/interface/TracksHost.h"
0011 #include "Geometry/CommonTopologies/interface/SimplePixelTopology.h"
0012 #include "HeterogeneousCore/AlpakaInterface/interface/AssertDeviceMatchesHostCollection.h"
0013 #include "HeterogeneousCore/AlpakaInterface/interface/CopyToHost.h"
0014 #include "HeterogeneousCore/AlpakaInterface/interface/config.h"
0015 
0016 namespace ALPAKA_ACCELERATOR_NAMESPACE::reco {
0017 
0018   using ::reco::TracksDevice;
0019   using ::reco::TracksHost;
0020   using TracksSoACollection =
0021       std::conditional_t<std::is_same_v<Device, alpaka::DevCpu>, TracksHost, TracksDevice<Device>>;
0022 
0023 }  // namespace ALPAKA_ACCELERATOR_NAMESPACE::reco
0024 
0025 ASSERT_DEVICE_MATCHES_HOST_COLLECTION(reco::TracksSoACollection, reco::TracksHost);
0026 
0027 #endif  // DataFormats_TrackSoA_interface_alpaka_TracksSoACollection_h