ReUseX  0.0.5
3D Point Cloud Processing for Building Reuse
Loading...
Searching...
No Matches
stages.hpp File Reference
#include <atomic>
#include <cstdint>
#include <filesystem>
#include <functional>
#include <optional>
#include <string>
#include <string_view>
#include <vector>
Include dependency graph for stages.hpp:

Go to the source code of this file.

Classes

struct  reusex::pipeline::StageArtifact
 One artifact a stage wrote, so a client can refresh exactly what changed instead of re-fetching everything. More...
struct  reusex::pipeline::StageResult
 Outcome of one stage execution. More...
struct  reusex::pipeline::StageContext
 Everything a stage execution needs, independent of any HTTP/CLI front end. More...

Namespaces

namespace  reusex
namespace  reusex::pipeline

Typedefs

using reusex::pipeline::StageExecutor = std::function<StageResult(const StageContext &)>
 Stage execution strategy.

Enumerations

enum class  reusex::pipeline::JobStage { reusex::pipeline::clouds , reusex::pipeline::planes , reusex::pipeline::rooms , reusex::pipeline::instances }
 A pipeline stage that can be executed as a job. More...

Functions

std::string_view reusex::pipeline::to_string (JobStage stage)
 Canonical lower-case stage name (the token used on the wire and the CLI).
std::string_view reusex::pipeline::pipeline_log_name (JobStage stage)
 The name this stage writes into pipeline_log.stage.
std::optional< JobStagereusex::pipeline::parse_job_stage (std::string_view name)
 Parse a canonical stage name. Returns nullopt for an unknown name.
std::vector< std::string > reusex::pipeline::job_stage_names ()
 Every name accepted by parse_job_stage(), in pipeline order.
bool reusex::pipeline::stage_supports_cancellation (JobStage stage)
 True when the stage threads the cancel token into its inner loop, i.e.
StageResult reusex::pipeline::run_stage (ProjectDB &db, const StageContext &ctx)
 Run a stage against an already-open, writable ProjectDB.
StageResult reusex::pipeline::run_stage (const StageContext &ctx)
 Open ctx.project read-write and run the stage against it.
StageExecutor reusex::pipeline::default_stage_executor ()
 The executor that actually runs the pipeline (a thin wrap of run_stage).