|
|
|||
File indexing completed on 2025-12-26 11:18:42
0001 //------------------------------- -*- C++ -*- -------------------------------// 0002 // Copyright Celeritas contributors: see top-level COPYRIGHT file for details 0003 // SPDX-License-Identifier: (Apache-2.0 OR MIT) 0004 //---------------------------------------------------------------------------// 0005 //! \file geocel/g4/GeantGeoTraits.hh 0006 //---------------------------------------------------------------------------// 0007 #pragma once 0008 0009 #include "corecel/Config.hh" 0010 0011 #include "geocel/GeoTraits.hh" 0012 0013 namespace celeritas 0014 { 0015 //---------------------------------------------------------------------------// 0016 class GeantGeoParams; 0017 class GeantGeoTrackView; 0018 template<Ownership W, MemSpace M> 0019 struct GeantGeoParamsData; 0020 template<Ownership W, MemSpace M> 0021 struct GeantGeoStateData; 0022 0023 #if CELERITAS_USE_GEANT4 0024 //---------------------------------------------------------------------------// 0025 /*! 0026 * Traits specialization for Geant4 geometry. 0027 */ 0028 template<> 0029 struct GeoTraits<GeantGeoParams> 0030 { 0031 //! Params data used during runtime 0032 template<Ownership W, MemSpace M> 0033 using ParamsData = GeantGeoParamsData<W, M>; 0034 0035 //! State data used during runtime 0036 template<Ownership W, MemSpace M> 0037 using StateData = GeantGeoStateData<W, M>; 0038 0039 //! Geometry track view 0040 using TrackView = GeantGeoTrackView; 0041 0042 //! Geant4 does not have 'surfaces' 0043 static constexpr bool has_impl_surface = false; 0044 0045 //! Descriptive name for the geometry 0046 static constexpr char const name[] = "Geant4"; 0047 0048 //! TO BE REMOVED: "native" file extension for this geometry 0049 static constexpr char const ext[] = ".gdml"; 0050 }; 0051 #else 0052 //! Geant4 is unavailable 0053 template<> 0054 struct GeoTraits<GeantGeoParams> : NotConfiguredGeoTraits 0055 { 0056 }; 0057 #endif 0058 0059 //---------------------------------------------------------------------------// 0060 } // 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 |
|