ark::pipeline::Pipeline
Defined in header “ark/pipeline/pipeline.hh”.
Defines a ‘pipeline’ to run. A pipeline consists of multiple stages that communicate through well-defined interfaces.
Methods
-
Pipeline()
Constructor, for initializing state. -
~Pipeline()
Destructor, for cleaning up members privately. -
Pipeline(const Pipeline & other)
Delete any of the copy constructors. -
Pipeline(Pipeline && other)
Maintain the move constructors. -
void add_stage(const StagePtr & stage)
Adds a new stage to be managed by the pipeline. -
std::shared_ptr< Type > add_stage(auto &&… args)
Adds a stage of the specified type to the pipeline. -
std::vector< StagePtr > stages()
Returns all of the stages that this pipeline manages. -
config::ConfigPackagePtr config_package()
Returns the currently assigned configuration package for this pipeline. -
void register_arguments(core::ArgumentParser & parser)
Register all of the command line arguments that are populated from stages into the given argument parser. -
void set_config_package(config::ConfigPackage package)
Sets the configuration of this pipeline to the given configuration package. -
core::ArgumentParseResultCPtr parsed_arguments()
Returns the currently assigned parsed arguments for this pipeline. -
core::ArgumentParseResultCPtr parse_arguments(const core::ArgumentParser & parser, int argc, const char ** argv)
Parses command line arguments with the given parser, storing the result in this pipeline. The result will be sent to each stage’s interface during initialize(). -
core::ArgumentParseResultCPtr parse_arguments(int argc, const char ** argv)
Parses command line arguments with the given parser, storing the result in this pipeline. The result will be sent to each stage’s interface during initialize().This will automatically create a parser from the stage’s reported command line arguments.
-
core::Guid pipeline_identifier()
Returns the pipeline identifier. -
void clear()
Clears this pipeline, removing all internal state.