|
PACS System 0.1.0
PACS DICOM system library
|
#include <test_data_generator.h>

Static Public Member Functions | |
| static auto | create_ct_dataset (const patient_info &patient={}, const image_params ¶ms={}) -> core::dicom_dataset |
| Create a CT dataset with default or custom parameters. | |
| static auto | create_mr_dataset (const patient_info &patient={}, image_params params={}) -> core::dicom_dataset |
| Create an MR dataset with default or custom parameters. | |
| static auto | create_cr_dataset (const patient_info &patient={}, image_params params={}) -> core::dicom_dataset |
| Create a CR (Computed Radiography) dataset. | |
| static auto | create_dx_dataset (const patient_info &patient={}, image_params params={}) -> core::dicom_dataset |
| Create a DX (Digital X-Ray) dataset. | |
| static auto | create_study (const patient_info &patient, const study_info &study, int series_count=1, int instances_per_series=5) -> std::vector< core::dicom_dataset > |
| Generate a complete study with multiple series and instances. | |
| static void | save_to_directory (const std::vector< core::dicom_dataset > &datasets, const std::filesystem::path &directory) |
| Save datasets to a directory structure. | |
| static auto | generate_uid (std::string_view root="1.2.410.200001.1.1") -> std::string |
| Generate a unique DICOM UID. | |
| static auto | current_date () -> std::string |
| Get current date in DICOM format (YYYYMMDD) | |
| static auto | current_time () -> std::string |
| Get current time in DICOM format (HHMMSS.FFFFFF) | |
Static Private Member Functions | |
| static auto | create_base_dataset (const patient_info &patient, const image_params ¶ms) -> core::dicom_dataset |
| Create a base dataset with common elements. | |
| static auto | generate_pixel_data (uint16_t rows, uint16_t columns, uint16_t bits_allocated) -> std::vector< uint8_t > |
| Generate test pixel data. | |
Static Private Attributes | |
| static std::atomic< uint64_t > | uid_counter_ {0} |
| Atomic counter for UID generation. | |
Definition at line 94 of file test_data_generator.h.
|
staticnodiscardprivate |
Create a base dataset with common elements.
| patient | Patient information |
| params | Image parameters |
Definition at line 100 of file test_data_generator.cpp.
References kcenon::pacs::core::dicom_dataset::set_numeric(), kcenon::pacs::core::dicom_dataset::set_string(), and vr.

|
staticnodiscard |
Create a CR (Computed Radiography) dataset.
| patient | Patient information |
| params | Image parameters (default CR params if not provided) |
Definition at line 287 of file test_data_generator.cpp.
References kcenon::pacs::samples::sop_class::cr_image_storage, and vr.
|
staticnodiscard |
Create a CT dataset with default or custom parameters.
| patient | Patient information (default if not provided) |
| params | Image parameters (default CT params if not provided) |
Definition at line 213 of file test_data_generator.cpp.
References kcenon::pacs::samples::image_params::bits_allocated, kcenon::pacs::samples::image_params::columns, kcenon::pacs::samples::sop_class::ct_image_storage, kcenon::pacs::samples::image_params::modality, kcenon::pacs::samples::image_params::photometric, kcenon::pacs::samples::image_params::rows, vr, kcenon::pacs::samples::image_params::window_center, and kcenon::pacs::samples::image_params::window_width.
|
staticnodiscard |
Create a DX (Digital X-Ray) dataset.
| patient | Patient information |
| params | Image parameters (default DX params if not provided) |
Definition at line 321 of file test_data_generator.cpp.
References kcenon::pacs::samples::sop_class::dx_image_storage, and vr.
|
staticnodiscard |
Create an MR dataset with default or custom parameters.
| patient | Patient information |
| params | Image parameters (default MR params if not provided) |
Definition at line 252 of file test_data_generator.cpp.
References kcenon::pacs::samples::sop_class::mr_image_storage, and vr.
|
staticnodiscard |
Generate a complete study with multiple series and instances.
| patient | Patient information |
| study | Study information |
| series_count | Number of series to generate |
| instances_per_series | Number of instances per series |
Definition at line 359 of file test_data_generator.cpp.
References vr.
|
staticnodiscard |
Get current date in DICOM format (YYYYMMDD)
Definition at line 57 of file test_data_generator.cpp.
|
staticnodiscard |
Get current time in DICOM format (HHMMSS.FFFFFF)
Definition at line 75 of file test_data_generator.cpp.
|
staticnodiscardprivate |
Generate test pixel data.
| rows | Number of rows |
| columns | Number of columns |
| bits_allocated | Bits allocated per pixel |
Definition at line 171 of file test_data_generator.cpp.
|
staticnodiscard |
Generate a unique DICOM UID.
| root | UID root (default: pacs_system sample root) |
Generated UIDs follow the format: root.timestamp.counter Thread-safe using atomic counter.
Definition at line 41 of file test_data_generator.cpp.
|
static |
Save datasets to a directory structure.
| datasets | The datasets to save |
| directory | Target directory path |
Creates a hierarchical directory structure: directory/PatientID/StudyUID/SeriesUID/InstanceUID.dcm
Definition at line 423 of file test_data_generator.cpp.
References kcenon::pacs::core::dicom_file::create(), and kcenon::pacs::encoding::transfer_syntax::explicit_vr_little_endian.

|
staticprivate |
Atomic counter for UID generation.
Definition at line 229 of file test_data_generator.h.