|
PACS System 0.1.0
PACS DICOM system library
|
Namespaces | |
| namespace | lock_error |
| Error codes for lock operations. | |
Classes | |
| struct | archive_config |
| Configuration for archive scheduling. More... | |
| class | auto_prefetch_service |
| struct | cleanup_config |
| Configuration for cleanup scheduling. More... | |
| struct | cron_schedule |
| Cron-like schedule expression. More... | |
| struct | interval_schedule |
| Simple interval-based schedule. More... | |
| struct | lock_info |
| Detailed information about a lock on a study. More... | |
| struct | lock_manager_stats |
| Statistics for lock manager operations. More... | |
| struct | lock_token |
| Unique identifier for a lock. More... | |
| struct | one_time_schedule |
| One-time execution at specific time. More... | |
| struct | prefetch_criteria |
| Prefetch selection criteria. More... | |
| struct | prefetch_request |
| Prefetch request for a single patient. More... | |
| struct | prefetch_result |
| Prefetch result statistics. More... | |
| struct | prefetch_service_config |
| Configuration for the auto prefetch service. More... | |
| struct | prior_study_info |
| Prior study information. More... | |
| struct | remote_pacs_config |
| Remote PACS connection configuration. More... | |
| class | Result |
| struct | scheduled_task |
| Scheduled task definition. More... | |
| struct | scheduler_stats |
| Statistics for task scheduler operations. More... | |
| class | study_lock_manager |
| Manages locks on DICOM studies for concurrent access control. More... | |
| struct | study_lock_manager_config |
| Configuration for the study lock manager. More... | |
| struct | task_execution_record |
| Record of a single task execution. More... | |
| class | task_scheduler |
| struct | task_scheduler_config |
| Configuration for the task scheduler service. More... | |
| struct | verification_config |
| Configuration for verification scheduling. More... | |
Typedefs | |
| using | schedule = std::variant<interval_schedule, cron_schedule, one_time_schedule> |
| Combined schedule type. | |
| using | task_id = std::string |
| Unique task identifier. | |
| using | task_callback = std::function<bool()> |
| Task callback function type. | |
| using | task_callback_with_result = std::function<std::optional<std::string>()> |
| Task callback with result details. | |
Enumerations | |
| enum class | lock_type { exclusive , shared , migration } |
| Type of lock to acquire on a study. More... | |
| enum class | task_type { cleanup , archive , verification , custom } |
| Task type enumeration. More... | |
| enum class | task_state { pending , running , completed , failed , cancelled , paused } |
| Task execution state. More... | |
| enum class | archive_destination_type { local_path , network_share , cloud_s3 , cloud_azure , tape } |
| Archive destination type. More... | |
Functions | |
| auto | to_string (lock_type type) -> std::string |
| Convert lock_type to string. | |
| auto | parse_lock_type (const std::string &str) -> std::optional< lock_type > |
| Parse lock_type from string. | |
| auto | to_string (task_state state) -> std::string |
| Convert task_state to string. | |
| auto | to_string (task_type type) -> std::string |
| Convert task_type to string. | |
| using kcenon::pacs::workflow::schedule = std::variant<interval_schedule, cron_schedule, one_time_schedule> |
Combined schedule type.
Definition at line 149 of file task_scheduler_config.h.
| using kcenon::pacs::workflow::task_callback = std::function<bool()> |
Task callback function type.
Definition at line 262 of file task_scheduler_config.h.
| using kcenon::pacs::workflow::task_callback_with_result = std::function<std::optional<std::string>()> |
Task callback with result details.
Definition at line 269 of file task_scheduler_config.h.
| using kcenon::pacs::workflow::task_id = std::string |
Unique task identifier.
Definition at line 255 of file task_scheduler_config.h.
|
strong |
Archive destination type.
| Enumerator | |
|---|---|
| local_path | Local filesystem path. |
| network_share | Network share (SMB/NFS) |
| cloud_s3 | AWS S3 or compatible. |
| cloud_azure | Azure Blob Storage. |
| tape | Tape library. |
Definition at line 390 of file task_scheduler_config.h.
|
strong |
Type of lock to acquire on a study.
| Enumerator | |
|---|---|
| exclusive | No other access allowed (for modifications) |
| shared | Read-only access allowed (for read operations) |
| migration | Special lock for migration operations (highest priority) |
Definition at line 49 of file study_lock_manager.h.
|
strong |
Task execution state.
| Enumerator | |
|---|---|
| pending | Waiting for scheduled time. |
| running | Currently executing. |
| completed | Completed successfully. |
| failed | Execution failed. |
| cancelled | Cancelled by user. |
| paused | Temporarily paused. |
Definition at line 168 of file task_scheduler_config.h.
|
strong |
Task type enumeration.
| Enumerator | |
|---|---|
| cleanup | Storage cleanup task. |
| archive | Study archival task. |
| verification | Data integrity verification. |
| custom | User-defined task. |
Definition at line 158 of file task_scheduler_config.h.
|
inlinenodiscard |
Parse lock_type from string.
Definition at line 70 of file study_lock_manager.h.
|
inlinenodiscard |
Convert lock_type to string.
Definition at line 58 of file study_lock_manager.h.
References exclusive, migration, and shared.
Referenced by kcenon::pacs::workflow::study_lock_manager::lock(), and kcenon::pacs::workflow::task_scheduler::serialize_tasks().

|
inlinenodiscard |
Convert task_state to string.
Definition at line 180 of file task_scheduler_config.h.
References cancelled, completed, failed, paused, pending, and running.
|
inlinenodiscard |
Convert task_type to string.
Definition at line 195 of file task_scheduler_config.h.
References archive, cleanup, custom, and verification.