Juggler
Juggling algorithms and event processing using gaudi framework
SimIdentifier.hpp
Go to the documentation of this file.
1
// This file is part of the Acts project.
2
//
3
// Copyright (C) 2016-2018 CERN for the benefit of the Acts project
4
//
5
// This Source Code Form is subject to the terms of the Mozilla Public
6
// License, v. 2.0. If a copy of the MPL was not distributed with this
7
// file, You can obtain one at http://mozilla.org/MPL/2.0/.
8
9
#pragma once
10
11
//#include "Acts/EventData/MeasurementHelpers.hpp"
12
//
13
//#include <cstddef>
14
//#include <vector>
15
//
16
//namespace FW {
17
//
18
///// A hit identifier with additional truth information.
19
/////
20
///// In an addition to a unique identifier, an list of additional indices is
21
///// stored. These can refer e.g. to particle indices or truth hit indices.
22
///// Using indices instead of pointers allows more flexibility, i.e. we are not
23
///// fixed to a specific object type when using e.g. pointers, and is more
24
///// robust since no requirements on stable memory locations of the pointed-to
25
///// objects are necessary (as would be the case for pointers).
26
//class SimIdentifier : public Acts::MinimalSourceLink {
27
// public:
28
// using Value = uint64_t;
29
// using Difference = int64_t;
30
//
31
// /// Constructor from encoded identifier value.
32
// ///
33
// /// @param value is the identifier value
34
// explicit SimIdentifier(Value value) : m_value(value) {}
35
// /// Constructor from encoded identifier value and truth information.
36
// ///
37
// /// @param value is the identifier value
38
// /// @param indices
39
// SimIdentifier(Value value, std::vector<std::size_t> indices)
40
// : m_value(value), m_indices(std::move(indices)) {}
41
//
42
// // Explicitely defaulted constructors and assignment operators
43
// SimIdentifier() = default;
44
// SimIdentifier(const SimIdentifier&) = default;
45
// SimIdentifier(SimIdentifier&&) = default;
46
// SimIdentifier& operator=(const SimIdentifier&) = default;
47
// SimIdentifier& operator=(SimIdentifier&&) = default;
48
//
49
// /// Assign from an identifier value.
50
// SimIdentifier& operator=(Value value);
51
// /// Cast to an identifier value.
52
// operator Value() const { return m_value; }
53
//
54
// /// Explicit access the underlying identifier value.
55
// Value value() const { return m_value; }
56
// /// Access all associated truth indices.
57
// const std::vector<std::size_t>& indices() const { return m_indices; }
58
//
59
// /// Attach a truth index to the identifier.
60
// void addIndex(std::size_t index) { m_indices.push_back(index); }
61
//
62
// private:
63
// /// The stored identifier value.
64
// Value m_value = 0u;
65
// /// Associated truth indices.
66
// std::vector<std::size_t> m_indices;
67
//
68
// friend constexpr bool operator<(const SimIdentifier& lhs,
69
// const SimIdentifier& rhs) {
70
// return lhs.m_value < rhs.m_value;
71
// }
72
// friend bool operator==(const SimIdentifier& lhs, const SimIdentifier& rhs) {
73
// return lhs.m_value == rhs.m_value;
74
// }
75
//};
76
//
77
//} // end of namespace FW
78
//
79
//using identifier_type = ::FW::SimIdentifier::Value;
80
//using identifier_diff = ::FW::SimIdentifier::Difference;
81
//using Identifier = ::FW::SimIdentifier;
JugReco
JugReco
SimIdentifier.hpp
Generated by
1.8.18