Skip to content
Snippets Groups Projects

Switch to updated Fatras from Core

Merged Moritz Kiehn requested to merge fatras_from_core into master
Files
126
@@ -10,19 +10,24 @@
#include <memory>
#include <string>
#include <unordered_map>
#include "ACTFW/Framework/BareAlgorithm.hpp"
#include "ACTFW/Framework/RandomNumbers.hpp"
#include "Acts/Geometry/GeometryID.hpp"
namespace Acts {
class DigitizationModule;
class IdentifiedDetectorElement;
class PlanarModuleStepper;
class TrackingGeomtetyr;
class Surface;
class TrackingGeometry;
} // namespace Acts
namespace FW {
/// Create planar clusters from simulation hits.
class DigitizationAlgorithm : public BareAlgorithm
class DigitizationAlgorithm final : public BareAlgorithm
{
public:
struct Config
@@ -31,10 +36,12 @@ public:
std::string inputSimulatedHits;
/// Output collection of clusters.
std::string outputClusters;
/// Tracking geometry required to access global-to-local transforms.
std::shared_ptr<const Acts::TrackingGeometry> trackingGeometry;
/// Module stepper for geometric clustering.
std::shared_ptr<Acts::PlanarModuleStepper> planarModuleStepper = nullptr;
std::shared_ptr<const Acts::PlanarModuleStepper> planarModuleStepper;
/// Random numbers tool.
std::shared_ptr<RandomNumbers> randomNumbers = nullptr;
std::shared_ptr<const RandomNumbers> randomNumbers;
};
/// Construct the digitization algorithm.
@@ -51,7 +58,16 @@ public:
execute(const AlgorithmContext& ctx) const final override;
private:
struct Digitizable
{
const Acts::Surface* surface = nullptr;
const Acts::IdentifiedDetectorElement* detectorElement = nullptr;
const Acts::DigitizationModule* digitizer = nullptr;
};
Config m_cfg;
/// Lookup container for all digitizable surfaces
std::unordered_map<Acts::GeometryID, Digitizable> m_digitizables;
};
} // namespace FW
Loading