Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-01-19 09:23:17

0001 // This file is part of the Acts project.
0002 //
0003 // Copyright (C) 2023 CERN for the benefit of the Acts project
0004 //
0005 // This Source Code Form is subject to the terms of the Mozilla Public
0006 // License, v. 2.0. If a copy of the MPL was not distributed with this
0007 // file, You can obtain one at http://mozilla.org/MPL/2.0/.
0008 
0009 #pragma once
0010 
0011 #include "Acts/Detector/Blueprint.hpp"
0012 #include "Acts/Utilities/BinningData.hpp"
0013 
0014 namespace Acts::Experimental::detail::BlueprintHelper {
0015 
0016 /// @brief Sort the nodes in the blueprint container node
0017 ///
0018 /// @param node the node for which the children should be sorted
0019 /// @param recursive if the sorting should be done recursively to children
0020 void sort(Blueprint::Node& node, bool recursive = true);
0021 
0022 /// @brief Fill the gaps in the blueprint container node
0023 ///
0024 /// @param node the node for with the gaps should be filled
0025 /// @param adjustToParent nodes, if nodes should be adjusted to parent
0026 void fillGaps(Blueprint::Node& node, bool adjustToParent = true);
0027 
0028 /// @brief Fill the gaps in the Cylindrical container node
0029 ///
0030 /// @param node the node for with the gaps should be filled
0031 /// @param adjustToParent nodes, if nodes should be adjusted to parent
0032 void fillGapsCylindrical(Blueprint::Node& node, bool adjustToParent = true);
0033 
0034 /// @brief Fill the gaps in the Cuboidal container node
0035 ///
0036 /// @param node the node for with the gaps should be filled
0037 /// @param adjustToParent nodes, if nodes should be adjusted to parent
0038 void fillGapsCuboidal(Blueprint::Node& node, bool adjustToParent = true);
0039 
0040 }  // namespace Acts::Experimental::detail::BlueprintHelper