PACS System 0.1.0
PACS DICOM system library
Loading...
Searching...
No Matches
kcenon::pacs::client Namespace Reference

Classes

class  job_manager
 
struct  job_manager_config
 Configuration for the job manager. More...
 
struct  job_progress
 Progress tracking for a job. More...
 
struct  job_record
 Complete job record with all metadata. More...
 
struct  node_manager_config
 Configuration for the remote node manager. More...
 
struct  node_statistics
 Statistics for a remote node. More...
 
struct  prefetch_history
 History record for a single prefetch operation. More...
 
class  prefetch_manager
 
struct  prefetch_manager_config
 Configuration for the prefetch manager. More...
 
struct  prefetch_repositories
 
struct  prefetch_result
 Result of a prefetch operation. More...
 
struct  prefetch_rule
 Rule defining when and how to prefetch DICOM data. More...
 
struct  prefetch_rule_statistics
 Statistics for a prefetch rule. More...
 
struct  queue_entry
 
struct  remote_node
 
class  remote_node_manager
 
struct  routing_action
 Action to perform when a routing rule matches. More...
 
struct  routing_condition
 A single condition for routing rule evaluation. More...
 
class  routing_manager
 
struct  routing_manager_config
 Configuration for the routing manager. More...
 
struct  routing_rule
 A complete routing rule with conditions and actions. More...
 
struct  routing_statistics
 Statistics for routing operations. More...
 
struct  routing_test_result
 Result of testing rules against a dataset (dry run) More...
 
struct  sync_config
 Configuration for a synchronization task. More...
 
struct  sync_conflict
 Represents a conflict detected during synchronization. More...
 
struct  sync_history
 Historical record of a sync operation. More...
 
class  sync_manager
 
struct  sync_manager_config
 Configuration for the sync manager. More...
 
struct  sync_repositories
 
struct  sync_result
 Result of a synchronization operation. More...
 
struct  sync_statistics
 Aggregate statistics for synchronization operations. More...
 
struct  tls_config
 TLS configuration for secure DICOM connections. More...
 

Typedefs

using job_progress_callback
 Callback for job progress updates.
 
using job_completion_callback
 Callback for job completion.
 
using node_status_callback = std::function<void(std::string_view node_id, node_status status)>
 Callback function type for node status changes.
 
using routing_event_callback
 Callback type for routing events.
 
using sync_progress_callback
 Callback for sync progress updates.
 
using sync_completion_callback
 Callback for sync completion.
 
using sync_conflict_callback = std::function<void(const sync_conflict& conflict)>
 Callback for conflict detection.
 

Enumerations

enum class  job_type {
  query , retrieve , store , export_ ,
  import_ , prefetch , sync
}
 Type of job operation. More...
 
enum class  job_status {
  pending , queued , running , completed ,
  failed , cancelled , paused
}
 Current status of a job. More...
 
enum class  job_priority { low = 0 , normal = 1 , high = 2 , urgent = 3 }
 Priority level for job execution. More...
 
enum class  prefetch_trigger { worklist_match , prior_studies , scheduled_exam , manual }
 Trigger type for prefetch operations. More...
 
enum class  node_status {
  unknown , online , offline , error ,
  verifying
}
 Status of a remote PACS node. More...
 
enum class  routing_field {
  modality , station_ae , institution , department ,
  referring_physician , study_description , series_description , body_part ,
  patient_id_pattern , sop_class_uid
}
 DICOM field to match in routing conditions. More...
 
enum class  sync_direction { pull , push , bidirectional }
 Direction of synchronization. More...
 
enum class  sync_conflict_type { missing_local , missing_remote , modified , count_mismatch }
 Type of synchronization conflict. More...
 
enum class  conflict_resolution { prefer_local , prefer_remote , prefer_newer }
 Strategy for resolving synchronization conflicts. More...
 

Functions

constexpr const char * to_string (job_type type) noexcept
 Convert job_type to string representation.
 
job_type job_type_from_string (std::string_view str) noexcept
 Parse job_type from string.
 
constexpr const char * to_string (job_status status) noexcept
 Convert job_status to string representation.
 
job_status job_status_from_string (std::string_view str) noexcept
 Parse job_status from string.
 
constexpr bool is_terminal_status (job_status status) noexcept
 Check if job status is a terminal state.
 
constexpr const char * to_string (job_priority priority) noexcept
 Convert job_priority to string representation.
 
job_priority job_priority_from_string (std::string_view str) noexcept
 Parse job_priority from string.
 
job_priority job_priority_from_int (int value) noexcept
 Parse job_priority from integer.
 
constexpr const char * to_string (prefetch_trigger trigger) noexcept
 Convert prefetch_trigger to string representation.
 
prefetch_trigger prefetch_trigger_from_string (std::string_view str) noexcept
 Parse prefetch_trigger from string.
 
constexpr const char * to_string (node_status status) noexcept
 Convert node_status to string representation.
 
node_status node_status_from_string (std::string_view str) noexcept
 Parse node_status from string.
 
constexpr const char * to_string (routing_field field) noexcept
 Convert routing_field to string representation.
 
routing_field routing_field_from_string (std::string_view str) noexcept
 Parse routing_field from string.
 
constexpr const char * to_string (sync_direction direction) noexcept
 Convert sync_direction to string representation.
 
sync_direction sync_direction_from_string (std::string_view str) noexcept
 Parse sync_direction from string.
 
constexpr const char * to_string (sync_conflict_type type) noexcept
 Convert sync_conflict_type to string representation.
 
sync_conflict_type sync_conflict_type_from_string (std::string_view str) noexcept
 Parse sync_conflict_type from string.
 
constexpr const char * to_string (conflict_resolution resolution) noexcept
 Convert conflict_resolution to string representation.
 
conflict_resolution conflict_resolution_from_string (std::string_view str) noexcept
 Parse conflict_resolution from string.
 

Typedef Documentation

◆ job_completion_callback

Initial value:
std::function<void(
const std::string& job_id,
const job_record& record)>

Callback for job completion.

Parameters
job_idThe ID of the job
recordFinal job record
Examples
/home/runner/work/pacs_system/pacs_system/include/kcenon/pacs/client/job_manager.h.

Definition at line 395 of file job_types.h.

◆ job_progress_callback

Initial value:
std::function<void(
const std::string& job_id,
const job_progress& progress)>

Callback for job progress updates.

Parameters
job_idThe ID of the job
progressCurrent progress information
Examples
/home/runner/work/pacs_system/pacs_system/include/kcenon/pacs/client/job_manager.h.

Definition at line 385 of file job_types.h.

◆ node_status_callback

using kcenon::pacs::client::node_status_callback = std::function<void(std::string_view node_id, node_status status)>

Callback function type for node status changes.

Invoked when a node's status changes (e.g., online -> offline).

Parameters
node_idThe ID of the node whose status changed
statusThe new status
Examples
/home/runner/work/pacs_system/pacs_system/include/kcenon/pacs/client/remote_node.h, and /home/runner/work/pacs_system/pacs_system/include/kcenon/pacs/client/remote_node_manager.h.

Definition at line 227 of file remote_node.h.

◆ routing_event_callback

Initial value:
std::function<void(
const std::string& rule_id,
const std::string& instance_uid,
const std::vector<routing_action>& triggered_actions)>

Callback type for routing events.

Parameters
rule_idThe ID of the rule that triggered
instance_uidThe SOP Instance UID being routed
triggered_actionsThe actions that will be executed
Examples
/home/runner/work/pacs_system/pacs_system/include/kcenon/pacs/client/routing_manager.h.

Definition at line 260 of file routing_types.h.

◆ sync_completion_callback

Initial value:
std::function<void(
const std::string& config_id,
const sync_result& result)>

Callback for sync completion.

Parameters
config_idThe ID of the sync config
resultFinal sync result
Examples
/home/runner/work/pacs_system/pacs_system/include/kcenon/pacs/client/sync_manager.h.

Definition at line 361 of file sync_types.h.

◆ sync_conflict_callback

using kcenon::pacs::client::sync_conflict_callback = std::function<void(const sync_conflict& conflict)>

Callback for conflict detection.

Parameters
conflictThe detected conflict
Examples
/home/runner/work/pacs_system/pacs_system/include/kcenon/pacs/client/sync_manager.h.

Definition at line 370 of file sync_types.h.

◆ sync_progress_callback

Initial value:
std::function<void(
const std::string& config_id,
size_t studies_synced,
size_t studies_total)>

Callback for sync progress updates.

Parameters
config_idThe ID of the sync config
studies_syncedNumber of studies synced so far
studies_totalTotal studies to sync
Examples
/home/runner/work/pacs_system/pacs_system/include/kcenon/pacs/client/sync_manager.h.

Definition at line 350 of file sync_types.h.

Enumeration Type Documentation

◆ conflict_resolution

Strategy for resolving synchronization conflicts.

Enumerator
prefer_local 

Keep local version.

prefer_remote 

Use remote version.

prefer_newer 

Use the newer version based on timestamp.

Examples
/home/runner/work/pacs_system/pacs_system/include/kcenon/pacs/client/sync_manager.h.

Definition at line 121 of file sync_types.h.

121 {
125};
@ prefer_newer
Use the newer version based on timestamp.

◆ job_priority

Priority level for job execution.

Higher priority jobs are executed before lower priority ones.

Enumerator
low 

Background operations.

normal 

Standard priority.

high 

User-requested operations.

urgent 

Critical operations.

Examples
/home/runner/work/pacs_system/pacs_system/include/kcenon/pacs/client/job_manager.h.

Definition at line 154 of file job_types.h.

154 {
155 low = 0,
156 normal = 1,
157 high = 2,
158 urgent = 3
159};
@ low
Background operations.
@ high
User-requested operations.
@ urgent
Critical operations.

◆ job_status

Current status of a job.

Enumerator
pending 

Job created but not yet queued.

queued 

Job is in the execution queue.

running 

Job is currently executing.

completed 

Job completed successfully.

failed 

Job failed with error.

cancelled 

Job was cancelled by user.

paused 

Job is paused.

Definition at line 90 of file job_types.h.

90 {
91 pending,
92 queued,
93 running,
94 completed,
95 failed,
96 cancelled,
97 paused
98};
@ queued
Job is in the execution queue.

◆ job_type

enum class kcenon::pacs::client::job_type
strong

Type of job operation.

Enumerator
query 

C-FIND operation.

retrieve 

C-MOVE/C-GET operation.

store 

C-STORE operation.

export_ 

Export to external system.

import_ 

Import from external source.

prefetch 

Prefetch prior studies.

sync 

Synchronization.

Definition at line 39 of file job_types.h.

39 {
40 query,
41 retrieve,
42 store,
43 export_,
44 import_,
45 prefetch,
46 sync
47};
@ export_
Export to external system.
@ prefetch
Prefetch prior studies.
@ store
C-STORE operation.
@ retrieve
C-MOVE/C-GET operation.
@ import_
Import from external source.

◆ node_status

Status of a remote PACS node.

Represents the current connectivity and health status of a remote node.

Enumerator
unknown 

Status not yet determined.

online 

Node is responding to C-ECHO.

offline 

Node is not responding.

error 

Node returned an error.

verifying 

Verification in progress.

Examples
/home/runner/work/pacs_system/pacs_system/include/kcenon/pacs/client/remote_node.h, and /home/runner/work/pacs_system/pacs_system/include/kcenon/pacs/client/remote_node_manager.h.

Definition at line 51 of file remote_node.h.

51 {
52 unknown,
53 online,
54 offline,
55 error,
57};
@ verifying
Verification in progress.
@ offline
Node is not responding.
@ online
Node is responding to C-ECHO.
@ unknown
Status not yet determined.
@ error
Node returned an error.

◆ prefetch_trigger

Trigger type for prefetch operations.

Enumerator
worklist_match 

Triggered by worklist entry.

prior_studies 

Fetch prior studies for patient.

scheduled_exam 

Based on scheduled procedure.

manual 

Manual request.

Definition at line 34 of file prefetch_types.h.

34 {
38 manual
39};
@ worklist_match
Triggered by worklist entry.
@ scheduled_exam
Based on scheduled procedure.
@ prior_studies
Fetch prior studies for patient.

◆ routing_field

DICOM field to match in routing conditions.

These fields map to standard DICOM attributes that can be used for routing decisions.

Enumerator
modality 

(0008,0060) Modality - CT, MR, US, etc.

station_ae 

(0008,1010) Station Name or calling AE

institution 

(0008,0080) Institution Name

department 

(0008,1040) Institutional Department Name

referring_physician 

(0008,0090) Referring Physician's Name

study_description 

(0008,1030) Study Description

series_description 

(0008,103E) Series Description

body_part 

(0018,0015) Body Part Examined

patient_id_pattern 

(0010,0020) Patient ID (pattern matching)

sop_class_uid 

(0008,0016) SOP Class UID

Examples
/home/runner/work/pacs_system/pacs_system/include/kcenon/pacs/client/routing_manager.h.

Definition at line 41 of file routing_types.h.

41 {
42 modality,
47 study_description,
48 series_description,
49 body_part,
51 sop_class_uid
52};
@ department
(0008,1040) Institutional Department Name
@ body_part
(0018,0015) Body Part Examined
@ institution
(0008,0080) Institution Name
@ station_ae
(0008,1010) Station Name or calling AE
@ patient_id_pattern
(0010,0020) Patient ID (pattern matching)
@ referring_physician
(0008,0090) Referring Physician's Name

◆ sync_conflict_type

Type of synchronization conflict.

Enumerator
missing_local 

Study exists on remote but not locally.

missing_remote 

Study exists locally but not on remote.

modified 

Study modified on both sides.

count_mismatch 

Instance counts differ.

Definition at line 78 of file sync_types.h.

78 {
81 modified,
83};
@ missing_remote
Study exists locally but not on remote.
@ missing_local
Study exists on remote but not locally.
@ modified
Study modified on both sides.
@ count_mismatch
Instance counts differ.

◆ sync_direction

Direction of synchronization.

Enumerator
pull 

Pull from remote to local.

push 

Push from local to remote.

bidirectional 

Both directions.

Definition at line 38 of file sync_types.h.

38 {
39 pull,
40 push,
42};
@ push
Push from local to remote.
@ pull
Pull from remote to local.

Function Documentation

◆ conflict_resolution_from_string()

conflict_resolution kcenon::pacs::client::conflict_resolution_from_string ( std::string_view str)
inlinenodiscardnoexcept

Parse conflict_resolution from string.

Parameters
strThe string to parse
Returns
Parsed resolution, or prefer_remote if invalid

Definition at line 147 of file sync_types.h.

148 {
149 if (str == "prefer_local") return conflict_resolution::prefer_local;
150 if (str == "prefer_remote") return conflict_resolution::prefer_remote;
151 if (str == "prefer_newer") return conflict_resolution::prefer_newer;
152 return conflict_resolution::prefer_remote;
153}

References prefer_local, prefer_newer, and prefer_remote.

Referenced by kcenon::pacs::storage::sync_repository::parse_conflict_row().

Here is the caller graph for this function:

◆ is_terminal_status()

bool kcenon::pacs::client::is_terminal_status ( job_status status)
nodiscardconstexprnoexcept

Check if job status is a terminal state.

Parameters
statusThe status to check
Returns
true if the job has finished (completed, failed, or cancelled)

Definition at line 139 of file job_types.h.

139 {
140 return status == job_status::completed ||
141 status == job_status::failed ||
142 status == job_status::cancelled;
143}

References cancelled, completed, and failed.

Referenced by kcenon::pacs::client::job_record::can_cancel(), kcenon::pacs::client::job_record::is_finished(), and kcenon::pacs::client::job_manager::impl::update_job_status().

Here is the caller graph for this function:

◆ job_priority_from_int()

job_priority kcenon::pacs::client::job_priority_from_int ( int value)
inlinenodiscardnoexcept

Parse job_priority from integer.

Parameters
valueThe integer value (0-3)
Returns
Parsed priority, or normal if out of range

Definition at line 194 of file job_types.h.

194 {
195 if (value <= 0) return job_priority::low;
196 if (value == 1) return job_priority::normal;
197 if (value == 2) return job_priority::high;
198 if (value >= 3) return job_priority::urgent;
199 return job_priority::normal;
200}

References high, low, normal, and urgent.

◆ job_priority_from_string()

job_priority kcenon::pacs::client::job_priority_from_string ( std::string_view str)
inlinenodiscardnoexcept

Parse job_priority from string.

Parameters
strThe string to parse
Returns
Parsed priority, or normal if invalid

Definition at line 181 of file job_types.h.

181 {
182 if (str == "low") return job_priority::low;
183 if (str == "normal") return job_priority::normal;
184 if (str == "high") return job_priority::high;
185 if (str == "urgent") return job_priority::urgent;
186 return job_priority::normal;
187}

References high, low, normal, and urgent.

Referenced by kcenon::pacs::storage::routing_repository::deserialize_actions(), and kcenon::pacs::web::endpoints::register_jobs_endpoints_impl().

Here is the caller graph for this function:

◆ job_status_from_string()

job_status kcenon::pacs::client::job_status_from_string ( std::string_view str)
inlinenodiscardnoexcept

Parse job_status from string.

Parameters
strThe string to parse
Returns
Parsed status, or pending if invalid

Definition at line 123 of file job_types.h.

123 {
124 if (str == "pending") return job_status::pending;
125 if (str == "queued") return job_status::queued;
126 if (str == "running") return job_status::running;
127 if (str == "completed") return job_status::completed;
128 if (str == "failed") return job_status::failed;
129 if (str == "cancelled") return job_status::cancelled;
130 if (str == "paused") return job_status::paused;
131 return job_status::pending;
132}

References cancelled, completed, failed, paused, pending, queued, and running.

Referenced by kcenon::pacs::web::endpoints::register_jobs_endpoints_impl().

Here is the caller graph for this function:

◆ job_type_from_string()

job_type kcenon::pacs::client::job_type_from_string ( std::string_view str)
inlinenodiscardnoexcept

Parse job_type from string.

Parameters
strThe string to parse
Returns
Parsed type, or query if invalid

Definition at line 72 of file job_types.h.

72 {
73 if (str == "query") return job_type::query;
74 if (str == "retrieve") return job_type::retrieve;
75 if (str == "store") return job_type::store;
76 if (str == "export") return job_type::export_;
77 if (str == "import") return job_type::import_;
78 if (str == "prefetch") return job_type::prefetch;
79 if (str == "sync") return job_type::sync;
80 return job_type::query;
81}

References export_, import_, prefetch, query, retrieve, store, and sync.

Referenced by kcenon::pacs::web::endpoints::register_jobs_endpoints_impl().

Here is the caller graph for this function:

◆ node_status_from_string()

node_status kcenon::pacs::client::node_status_from_string ( std::string_view str)
inlinenodiscardnoexcept

Parse node_status from string.

Parameters
strThe string to parse
Returns
Parsed status, or unknown if invalid
Examples
/home/runner/work/pacs_system/pacs_system/include/kcenon/pacs/client/remote_node.h.

Definition at line 80 of file remote_node.h.

80 {
81 if (str == "online") return node_status::online;
82 if (str == "offline") return node_status::offline;
83 if (str == "error") return node_status::error;
84 if (str == "verifying") return node_status::verifying;
85 return node_status::unknown;
86}

References error, offline, online, unknown, and verifying.

Referenced by kcenon::pacs::storage::node_repository::parse_row(), and kcenon::pacs::web::endpoints::register_remote_nodes_endpoints_impl().

Here is the caller graph for this function:

◆ prefetch_trigger_from_string()

prefetch_trigger kcenon::pacs::client::prefetch_trigger_from_string ( std::string_view str)
inlinenodiscardnoexcept

Parse prefetch_trigger from string.

Parameters
strThe string to parse
Returns
Parsed trigger, or manual if invalid

Definition at line 61 of file prefetch_types.h.

62 {
63 if (str == "worklist_match") return prefetch_trigger::worklist_match;
64 if (str == "prior_studies") return prefetch_trigger::prior_studies;
65 if (str == "scheduled_exam") return prefetch_trigger::scheduled_exam;
66 if (str == "manual") return prefetch_trigger::manual;
67 return prefetch_trigger::manual;
68}

References manual, prior_studies, scheduled_exam, and worklist_match.

◆ routing_field_from_string()

routing_field kcenon::pacs::client::routing_field_from_string ( std::string_view str)
inlinenodiscardnoexcept

Parse routing_field from string.

Parameters
strThe string to parse
Returns
Parsed field, or modality if invalid

Definition at line 80 of file routing_types.h.

81 {
82 if (str == "modality") return routing_field::modality;
83 if (str == "station_ae") return routing_field::station_ae;
84 if (str == "institution") return routing_field::institution;
85 if (str == "department") return routing_field::department;
86 if (str == "referring_physician") return routing_field::referring_physician;
87 if (str == "study_description") return routing_field::study_description;
88 if (str == "series_description") return routing_field::series_description;
89 if (str == "body_part") return routing_field::body_part;
90 if (str == "patient_id_pattern") return routing_field::patient_id_pattern;
91 if (str == "sop_class_uid") return routing_field::sop_class_uid;
92 return routing_field::modality;
93}

References body_part, department, institution, modality, patient_id_pattern, referring_physician, series_description, sop_class_uid, station_ae, and study_description.

Referenced by kcenon::pacs::storage::routing_repository::deserialize_conditions().

Here is the caller graph for this function:

◆ sync_conflict_type_from_string()

sync_conflict_type kcenon::pacs::client::sync_conflict_type_from_string ( std::string_view str)
inlinenodiscardnoexcept

Parse sync_conflict_type from string.

Parameters
strThe string to parse
Returns
Parsed type, or missing_local if invalid

Definition at line 105 of file sync_types.h.

106 {
107 if (str == "missing_local") return sync_conflict_type::missing_local;
108 if (str == "missing_remote") return sync_conflict_type::missing_remote;
109 if (str == "modified") return sync_conflict_type::modified;
110 if (str == "count_mismatch") return sync_conflict_type::count_mismatch;
111 return sync_conflict_type::missing_local;
112}

References count_mismatch, missing_local, missing_remote, and modified.

Referenced by kcenon::pacs::storage::sync_repository::parse_conflict_row().

Here is the caller graph for this function:

◆ sync_direction_from_string()

sync_direction kcenon::pacs::client::sync_direction_from_string ( std::string_view str)
inlinenodiscardnoexcept

Parse sync_direction from string.

Parameters
strThe string to parse
Returns
Parsed direction, or pull if invalid

Definition at line 63 of file sync_types.h.

64 {
65 if (str == "pull") return sync_direction::pull;
66 if (str == "push") return sync_direction::push;
67 if (str == "bidirectional") return sync_direction::bidirectional;
68 return sync_direction::pull;
69}

References bidirectional, pull, and push.

Referenced by kcenon::pacs::storage::sync_repository::parse_config_row().

Here is the caller graph for this function:

◆ to_string() [1/9]

const char * kcenon::pacs::client::to_string ( conflict_resolution resolution)
nodiscardconstexprnoexcept

Convert conflict_resolution to string representation.

Parameters
resolutionThe resolution to convert
Returns
String representation of the resolution

Definition at line 132 of file sync_types.h.

133 {
134 switch (resolution) {
135 case conflict_resolution::prefer_local: return "prefer_local";
136 case conflict_resolution::prefer_remote: return "prefer_remote";
137 case conflict_resolution::prefer_newer: return "prefer_newer";
138 default: return "unknown";
139 }
140}

References prefer_local, prefer_newer, and prefer_remote.

◆ to_string() [2/9]

const char * kcenon::pacs::client::to_string ( job_priority priority)
nodiscardconstexprnoexcept

Convert job_priority to string representation.

Parameters
priorityThe priority to convert
Returns
String representation of the priority

Definition at line 166 of file job_types.h.

166 {
167 switch (priority) {
168 case job_priority::low: return "low";
169 case job_priority::normal: return "normal";
170 case job_priority::high: return "high";
171 case job_priority::urgent: return "urgent";
172 default: return "unknown";
173 }
174}

References high, low, normal, and urgent.

◆ to_string() [3/9]

const char * kcenon::pacs::client::to_string ( job_status status)
nodiscardconstexprnoexcept

Convert job_status to string representation.

Parameters
statusThe status to convert
Returns
String representation of the status

Definition at line 105 of file job_types.h.

105 {
106 switch (status) {
107 case job_status::pending: return "pending";
108 case job_status::queued: return "queued";
109 case job_status::running: return "running";
110 case job_status::completed: return "completed";
111 case job_status::failed: return "failed";
112 case job_status::cancelled: return "cancelled";
113 case job_status::paused: return "paused";
114 default: return "unknown";
115 }
116}

References cancelled, completed, failed, paused, pending, queued, and running.

◆ to_string() [4/9]

const char * kcenon::pacs::client::to_string ( job_type type)
nodiscardconstexprnoexcept

Convert job_type to string representation.

Parameters
typeThe type to convert
Returns
String representation of the type
Examples
/home/runner/work/pacs_system/pacs_system/include/kcenon/pacs/client/remote_node.h.

Definition at line 54 of file job_types.h.

54 {
55 switch (type) {
56 case job_type::query: return "query";
57 case job_type::retrieve: return "retrieve";
58 case job_type::store: return "store";
59 case job_type::export_: return "export";
60 case job_type::import_: return "import";
61 case job_type::prefetch: return "prefetch";
62 case job_type::sync: return "sync";
63 default: return "unknown";
64 }
65}

References export_, import_, prefetch, query, retrieve, store, and sync.

Referenced by kcenon::pacs::client::job_manager::cancel_job(), kcenon::pacs::client::job_manager::impl::complete_job(), kcenon::pacs::storage::node_repository::find_by_status(), kcenon::pacs::storage::job_repository::find_jobs(), kcenon::pacs::storage::prefetch_repository::find_rules(), kcenon::pacs::client::job_manager::pause_job(), kcenon::pacs::web::endpoints::register_remote_nodes_endpoints_impl(), kcenon::pacs::client::sync_manager::resolve_conflict(), kcenon::pacs::client::job_manager::resume_job(), kcenon::pacs::client::job_manager::retry_job(), kcenon::pacs::storage::job_repository::save(), kcenon::pacs::storage::prefetch_repository::save_rule(), kcenon::pacs::storage::routing_repository::serialize_actions(), kcenon::pacs::storage::routing_repository::serialize_conditions(), kcenon::pacs::client::job_manager::start_job(), kcenon::pacs::storage::node_repository::update_status(), kcenon::pacs::storage::node_repository::upsert(), and kcenon::pacs::client::job_manager::impl::worker_loop().

Here is the caller graph for this function:

◆ to_string() [5/9]

const char * kcenon::pacs::client::to_string ( node_status status)
nodiscardconstexprnoexcept

Convert node_status to string representation.

Parameters
statusThe status to convert
Returns
String representation of the status

Definition at line 64 of file remote_node.h.

64 {
65 switch (status) {
66 case node_status::unknown: return "unknown";
67 case node_status::online: return "online";
68 case node_status::offline: return "offline";
69 case node_status::error: return "error";
70 case node_status::verifying: return "verifying";
71 default: return "unknown";
72 }
73}

References error, offline, online, unknown, and verifying.

◆ to_string() [6/9]

const char * kcenon::pacs::client::to_string ( prefetch_trigger trigger)
nodiscardconstexprnoexcept

Convert prefetch_trigger to string representation.

Parameters
triggerThe trigger to convert
Returns
String representation of the trigger

Definition at line 46 of file prefetch_types.h.

46 {
47 switch (trigger) {
48 case prefetch_trigger::worklist_match: return "worklist_match";
49 case prefetch_trigger::prior_studies: return "prior_studies";
50 case prefetch_trigger::scheduled_exam: return "scheduled_exam";
51 case prefetch_trigger::manual: return "manual";
52 default: return "unknown";
53 }
54}

References manual, prior_studies, scheduled_exam, and worklist_match.

◆ to_string() [7/9]

const char * kcenon::pacs::client::to_string ( routing_field field)
nodiscardconstexprnoexcept

Convert routing_field to string representation.

Parameters
fieldThe field to convert
Returns
String representation of the field

Definition at line 59 of file routing_types.h.

59 {
60 switch (field) {
61 case routing_field::modality: return "modality";
62 case routing_field::station_ae: return "station_ae";
63 case routing_field::institution: return "institution";
64 case routing_field::department: return "department";
65 case routing_field::referring_physician: return "referring_physician";
66 case routing_field::study_description: return "study_description";
67 case routing_field::series_description: return "series_description";
68 case routing_field::body_part: return "body_part";
69 case routing_field::patient_id_pattern: return "patient_id_pattern";
70 case routing_field::sop_class_uid: return "sop_class_uid";
71 default: return "unknown";
72 }
73}

References body_part, department, institution, modality, patient_id_pattern, referring_physician, series_description, sop_class_uid, station_ae, and study_description.

◆ to_string() [8/9]

const char * kcenon::pacs::client::to_string ( sync_conflict_type type)
nodiscardconstexprnoexcept

Convert sync_conflict_type to string representation.

Parameters
typeThe type to convert
Returns
String representation of the type

Definition at line 90 of file sync_types.h.

90 {
91 switch (type) {
92 case sync_conflict_type::missing_local: return "missing_local";
93 case sync_conflict_type::missing_remote: return "missing_remote";
94 case sync_conflict_type::modified: return "modified";
95 case sync_conflict_type::count_mismatch: return "count_mismatch";
96 default: return "unknown";
97 }
98}

References count_mismatch, missing_local, missing_remote, and modified.

◆ to_string() [9/9]

const char * kcenon::pacs::client::to_string ( sync_direction direction)
nodiscardconstexprnoexcept

Convert sync_direction to string representation.

Parameters
directionThe direction to convert
Returns
String representation of the direction

Definition at line 49 of file sync_types.h.

49 {
50 switch (direction) {
51 case sync_direction::pull: return "pull";
52 case sync_direction::push: return "push";
53 case sync_direction::bidirectional: return "bidirectional";
54 default: return "unknown";
55 }
56}

References bidirectional, pull, and push.