Skip to content

Commit 8d22285

Browse files
authored
chore: Centrally typedef truth info in Examples (#5254)
- centrally typedef `MeasurementParticlesMap = IndexMultimap<SimBarcode>` - centrally typedef `MeasurementSimHitsMap = IndexMultimap<Index>` - centrally typedef `ParticleMeasurementsMap = InverseMultimap<SimBarcode>` - centrally typedef `SimHitMeasurementsMap = InverseMultimap<Index>` - use `SimBarcode` over `ActsFatras::Barcode` in Examples - move `ParticleHitCount` to `TruthMatching.hpp` - add typedefs for `VertexTruthMatching` and `TruthVertexMatching` - include cleanups
1 parent 2c3edbe commit 8d22285

File tree

58 files changed

+185
-193
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

58 files changed

+185
-193
lines changed

Examples/Algorithms/Digitization/include/ActsExamples/Digitization/DigitizationAlgorithm.hpp

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@
1515
#include "ActsExamples/EventData/Cluster.hpp"
1616
#include "ActsExamples/EventData/Measurement.hpp"
1717
#include "ActsExamples/EventData/SimHit.hpp"
18-
#include "ActsExamples/EventData/SimParticle.hpp"
18+
#include "ActsExamples/EventData/TruthMatching.hpp"
1919
#include "ActsExamples/Framework/DataHandle.hpp"
2020
#include "ActsExamples/Framework/IAlgorithm.hpp"
2121
#include "ActsExamples/Framework/ProcessCode.hpp"
@@ -144,14 +144,14 @@ class DigitizationAlgorithm final : public IAlgorithm {
144144
WriteDataHandle<CellsMap> m_outputCells{this, "OutputCells"};
145145
WriteDataHandle<ClusterContainer> m_outputClusters{this, "OutputClusters"};
146146

147-
WriteDataHandle<IndexMultimap<SimBarcode>> m_outputMeasurementParticlesMap{
147+
WriteDataHandle<MeasurementParticlesMap> m_outputMeasurementParticlesMap{
148148
this, "OutputMeasurementParticlesMap"};
149-
WriteDataHandle<IndexMultimap<Index>> m_outputMeasurementSimHitsMap{
149+
WriteDataHandle<MeasurementSimHitsMap> m_outputMeasurementSimHitsMap{
150150
this, "OutputMeasurementSimHitsMap"};
151151

152-
WriteDataHandle<InverseMultimap<SimBarcode>> m_outputParticleMeasurementsMap{
152+
WriteDataHandle<ParticleMeasurementsMap> m_outputParticleMeasurementsMap{
153153
this, "OutputParticleMeasurementsMap"};
154-
WriteDataHandle<InverseMultimap<Index>> m_outputSimHitMeasurementsMap{
154+
WriteDataHandle<SimHitMeasurementsMap> m_outputSimHitMeasurementsMap{
155155
this, "OutputSimHitMeasurementsMap"};
156156

157157
/// Construct a fixed-size smearer from a configuration.

Examples/Algorithms/Digitization/include/ActsExamples/Digitization/ModuleClusters.hpp

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -29,14 +29,12 @@ struct ModuleValue {
2929
std::vector<double> paramValues = {};
3030
std::vector<double> paramVariances = {};
3131
std::variant<Cluster, Cluster::Cell> value;
32-
std::set<SimHitContainer::size_type> sources = {};
32+
std::set<SimHitIndex> sources = {};
3333
Acts::Ccl::Label label = {Acts::Ccl::NO_LABEL};
3434
};
3535

3636
class ModuleClusters {
3737
public:
38-
using simhit_t = SimHitContainer::size_type;
39-
4038
ModuleClusters(Acts::BinUtility segmentation,
4139
std::vector<Acts::BoundIndices> geoIndices, bool merge,
4240
double nsigma, bool commonCorner)
@@ -46,8 +44,8 @@ class ModuleClusters {
4644
m_nsigma(nsigma),
4745
m_commonCorner(commonCorner) {}
4846

49-
void add(DigitizedParameters params, simhit_t simhit);
50-
std::vector<std::pair<DigitizedParameters, std::set<simhit_t>>>
47+
void add(DigitizedParameters params, SimHitIndex simhit);
48+
std::vector<std::pair<DigitizedParameters, std::set<SimHitIndex>>>
5149
digitizedParameters();
5250

5351
private:

Examples/Algorithms/Digitization/include/ActsExamples/Digitization/MuonSpacePointDigitizer.hpp

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -10,12 +10,12 @@
1010

1111
#include "Acts/Geometry/TrackingGeometry.hpp"
1212
#include "Acts/Utilities/Logger.hpp"
13-
#include "Acts/Utilities/RangeXD.hpp"
1413
#include "ActsExamples/EventData/Measurement.hpp"
1514
#include "ActsExamples/EventData/MuonSpacePoint.hpp"
1615
#include "ActsExamples/EventData/MuonSpacePointCalibrator.hpp"
1716
#include "ActsExamples/EventData/SimHit.hpp"
1817
#include "ActsExamples/EventData/SimParticle.hpp"
18+
#include "ActsExamples/EventData/TruthMatching.hpp"
1919
#include "ActsExamples/Framework/DataHandle.hpp"
2020
#include "ActsExamples/Framework/IAlgorithm.hpp"
2121
#include "ActsExamples/Framework/ProcessCode.hpp"
@@ -101,14 +101,14 @@ class MuonSpacePointDigitizer final : public IAlgorithm {
101101
WriteDataHandle<MeasurementContainer> m_outputMeasurements{
102102
this, "OutputMeasurements"};
103103

104-
WriteDataHandle<IndexMultimap<SimBarcode>> m_outputMeasurementParticlesMap{
104+
WriteDataHandle<MeasurementParticlesMap> m_outputMeasurementParticlesMap{
105105
this, "OutputMeasurementParticlesMap"};
106-
WriteDataHandle<IndexMultimap<Index>> m_outputMeasurementSimHitsMap{
106+
WriteDataHandle<MeasurementSimHitsMap> m_outputMeasurementSimHitsMap{
107107
this, "OutputMeasurementSimHitsMap"};
108108

109-
WriteDataHandle<InverseMultimap<SimBarcode>> m_outputParticleMeasurementsMap{
109+
WriteDataHandle<ParticleMeasurementsMap> m_outputParticleMeasurementsMap{
110110
this, "OutputParticleMeasurementsMap"};
111-
WriteDataHandle<InverseMultimap<Index>> m_outputSimHitMeasurementsMap{
111+
WriteDataHandle<SimHitMeasurementsMap> m_outputSimHitMeasurementsMap{
112112
this, "OutputSimHitMeasurementsMap"};
113113
};
114114
} // namespace ActsExamples

Examples/Algorithms/Digitization/src/DigitizationAlgorithm.cpp

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -112,7 +112,7 @@ DigitizationAlgorithm::DigitizationAlgorithm(
112112

113113
auto dup = std::adjacent_find(indices.begin(), indices.end());
114114
if (dup != indices.end()) {
115-
std::invalid_argument(
115+
throw std::invalid_argument(
116116
"Digitization configuration contains duplicate parameter indices");
117117
}
118118

@@ -150,8 +150,8 @@ ProcessCode DigitizationAlgorithm::execute(const AlgorithmContext& ctx) const {
150150
MeasurementContainer measurements;
151151
ClusterContainer clusters;
152152

153-
IndexMultimap<SimBarcode> measurementParticlesMap;
154-
IndexMultimap<Index> measurementSimHitsMap;
153+
MeasurementParticlesMap measurementParticlesMap;
154+
MeasurementSimHitsMap measurementSimHitsMap;
155155
measurements.reserve(simHits.size());
156156
measurementParticlesMap.reserve(simHits.size());
157157
measurementSimHitsMap.reserve(simHits.size());

Examples/Algorithms/Digitization/src/ModuleClusters.cpp

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@
1111
#include "Acts/Clusterization/Clusterization.hpp"
1212
#include "Acts/Utilities/Helpers.hpp"
1313
#include "ActsExamples/Digitization/MeasurementCreation.hpp"
14+
#include "ActsExamples/EventData/SimHit.hpp"
1415

1516
#include <array>
1617
#include <cmath>
@@ -21,7 +22,7 @@
2122

2223
namespace ActsExamples {
2324

24-
void ModuleClusters::add(DigitizedParameters params, simhit_t simhit) {
25+
void ModuleClusters::add(DigitizedParameters params, SimHitIndex simhit) {
2526
ModuleValue mval;
2627
mval.paramIndices = std::move(params.indices);
2728
mval.paramValues = std::move(params.values);
@@ -42,12 +43,12 @@ void ModuleClusters::add(DigitizedParameters params, simhit_t simhit) {
4243
}
4344
}
4445

45-
std::vector<std::pair<DigitizedParameters, std::set<ModuleClusters::simhit_t>>>
46+
std::vector<std::pair<DigitizedParameters, std::set<SimHitIndex>>>
4647
ModuleClusters::digitizedParameters() {
4748
if (m_merge) { // (re-)build the clusters
4849
merge();
4950
}
50-
std::vector<std::pair<DigitizedParameters, std::set<simhit_t>>> retv;
51+
std::vector<std::pair<DigitizedParameters, std::set<SimHitIndex>>> retv;
5152
for (ModuleValue& mval : m_moduleValues) {
5253
if (std::holds_alternative<Cluster::Cell>(mval.value)) {
5354
// Should never happen! Either the cluster should have

Examples/Algorithms/Digitization/src/MuonSpacePointDigitizer.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -160,8 +160,8 @@ ProcessCode MuonSpacePointDigitizer::execute(
160160
// need list here for stable addresses
161161
MeasurementContainer measurements;
162162

163-
IndexMultimap<SimBarcode> measurementParticlesMap;
164-
IndexMultimap<Index> measurementSimHitsMap;
163+
MeasurementParticlesMap measurementParticlesMap;
164+
MeasurementSimHitsMap measurementSimHitsMap;
165165
measurements.reserve(gotSimHits.size());
166166
measurementParticlesMap.reserve(gotSimHits.size());
167167
measurementSimHitsMap.reserve(gotSimHits.size());

Examples/Algorithms/Geant4/src/ParticleKillAction.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,7 @@ void ParticleKillAction::UserSteppingAction(const G4Step* step) {
6060
// check if we have a particle assigned to track
6161
if (trackIt != eventStore().trackIdMapping.end()) {
6262
// set the outcome of the particle
63-
const ActsFatras::Barcode particleId = trackIt->second;
63+
const SimBarcode particleId = trackIt->second;
6464
if (outOfVolume) {
6565
eventStore().particleOutcome[particleId] =
6666
ActsFatras::ParticleOutcome::KilledVolumeExit;

Examples/Algorithms/Geant4/src/SensitiveSteppingAction.cpp

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
#include "Acts/Geometry/GeometryIdentifier.hpp"
1414
#include "Acts/Propagator/detail/SteppingLogger.hpp"
1515
#include "Acts/Surfaces/Surface.hpp"
16-
#include "Acts/Utilities/MultiIndex.hpp"
16+
#include "ActsExamples/EventData/SimParticle.hpp"
1717
#include "ActsExamples/Geant4/AlgebraConverters.hpp"
1818
#include "ActsExamples/Geant4/EventStore.hpp"
1919
#include "ActsExamples/Geant4/SensitiveSurfaceMapper.hpp"
@@ -67,7 +67,8 @@ std::array<Acts::Vector4, 4u> kinematicsOfStep(const G4Step* step) {
6767
return {preStepPosition, preStepMomentum, postStepPosition, postStepMomentum};
6868
}
6969

70-
ActsFatras::Hit hitFromStep(const G4Step* step, ActsFatras::Barcode particleId,
70+
ActsFatras::Hit hitFromStep(const G4Step* step,
71+
ActsExamples::SimBarcode particleId,
7172
Acts::GeometryIdentifier geoId,
7273
std::int32_t index) {
7374
auto [preStepPosition, preStepMomentum, postStepPosition, postStepMomentum] =

Examples/Algorithms/GeneratorsPythia8/ActsExamples/Generators/Pythia8ProcessGenerator.cpp

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -8,17 +8,10 @@
88

99
#include "ActsExamples/Generators/Pythia8ProcessGenerator.hpp"
1010

11-
#include "Acts/Utilities/MathHelpers.hpp"
12-
#include "ActsExamples/EventData/SimVertex.hpp"
13-
#include "ActsFatras/EventData/Barcode.hpp"
14-
#include "ActsFatras/EventData/Particle.hpp"
1511
#include "ActsPlugins/FpeMonitoring/FpeMonitor.hpp"
1612

17-
#include <algorithm>
18-
#include <iterator>
1913
#include <ostream>
2014
#include <random>
21-
#include <utility>
2215

2316
#include <HepMC3/WriterAscii.h>
2417
#include <Pythia8/Pythia.h>

Examples/Algorithms/TrackFindingGnn/include/ActsExamples/TrackFindingGnn/TruthGraphBuilder.hpp

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -9,10 +9,10 @@
99
#pragma once
1010

1111
#include "ActsExamples/EventData/Graph.hpp"
12-
#include "ActsExamples/EventData/Index.hpp"
1312
#include "ActsExamples/EventData/SimHit.hpp"
1413
#include "ActsExamples/EventData/SimParticle.hpp"
1514
#include "ActsExamples/EventData/SpacePoint.hpp"
15+
#include "ActsExamples/EventData/TruthMatching.hpp"
1616
#include "ActsExamples/Framework/DataHandle.hpp"
1717
#include "ActsExamples/Framework/IAlgorithm.hpp"
1818

@@ -60,20 +60,20 @@ class TruthGraphBuilder final : public IAlgorithm {
6060
std::vector<std::int64_t> buildFromMeasurements(
6161
const SpacePointContainer& spacePoints,
6262
const SimParticleContainer& particles,
63-
const IndexMultimap<ActsFatras::Barcode>& measPartMap) const;
63+
const MeasurementParticlesMap& measPartMap) const;
6464

6565
std::vector<std::int64_t> buildFromSimhits(
6666
const SpacePointContainer& spacePoints,
67-
const IndexMultimap<Index>& measHitMap, const SimHitContainer& simhits,
67+
const MeasurementSimHitsMap& measHitMap, const SimHitContainer& simhits,
6868
const SimParticleContainer& particles) const;
6969

7070
ReadDataHandle<SpacePointContainer> m_inputSpacePoints{this,
7171
"InputSpacePoints"};
7272
ReadDataHandle<SimParticleContainer> m_inputParticles{this, "InputParticles"};
73-
ReadDataHandle<IndexMultimap<ActsFatras::Barcode>> m_inputMeasParticlesMap{
73+
ReadDataHandle<MeasurementParticlesMap> m_inputMeasParticlesMap{
7474
this, "InputMeasParticlesMap"};
7575
ReadDataHandle<SimHitContainer> m_inputSimhits{this, "InputSimhits"};
76-
ReadDataHandle<IndexMultimap<Index>> m_inputMeasSimhitMap{
76+
ReadDataHandle<MeasurementSimHitsMap> m_inputMeasSimhitMap{
7777
this, "InputMeasSimhitMap"};
7878

7979
WriteDataHandle<Graph> m_outputGraph{this, "OutputGraph"};

0 commit comments

Comments
 (0)