FOUND Coverage Report


src/
File: providers/factory.hpp
Date: 2026-03-24 21:41:51
Lines:
6/6
100.0%
Functions:
2/2
100.0%
Branches:
6/6
100.0%

Line Branch Exec Source
1 #ifndef SRC_PROVIDERS_FACTORY_HPP_
2 #define SRC_PROVIDERS_FACTORY_HPP_
3
4 #include <memory>
5 #include <utility>
6
7 #include "command-line/execution/executors.hpp"
8 #include "providers/stage-providers.hpp"
9
10 namespace found {
11
12 /**
13 * Creates a CalibrationPipelineExecutor
14 *
15 * @param options The options to create the pipeline executor from
16 *
17 * @return A pointer to a CalibrationPipelineExecutor
18 */
19 4 inline std::unique_ptr<CalibrationPipelineExecutor> CreateCalibrationPipelineExecutor(CalibrationOptions &&options) {
20 return std::make_unique<CalibrationPipelineExecutor>(std::forward<CalibrationOptions>(options),
21
2/2
✓ Branch 3 taken 4 times.
✓ Branch 7 taken 4 times.
8 ProvideCalibrationAlgorithm(std::forward<CalibrationOptions>(options)));
22 }
23
24 /**
25 * Creates a DistancePipelineExecutor
26 *
27 * @param options The options to create the pipeline executor from
28 *
29 * @return A pointer to a DistancePipelineExecutor
30 */
31 7 inline std::unique_ptr<DistancePipelineExecutor> CreateDistancePipelineExecutor(DistanceOptions &&options) {
32 return std::make_unique<DistancePipelineExecutor>(std::forward<DistanceOptions>(options),
33
1/1
✓ Branch 2 taken 6 times.
12 ProvideEdgeDetectionAlgorithm(std::forward<DistanceOptions>(options)),
34
1/1
✓ Branch 2 taken 6 times.
13 ProvideDistanceDeterminationAlgorithm(std::forward<DistanceOptions>(options)),
35
2/2
✓ Branch 3 taken 7 times.
✓ Branch 9 taken 6 times.
27 ProvideVectorGenerationAlgorithm(std::forward<DistanceOptions>(options)));
36 }
37
38 // TODO: Uncomment when orbit stage is implemented
39 /**
40 * Creates an OrbitPipelineExecutor
41 *
42 * @param options The options to create the pipeline executor from
43 *
44 * @return A OrbitPipelineExecutor
45 */
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 // SRC_PROVIDERS_FACTORY_HPP_
54