FOUND
Loading...
Searching...
No Matches
found::DistancePipelineExecutor Class Reference

DistancePipelineExecutor is the pipeline executor for the distance determination pipeline. More...

#include <executors.hpp>

Inheritance diagram for found::DistancePipelineExecutor:
Collaboration diagram for found::DistancePipelineExecutor:

Public Member Functions

 ~DistancePipelineExecutor ()
 Destroys this and all distance determination pipeline resources.
 
 DistancePipelineExecutor (DistanceOptions &&options, std::unique_ptr< EdgeDetectionAlgorithm > edgeDetectionAlgorithm, std::unique_ptr< DistanceDeterminationAlgorithm > distanceAlgorithm, std::unique_ptr< VectorGenerationAlgorithm > vectorizationAlgorithm)
 Constructs a DistancePipelineExecutor.
 
void ExecutePipeline () override
 Executes the relavent Pipeline.
 
void OutputResults () override
 Outputs the results of the Pipeline in some format.
 
- Public Member Functions inherited from found::PipelineExecutor
virtual ~PipelineExecutor ()=default
 Destroys this.
 

Private Attributes

const DistanceOptions options_
 The DistanceOptions being used.
 
DistancePipeline pipeline_
 The Distance pipeline being used.
 
std::unique_ptr< EdgeDetectionAlgorithmedgeDetectionAlgorithm
 The Edge Detection Algorithm used.
 
std::unique_ptr< DistanceDeterminationAlgorithmdistanceAlgorithm
 The Distance Determination Algorithm being used.
 
std::unique_ptr< VectorGenerationAlgorithmvectorizationAlgorithm
 The Vectorization/Rotation Algorithm being used.
 

Detailed Description

DistancePipelineExecutor is the pipeline executor for the distance determination pipeline.

Constructor & Destructor Documentation

◆ ~DistancePipelineExecutor()

found::DistancePipelineExecutor::~DistancePipelineExecutor ( )

Destroys this and all distance determination pipeline resources.

◆ DistancePipelineExecutor()

found::DistancePipelineExecutor::DistancePipelineExecutor ( DistanceOptions &&  options,
std::unique_ptr< EdgeDetectionAlgorithm edgeDetectionAlgorithm,
std::unique_ptr< DistanceDeterminationAlgorithm distanceAlgorithm,
std::unique_ptr< VectorGenerationAlgorithm vectorizationAlgorithm 
)
explicit

Constructs a DistancePipelineExecutor.

Parameters
optionsThe options to create the pipeline
edgeDetectionAlgorithmThe edge detection algorithm to use
distanceAlgorithmThe distance determination algorithm to use
vectorizationAlgorithmThe vectorization algorithm to use
Precondition
options.image.image must be point to heap allocated memory. This is guarenteed as long as strtoimage is used to create the image, and it throws an error if the image is not valid.

Member Function Documentation

◆ ExecutePipeline()

void found::DistancePipelineExecutor::ExecutePipeline ( )
overridevirtual

Executes the relavent Pipeline.

Implements found::PipelineExecutor.

◆ OutputResults()

void found::DistancePipelineExecutor::OutputResults ( )
overridevirtual

Outputs the results of the Pipeline in some format.

Implements found::PipelineExecutor.

Member Data Documentation

◆ distanceAlgorithm

std::unique_ptr<DistanceDeterminationAlgorithm> found::DistancePipelineExecutor::distanceAlgorithm
private

The Distance Determination Algorithm being used.

◆ edgeDetectionAlgorithm

std::unique_ptr<EdgeDetectionAlgorithm> found::DistancePipelineExecutor::edgeDetectionAlgorithm
private

The Edge Detection Algorithm used.

◆ options_

const DistanceOptions found::DistancePipelineExecutor::options_
private

The DistanceOptions being used.

◆ pipeline_

DistancePipeline found::DistancePipelineExecutor::pipeline_
private

The Distance pipeline being used.

◆ vectorizationAlgorithm

std::unique_ptr<VectorGenerationAlgorithm> found::DistancePipelineExecutor::vectorizationAlgorithm
private

The Vectorization/Rotation Algorithm being used.


The documentation for this class was generated from the following files: