PACS System 0.1.0
PACS DICOM system library
Loading...
Searching...
No Matches
pacs-monitoring.cppm
Go to the documentation of this file.
1// BSD 3-Clause License
2// Copyright (c) 2025, 🍀☀🌕🌥 🌊
3// See the LICENSE file in the project root for full license information.
4
19module;
20
21// Standard library imports
22#include <array>
23#include <atomic>
24#include <chrono>
25#include <cstddef>
26#include <cstdint>
27#include <functional>
28#include <memory>
29#include <mutex>
30#include <optional>
31#include <string>
32#include <string_view>
33#include <unordered_map>
34#include <vector>
35
36// PACS monitoring headers
42
43// PACS metric collectors (CRTP-based)
49
50export module kcenon.pacs:monitoring;
51
52// ============================================================================
53// Re-export pacs::monitoring namespace
54// ============================================================================
55
56export namespace pacs::monitoring {
57
58// Monitor
59using pacs::monitoring::pacs_monitor;
60using pacs::monitoring::metric_type;
61
62// Health
63using pacs::monitoring::health_checker;
64using pacs::monitoring::health_status;
65
66// Metrics core
67using pacs::monitoring::pacs_metrics;
68using pacs::monitoring::association_counters;
69using pacs::monitoring::transfer_counters;
70using pacs::monitoring::pool_counters;
71using pacs::monitoring::operation_counter;
72using pacs::monitoring::dimse_operation;
73using pacs::monitoring::to_string;
74
75// CRTP collector base
76using pacs::monitoring::dicom_collector_base;
77using pacs::monitoring::dicom_metric;
78using pacs::monitoring::config_map;
79using pacs::monitoring::stats_map;
80
81// Unified DICOM metrics collector
82using pacs::monitoring::dicom_metrics_collector;
83using pacs::monitoring::dicom_metrics_snapshot;
84
85// Specialized collectors
86using pacs::monitoring::dicom_association_collector;
87using pacs::monitoring::association_metric;
88
89using pacs::monitoring::dicom_service_collector;
90using pacs::monitoring::service_metric;
91
92using pacs::monitoring::dicom_storage_collector;
93using pacs::monitoring::storage_metric;
94
95} // namespace pacs::monitoring
DICOM Association metrics collector.
CRTP base class for DICOM metrics collectors.
CRTP-based unified DICOM metrics collector.
DICOM DIMSE Service metrics collector.
DICOM Storage metrics collector.
Health check service for PACS system components.
JSON serialization for health check data structures.
Health status data structures for PACS system monitoring.
Operation metrics collection for PACS DICOM services.
Unified PACS monitoring with IMonitor interface integration.