File indexing completed on 2025-01-18 09:10:45
0001
0002
0003
0004
0005
0006
0007
0008
0009 #pragma once
0010
0011 #include "Acts/Clusterization/Clusterization.hpp"
0012 #include "Acts/Definitions/Algebra.hpp"
0013
0014 #include <limits>
0015
0016 namespace Acts::Ccl {
0017
0018 template <typename Cell>
0019 concept HasRetrievableTimeInfo = requires(Cell cell) {
0020 { getCellTime(cell) } -> std::same_as<double>;
0021 };
0022
0023 template <Acts::Ccl::HasRetrievableTimeInfo Cell, std::size_t N>
0024 struct TimedConnect : public Acts::Ccl::DefaultConnect<Cell, N> {
0025 double timeTolerance{std::numeric_limits<double>::max()};
0026
0027 TimedConnect() = default;
0028 TimedConnect(double time);
0029 TimedConnect(double time, bool commonCorner)
0030 requires(N == 2);
0031 ~TimedConnect() override = default;
0032
0033 ConnectResult operator()(const Cell& ref, const Cell& iter) const override;
0034 };
0035
0036 }
0037
0038 #include "Acts/Clusterization/TimedClusterization.ipp"