Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-01-18 09:59:34

0001 //----------------------------------*-C++-*----------------------------------//
0002 // Copyright 2021-2024 UT-Battelle, LLC, and other Celeritas developers.
0003 // See the top-level COPYRIGHT file for details.
0004 // SPDX-License-Identifier: (Apache-2.0 OR MIT)
0005 //---------------------------------------------------------------------------//
0006 //! \file geocel/vg/detail/VecgeomTraits.hh
0007 //---------------------------------------------------------------------------//
0008 #pragma once
0009 
0010 #include <VecGeom/volumes/PlacedVolume.h>
0011 
0012 #include "corecel/Types.hh"
0013 
0014 namespace celeritas
0015 {
0016 namespace detail
0017 {
0018 //---------------------------------------------------------------------------//
0019 template<MemSpace M>
0020 struct VecgeomTraits;
0021 
0022 template<>
0023 struct VecgeomTraits<MemSpace::host>
0024 {
0025     using PlacedVolume = vecgeom::cxx::VPlacedVolume;
0026 };
0027 
0028 template<>
0029 struct VecgeomTraits<MemSpace::device>
0030 {
0031     using PlacedVolume = vecgeom::cuda::VPlacedVolume;
0032 };
0033 
0034 //---------------------------------------------------------------------------//
0035 }  // namespace detail
0036 }  // namespace celeritas