File VolumeBoundsJsonConverter.hpp

namespace Acts

Note

This file is foreseen for the Geometry module to replace Extent

Functions

inline std::unique_ptr<GenericCuboidVolumeBounds> genericVolumeBoundsFromJson(const nlohmann::json &j)
void to_json(nlohmann::json &j, const VolumeBounds &bounds)
void to_json(nlohmann::json &j, const GenericCuboidVolumeBounds &bounds)
std::unique_ptr<VolumeBounds> unqiueVolumeBoundsFromJson(const nlohmann::json &j)

Conversion to surfaceBounds from json.

Parameters

j – the read-in json object

Returns

a shared_ptr to a surface object for type polymorphism

template<typename bounds_t>
std::unique_ptr<bounds_t> volumeBoundsFromJson(const nlohmann::json &j)

Conversion to surfaceBounds from json.

The type is given as a template argument in order to be able to construct the correct fitting types for surfaces.

Parameters

j – the read-in json object

Returns

a shared_ptr to a surface object for type polymorphism

Variables

static const std::vector<std::string> volumeBoundTypes = {"Cone", "Cuboid", "CutoutCylinder", "Cylinder", "GenericCuboid", "Trapezoid"}