|
PACS System 0.1.0
PACS DICOM system library
|
Base class for all pipeline jobs. More...
#include <pipeline_coordinator.h>


Public Member Functions | |
| virtual | ~pipeline_job_base ()=default |
| Virtual destructor. | |
| virtual auto | execute (pipeline_coordinator &coordinator) -> VoidResult=0 |
| Execute the job. | |
| virtual auto | get_context () const noexcept -> const job_context &=0 |
| Get the job context. | |
| virtual auto | get_context () noexcept -> job_context &=0 |
| Get the job context (mutable) | |
| virtual auto | get_name () const -> std::string=0 |
| Get the job name for logging. | |
Protected Member Functions | |
| pipeline_job_base ()=default | |
| pipeline_job_base (const pipeline_job_base &)=delete | |
| pipeline_job_base & | operator= (const pipeline_job_base &)=delete |
| pipeline_job_base (pipeline_job_base &&)=default | |
| pipeline_job_base & | operator= (pipeline_job_base &&)=default |
Base class for all pipeline jobs.
Pipeline jobs encapsulate work to be executed by a stage's worker pool. Derived classes implement the execute() method for stage-specific logic.
Definition at line 383 of file pipeline_coordinator.h.
|
virtualdefault |
Virtual destructor.
|
protecteddefault |
|
protecteddelete |
|
protecteddefault |
|
nodiscardpure virtual |
Execute the job.
Called by the worker thread. Implementations should perform the stage-specific work and optionally submit follow-up jobs to the next stage.
| coordinator | Reference to the pipeline coordinator |
Implemented in kcenon::pacs::network::pipeline::dimse_process_job, kcenon::pacs::network::pipeline::pdu_decode_job, kcenon::pacs::network::pipeline::receive_network_io_job, kcenon::pacs::network::pipeline::response_encode_job, kcenon::pacs::network::pipeline::send_network_io_job, and kcenon::pacs::network::pipeline::storage_query_exec_job.
|
nodiscardpure virtualnoexcept |
Get the job context.
Implemented in kcenon::pacs::network::pipeline::dimse_process_job, kcenon::pacs::network::pipeline::pdu_decode_job, kcenon::pacs::network::pipeline::receive_network_io_job, kcenon::pacs::network::pipeline::response_encode_job, kcenon::pacs::network::pipeline::send_network_io_job, and kcenon::pacs::network::pipeline::storage_query_exec_job.
|
nodiscardpure virtualnoexcept |
Get the job context (mutable)
Implemented in kcenon::pacs::network::pipeline::dimse_process_job, kcenon::pacs::network::pipeline::pdu_decode_job, kcenon::pacs::network::pipeline::receive_network_io_job, kcenon::pacs::network::pipeline::response_encode_job, kcenon::pacs::network::pipeline::send_network_io_job, and kcenon::pacs::network::pipeline::storage_query_exec_job.
|
nodiscardpure virtual |
Get the job name for logging.
Implemented in kcenon::pacs::network::pipeline::dimse_process_job, kcenon::pacs::network::pipeline::pdu_decode_job, kcenon::pacs::network::pipeline::receive_network_io_job, kcenon::pacs::network::pipeline::response_encode_job, kcenon::pacs::network::pipeline::send_network_io_job, and kcenon::pacs::network::pipeline::storage_query_exec_job.
|
protecteddelete |
|
protecteddefault |