|
||||
File indexing completed on 2025-01-18 09:59:33
0001 //----------------------------------*-C++-*----------------------------------// 0002 // Copyright 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/g4/GeantGeoTraits.hh 0007 //---------------------------------------------------------------------------// 0008 #pragma once 0009 0010 #include "corecel/Config.hh" 0011 0012 #include "geocel/GeoTraits.hh" 0013 0014 namespace celeritas 0015 { 0016 //---------------------------------------------------------------------------// 0017 class GeantGeoParams; 0018 class GeantGeoTrackView; 0019 template<Ownership W, MemSpace M> 0020 struct GeantGeoParamsData; 0021 template<Ownership W, MemSpace M> 0022 struct GeantGeoStateData; 0023 0024 #if CELERITAS_USE_GEANT4 0025 //---------------------------------------------------------------------------// 0026 /*! 0027 * Traits specialization for Geant4 geometry. 0028 */ 0029 template<> 0030 struct GeoTraits<GeantGeoParams> 0031 { 0032 //! Params data used during runtime 0033 template<Ownership W, MemSpace M> 0034 using ParamsData = GeantGeoParamsData<W, M>; 0035 0036 //! State data used during runtime 0037 template<Ownership W, MemSpace M> 0038 using StateData = GeantGeoStateData<W, M>; 0039 0040 //! Geometry track view 0041 using TrackView = GeantGeoTrackView; 0042 0043 //! Descriptive name for the geometry 0044 static constexpr inline char const* name = "Geant4"; 0045 0046 //! TO BE REMOVED: "native" file extension for this geometry 0047 static constexpr inline char const* ext = ".gdml"; 0048 }; 0049 #else 0050 //! Geant4 is unavailable 0051 template<> 0052 struct GeoTraits<GeantGeoParams> : NotConfiguredGeoTraits 0053 { 0054 }; 0055 #endif 0056 0057 //---------------------------------------------------------------------------// 0058 } // namespace celeritas
[ Source navigation ] | [ Diff markup ] | [ Identifier search ] | [ general search ] |
This page was automatically generated by the 2.3.7 LXR engine. The LXR team |