39 class TGeoDetectorElement;
40 class ITGeoDetectorElementSplitter;
42 class ISurfaceMaterial;
43 class ITGeoIdentifierProvider;
45 class ProtoLayerHelper;
62 using RangeConfig = std::pair<BinningValue, std::pair<double, double>>;
93 using ElementFactory = std::function<std::shared_ptr<TGeoDetectorElement>(
94 const Identifier&,
const TGeoNode&,
const TGeoMatrix& tGeoMatrix,
96 std::shared_ptr<const Acts::ISurfaceMaterial>
material)>;
100 const TGeoMatrix& tGeoMatrix,
const std::string& axes,
double scalor,
101 std::shared_ptr<const Acts::ISurfaceMaterial>
material);
113 std::shared_ptr<const ITGeoDetectorElementSplitter>
137 std::unique_ptr<const Logger>
logger =
204 double tolerance, std::pair<double, double>& range)
const;
209 std::pair<double, double>& range)
const {
212 range.first =
std::min(range.first, test);
213 range.second = std::max(range.second, test);
215 for (
auto& splitPar : parameters) {
216 if (std::abs(test - splitPar) < tolerance) {
221 parameters.push_back(test);
229 inline const std::vector<std::shared_ptr<const TGeoDetectorElement>>&