PACS System 0.1.0
PACS DICOM system library
Loading...
Searching...
No Matches
job_types.h File Reference

Job types and structures for asynchronous DICOM operations. More...

#include <chrono>
#include <cstddef>
#include <cstdint>
#include <functional>
#include <optional>
#include <string>
#include <string_view>
#include <unordered_map>
#include <vector>
Include dependency graph for job_types.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  kcenon::pacs::client::job_progress
 Progress tracking for a job. More...
 
struct  kcenon::pacs::client::job_record
 Complete job record with all metadata. More...
 
struct  kcenon::pacs::client::job_manager_config
 Configuration for the job manager. More...
 

Namespaces

namespace  kcenon
 
namespace  kcenon::pacs
 
namespace  kcenon::pacs::client
 

Typedefs

using kcenon::pacs::client::job_progress_callback
 Callback for job progress updates.
 
using kcenon::pacs::client::job_completion_callback
 Callback for job completion.
 

Enumerations

enum class  kcenon::pacs::client::job_type {
  kcenon::pacs::client::query , kcenon::pacs::client::retrieve , kcenon::pacs::client::store , kcenon::pacs::client::export_ ,
  kcenon::pacs::client::import_ , kcenon::pacs::client::prefetch , kcenon::pacs::client::sync
}
 Type of job operation. More...
 
enum class  kcenon::pacs::client::job_status {
  kcenon::pacs::client::pending , kcenon::pacs::client::queued , kcenon::pacs::client::running , kcenon::pacs::client::completed ,
  kcenon::pacs::client::failed , kcenon::pacs::client::cancelled , kcenon::pacs::client::paused
}
 Current status of a job. More...
 
enum class  kcenon::pacs::client::job_priority { kcenon::pacs::client::low = 0 , kcenon::pacs::client::normal = 1 , kcenon::pacs::client::high = 2 , kcenon::pacs::client::urgent = 3 }
 Priority level for job execution. More...
 

Functions

constexpr const char * kcenon::pacs::client::to_string (job_type type) noexcept
 Convert job_type to string representation.
 
job_type kcenon::pacs::client::job_type_from_string (std::string_view str) noexcept
 Parse job_type from string.
 
constexpr const char * kcenon::pacs::client::to_string (job_status status) noexcept
 Convert job_status to string representation.
 
job_status kcenon::pacs::client::job_status_from_string (std::string_view str) noexcept
 Parse job_status from string.
 
constexpr bool kcenon::pacs::client::is_terminal_status (job_status status) noexcept
 Check if job status is a terminal state.
 
constexpr const char * kcenon::pacs::client::to_string (job_priority priority) noexcept
 Convert job_priority to string representation.
 
job_priority kcenon::pacs::client::job_priority_from_string (std::string_view str) noexcept
 Parse job_priority from string.
 
job_priority kcenon::pacs::client::job_priority_from_int (int value) noexcept
 Parse job_priority from integer.
 

Detailed Description

Job types and structures for asynchronous DICOM operations.

This file provides data structures for representing background jobs, including job types, status, priority, progress tracking, and job records.

See also
Issue #537 - Implement Job Manager for Async DICOM Operations
Issue #552 - Part 1: Job Types and Repository Implementation
Author
kcenon
Since
1.0.0

Definition in file job_types.h.