Warning, file /include/ActsPlugins/Json/DetectorVolumeJsonConverter.hpp was not indexed
or was modified since last indexation (in which case cross-reference links may be missing, inaccurate or erroneous).
0001
0002
0003
0004
0005
0006
0007
0008
0009 #pragma once
0010
0011 #include "Acts/Geometry/GeometryContext.hpp"
0012 #include "ActsPlugins/Json/ActsJson.hpp"
0013 #include "ActsPlugins/Json/AlgebraJsonConverter.hpp"
0014 #include "ActsPlugins/Json/PortalJsonConverter.hpp"
0015 #include "ActsPlugins/Json/SurfaceJsonConverter.hpp"
0016
0017 #include <map>
0018 #include <memory>
0019 #include <vector>
0020
0021
0022
0023 namespace Acts {
0024
0025 class Surface;
0026
0027 namespace Experimental {
0028 class DetectorVolume;
0029 class Portal;
0030 }
0031
0032 namespace DetectorVolumeJsonConverter {
0033
0034 struct Options {
0035
0036 SurfaceJsonConverter::Options surfaceOptions;
0037
0038 PortalJsonConverter::Options portalOptions;
0039
0040 Transform3JsonConverter::Options transformOptions;
0041 };
0042
0043
0044
0045
0046
0047
0048
0049
0050
0051
0052 nlohmann::json toJson(
0053 const GeometryContext& gctx, const Experimental::DetectorVolume& volume,
0054 const std::vector<const Experimental::DetectorVolume*>& detectorVolumes,
0055 const std::vector<const Experimental::Portal*>& portals = {},
0056 const Options& options = Options{});
0057
0058
0059
0060
0061
0062
0063
0064
0065
0066 std::shared_ptr<Experimental::DetectorVolume> fromJson(
0067 const GeometryContext& gctx, const nlohmann::json& jVolume);
0068
0069 }
0070 }