EICrecon
JANA based reconstruction for the EPIC detector
Loading...
Searching...
No Matches
CalorimeterParticleIDPreML_factory.h
Go to the documentation of this file.
1// SPDX-License-Identifier: LGPL-3.0-or-later
2// Copyright (C) 2024, Dmitry Kalinkin
3
4#pragma once
5
9
10namespace eicrecon {
11
13 : public JOmniFactory<CalorimeterParticleIDPreML_factory, NoConfig> {
14
15public:
17
18private:
19 std::unique_ptr<AlgoT> m_algo;
20
21 PodioInput<edm4eic::Cluster> m_cluster_input{this};
22 PodioInput<edm4eic::MCRecoClusterParticleAssociation> m_cluster_assoc_input{this};
23
24 PodioOutput<edm4eic::Tensor> m_feature_tensor_output{this};
25 PodioOutput<edm4eic::Tensor> m_target_tensor_output{this};
26
27public:
28 void Configure() {
29 m_algo = std::make_unique<AlgoT>(GetPrefix());
30 m_algo->level(static_cast<algorithms::LogLevel>(logger()->level()));
31 m_algo->applyConfig(config());
32 m_algo->init();
33 }
34
35 void Process(int32_t /* run_number */, uint64_t /* event_number */) {
36 m_algo->process({m_cluster_input(), m_cluster_assoc_input()},
37 {m_feature_tensor_output().get(), m_target_tensor_output().get()});
38 }
39};
40
41} // namespace eicrecon
Definition JOmniFactory.h:30
NoConfig & config()
Retrieve reference to embedded config object.
Definition JOmniFactory.h:576
std::shared_ptr< spdlog::logger > & logger()
Retrieve reference to already-configured logger.
Definition JOmniFactory.h:573
std::string GetPrefix()
Definition JOmniFactory.h:570
Definition CalorimeterParticleIDPreML_factory.h:13
void Process(int32_t, uint64_t)
Definition CalorimeterParticleIDPreML_factory.h:35
void Configure()
Definition CalorimeterParticleIDPreML_factory.h:28
Definition CalorimeterParticleIDPreML.h:24
-client
Definition CalorimeterClusterRecoCoG.cc:37