File indexing completed on 2025-01-30 10:04:50
0001
0002
0003
0004
0005 #pragma once
0006
0007 #include <algorithms/algorithm.h>
0008 #include <edm4eic/CalorimeterHitCollection.h>
0009 #include <edm4eic/ProtoClusterCollection.h>
0010 #include <edm4hep/SimCalorimeterHitCollection.h>
0011 #include <string>
0012 #include <string_view>
0013
0014 namespace eicrecon {
0015
0016 using CalorimeterTruthClusteringAlgorithm = algorithms::Algorithm<
0017 algorithms::Input<
0018 edm4eic::CalorimeterHitCollection,
0019 edm4hep::SimCalorimeterHitCollection
0020 >,
0021 algorithms::Output<
0022 edm4eic::ProtoClusterCollection
0023 >
0024 >;
0025
0026 class CalorimeterTruthClustering
0027 : public CalorimeterTruthClusteringAlgorithm {
0028
0029 public:
0030 CalorimeterTruthClustering(std::string_view name)
0031 : CalorimeterTruthClusteringAlgorithm{name,
0032 {"inputHitCollection", "inputSimHitCollection"},
0033 {"outputProtoClusterCollection"},
0034 "Use truth information for clustering."} {}
0035
0036 public:
0037 void init() final;
0038 void process(const Input&, const Output&) const final;
0039
0040 };
0041
0042 }