FOUND
Loading...
Searching...
No Matches
factory.hpp
Go to the documentation of this file.
1#ifndef EXECUTOR_PROVIDERS_H
2#define EXECUTOR_PROVIDERS_H
3
4#include <memory>
5#include <utility>
6
9
10namespace found {
11
19inline std::unique_ptr<CalibrationPipelineExecutor> CreateCalibrationPipelineExecutor(CalibrationOptions &&options) {
20 return std::make_unique<CalibrationPipelineExecutor>(std::forward<CalibrationOptions>(options),
21 ProvideCalibrationAlgorithm(std::forward<CalibrationOptions>(options)));
22}
23
31inline std::unique_ptr<DistancePipelineExecutor> CreateDistancePipelineExecutor(DistanceOptions &&options) {
32 return std::make_unique<DistancePipelineExecutor>(std::forward<DistanceOptions>(options),
33 ProvideEdgeDetectionAlgorithm(std::forward<DistanceOptions>(options)),
34 ProvideDistanceDeterminationAlgorithm(std::forward<DistanceOptions>(options)),
35 ProvideVectorGenerationAlgorithm(std::forward<DistanceOptions>(options)));
36}
37
38// TODO: Uncomment when orbit stage is implemented
46// inline std::unique_ptr<OrbitPipelineExecutor> CreateOrbitPipelineExecutor(OrbitOptions &&options) {
47// return std::make_unique<OrbitPipelineExecutor>(std::forward<OrbitOptions>(options),
48// ProvideOrbitPropagationAlgorithm(std::forward<OrbitOptions>(options)));
49// }
50
51} // namespace found
52
53#endif // EXECUTOR_PROVIDERS_H
Definition options.hpp:81
Definition options.hpp:89
Definition calibrate.cpp:7
std::unique_ptr< DistancePipelineExecutor > CreateDistancePipelineExecutor(DistanceOptions &&options)
Creates a DistancePipelineExecutor.
Definition factory.hpp:31
std::unique_ptr< CalibrationPipelineExecutor > CreateCalibrationPipelineExecutor(CalibrationOptions &&options)
Creates a CalibrationPipelineExecutor.
Definition factory.hpp:19
std::unique_ptr< EdgeDetectionAlgorithm > ProvideEdgeDetectionAlgorithm(DistanceOptions &&options)
Provides an EdgeDetectionAlgorithm.
Definition stage-providers.hpp:43
std::unique_ptr< CalibrationAlgorithm > ProvideCalibrationAlgorithm(CalibrationOptions &&options)
Provides a CalibrationAlgorithm.
Definition stage-providers.hpp:32
std::unique_ptr< DistanceDeterminationAlgorithm > ProvideDistanceDeterminationAlgorithm(DistanceOptions &&options)
Provides a DistanceDeterminationAlgorithm.
Definition stage-providers.hpp:56
std::unique_ptr< VectorGenerationAlgorithm > ProvideVectorGenerationAlgorithm(DistanceOptions &&options)
Provides a VectorGenerationAlgorithm.
Definition stage-providers.hpp:87