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

Public Member Functions | |
| xa_iod_validator ()=default | |
| Construct validator with default options. | |
| xa_iod_validator (const xa_validation_options &options) | |
| Construct validator with custom options. | |
| validation_result | validate (const core::dicom_dataset &dataset) const |
| Validate a DICOM dataset against XA IOD. | |
| validation_result | validate_multiframe (const core::dicom_dataset &dataset) const |
| Validate a multi-frame XA dataset. | |
| bool | quick_check (const core::dicom_dataset &dataset) const |
| Quick check if dataset has minimum required XA attributes. | |
| validation_result | validate_calibration (const core::dicom_dataset &dataset) const |
| Validate calibration data for quantitative analysis. | |
| const xa_validation_options & | options () const noexcept |
| Get the validation options. | |
| void | set_options (const xa_validation_options &options) |
| Set validation options. | |
Private Attributes | |
| xa_validation_options | options_ |
Definition at line 181 of file xa_iod_validator.h.
|
default |
Construct validator with default options.
|
explicit |
Construct validator with custom options.
| options | Validation options |
Definition at line 24 of file xa_iod_validator.cpp.
|
private |
Definition at line 432 of file xa_iod_validator.cpp.
References kcenon::pacs::core::dicom_dataset::contains(), kcenon::pacs::services::validation::error, kcenon::pacs::core::dicom_dataset::get_string(), and kcenon::pacs::core::tags::modality.
Referenced by validate_general_series_module().


|
private |
Definition at line 471 of file xa_iod_validator.cpp.
References kcenon::pacs::core::tags::bits_allocated, kcenon::pacs::core::tags::bits_stored, kcenon::pacs::services::validation::error, kcenon::pacs::core::dicom_dataset::get_numeric(), kcenon::pacs::core::tags::high_bit, kcenon::pacs::core::tags::pixel_representation, kcenon::pacs::core::tags::samples_per_pixel, and kcenon::pacs::services::validation::warning.
Referenced by validate_image_pixel_module().


|
private |
Definition at line 542 of file xa_iod_validator.cpp.
References kcenon::pacs::core::dicom_dataset::contains(), kcenon::pacs::core::dicom_dataset::get_numeric(), kcenon::pacs::services::validation::info, kcenon::pacs::services::validation::xa_tags::positioner_primary_angle, kcenon::pacs::services::validation::xa_tags::positioner_secondary_angle, and kcenon::pacs::services::validation::warning.
Referenced by validate().


|
private |
Definition at line 385 of file xa_iod_validator.cpp.
References kcenon::pacs::core::dicom_dataset::contains(), kcenon::pacs::services::validation::error, kcenon::pacs::core::dicom_dataset::get_string(), name, and kcenon::pacs::core::dicom_tag::to_string().
Referenced by validate_general_series_module(), validate_general_study_module(), validate_image_pixel_module(), validate_multiframe_module(), validate_sop_common_module(), and validate_xa_image_module().


|
private |
Definition at line 414 of file xa_iod_validator.cpp.
References kcenon::pacs::core::dicom_dataset::contains(), name, kcenon::pacs::core::dicom_tag::to_string(), and kcenon::pacs::services::validation::warning.
Referenced by validate_general_series_module(), validate_general_study_module(), and validate_patient_module().


|
private |
Definition at line 451 of file xa_iod_validator.cpp.
References kcenon::pacs::core::dicom_dataset::contains(), kcenon::pacs::services::validation::error, kcenon::pacs::core::dicom_dataset::get_string(), kcenon::pacs::services::sop_classes::is_valid_xa_photometric(), and kcenon::pacs::core::tags::photometric_interpretation.
Referenced by validate_xa_image_module().


|
nodiscardnoexcept |
Get the validation options.
Definition at line 139 of file xa_iod_validator.cpp.
References options_.
Referenced by set_options().

|
nodiscard |
Quick check if dataset has minimum required XA attributes.
Faster than full validation - only checks Type 1 attributes.
| dataset | The dataset to check |
Definition at line 87 of file xa_iod_validator.cpp.
References kcenon::pacs::core::tags::bits_allocated, kcenon::pacs::core::tags::bits_stored, kcenon::pacs::core::tags::columns, kcenon::pacs::core::dicom_dataset::contains(), kcenon::pacs::core::dicom_dataset::get_string(), kcenon::pacs::core::tags::high_bit, kcenon::pacs::core::tags::image_type, kcenon::pacs::core::tags::modality, kcenon::pacs::core::tags::photometric_interpretation, kcenon::pacs::core::tags::pixel_data, kcenon::pacs::core::tags::pixel_representation, kcenon::pacs::core::tags::rows, kcenon::pacs::core::tags::samples_per_pixel, kcenon::pacs::core::tags::series_instance_uid, kcenon::pacs::core::tags::sop_class_uid, kcenon::pacs::core::tags::sop_instance_uid, and kcenon::pacs::core::tags::study_instance_uid.
Referenced by kcenon::pacs::services::validation::is_valid_xa_dataset().


| void kcenon::pacs::services::validation::xa_iod_validator::set_options | ( | const xa_validation_options & | options | ) |
Set validation options.
Definition at line 143 of file xa_iod_validator.cpp.
References options(), and options_.

|
nodiscard |
Validate a DICOM dataset against XA IOD.
| dataset | The dataset to validate |
Definition at line 27 of file xa_iod_validator.cpp.
References check_positioner_angles(), kcenon::pacs::services::validation::xa_validation_options::check_type1, kcenon::pacs::services::validation::xa_validation_options::check_type2, kcenon::pacs::services::validation::error, kcenon::pacs::services::validation::validation_result::findings, kcenon::pacs::services::validation::validation_result::is_valid, options_, kcenon::pacs::services::validation::xa_validation_options::strict_mode, kcenon::pacs::services::validation::xa_validation_options::validate_calibration, validate_calibration_module(), validate_general_series_module(), validate_general_study_module(), validate_image_pixel_module(), validate_patient_module(), kcenon::pacs::services::validation::xa_validation_options::validate_pixel_data, kcenon::pacs::services::validation::xa_validation_options::validate_positioner, validate_sop_common_module(), validate_xa_acquisition_module(), validate_xa_image_module(), and kcenon::pacs::services::validation::warning.
Referenced by validate_multiframe(), and kcenon::pacs::services::validation::validate_xa_iod().


|
nodiscard |
Validate calibration data for quantitative analysis.
Specifically checks if the dataset has valid calibration information suitable for QCA (Quantitative Coronary Analysis) measurements.
| dataset | The dataset to check |
Definition at line 123 of file xa_iod_validator.cpp.
References kcenon::pacs::services::validation::error, kcenon::pacs::services::validation::validation_result::findings, kcenon::pacs::services::validation::validation_result::is_valid, and validate_calibration_module().

|
private |
Definition at line 306 of file xa_iod_validator.cpp.
References kcenon::pacs::core::dicom_dataset::contains(), kcenon::pacs::services::validation::xa_tags::distance_source_to_detector, kcenon::pacs::services::validation::xa_tags::distance_source_to_patient, kcenon::pacs::services::validation::error, kcenon::pacs::core::dicom_dataset::get_numeric(), kcenon::pacs::services::validation::xa_tags::imager_pixel_spacing, and kcenon::pacs::services::validation::warning.
Referenced by validate(), and validate_calibration().


|
private |
Definition at line 183 of file xa_iod_validator.cpp.
References check_modality(), kcenon::pacs::services::validation::xa_validation_options::check_type1, check_type1_attribute(), kcenon::pacs::services::validation::xa_validation_options::check_type2, check_type2_attribute(), kcenon::pacs::core::tags::modality, options_, kcenon::pacs::core::tags::series_instance_uid, and kcenon::pacs::core::tags::series_number.
Referenced by validate().


|
private |
Definition at line 164 of file xa_iod_validator.cpp.
References kcenon::pacs::core::tags::accession_number, kcenon::pacs::services::validation::xa_validation_options::check_type1, check_type1_attribute(), kcenon::pacs::services::validation::xa_validation_options::check_type2, check_type2_attribute(), options_, kcenon::pacs::core::tags::referring_physician_name, kcenon::pacs::core::tags::study_date, kcenon::pacs::core::tags::study_id, kcenon::pacs::core::tags::study_instance_uid, and kcenon::pacs::core::tags::study_time.
Referenced by validate().


|
private |
Definition at line 245 of file xa_iod_validator.cpp.
References kcenon::pacs::core::tags::bits_allocated, kcenon::pacs::core::tags::bits_stored, check_pixel_data_consistency(), kcenon::pacs::services::validation::xa_validation_options::check_type1, check_type1_attribute(), kcenon::pacs::core::tags::columns, kcenon::pacs::core::tags::high_bit, options_, kcenon::pacs::core::tags::photometric_interpretation, kcenon::pacs::core::tags::pixel_data, kcenon::pacs::core::tags::pixel_representation, kcenon::pacs::core::tags::rows, kcenon::pacs::core::tags::samples_per_pixel, and kcenon::pacs::services::validation::xa_validation_options::validate_pixel_data.
Referenced by validate().


|
nodiscard |
Validate a multi-frame XA dataset.
Performs additional validation for multi-frame specific attributes including frame timing and per-frame calibration.
| dataset | The dataset to validate |
Definition at line 69 of file xa_iod_validator.cpp.
References kcenon::pacs::services::validation::error, validate(), and validate_multiframe_module().

|
private |
Definition at line 268 of file xa_iod_validator.cpp.
References kcenon::pacs::services::validation::xa_validation_options::check_conditional, kcenon::pacs::services::validation::xa_validation_options::check_type1, check_type1_attribute(), kcenon::pacs::services::validation::xa_tags::cine_rate, kcenon::pacs::core::dicom_dataset::contains(), kcenon::pacs::services::validation::xa_tags::frame_time, kcenon::pacs::services::validation::xa_tags::frame_time_vector, kcenon::pacs::services::validation::info, kcenon::pacs::services::validation::xa_tags::number_of_frames, options_, kcenon::pacs::services::validation::xa_tags::recommended_display_frame_rate, kcenon::pacs::services::validation::xa_validation_options::validate_multiframe_timing, and kcenon::pacs::services::validation::warning.
Referenced by validate_multiframe().


|
private |
Definition at line 151 of file xa_iod_validator.cpp.
References kcenon::pacs::services::validation::xa_validation_options::check_type2, check_type2_attribute(), options_, kcenon::pacs::core::tags::patient_birth_date, kcenon::pacs::core::tags::patient_id, kcenon::pacs::core::tags::patient_name, and kcenon::pacs::core::tags::patient_sex.
Referenced by validate().


|
private |
Definition at line 357 of file xa_iod_validator.cpp.
References kcenon::pacs::services::validation::xa_validation_options::check_type1, check_type1_attribute(), kcenon::pacs::core::dicom_dataset::contains(), kcenon::pacs::services::validation::error, kcenon::pacs::core::dicom_dataset::get_string(), kcenon::pacs::services::sop_classes::is_xa_storage_sop_class(), options_, kcenon::pacs::core::tags::sop_class_uid, and kcenon::pacs::core::tags::sop_instance_uid.
Referenced by validate().


|
private |
Definition at line 202 of file xa_iod_validator.cpp.
References kcenon::pacs::services::validation::xa_validation_options::check_conditional, kcenon::pacs::core::dicom_dataset::contains(), kcenon::pacs::services::validation::xa_tags::field_of_view_shape, kcenon::pacs::services::validation::info, options_, and kcenon::pacs::services::validation::xa_tags::positioner_motion.
Referenced by validate().


|
private |
Definition at line 232 of file xa_iod_validator.cpp.
References kcenon::pacs::services::validation::xa_validation_options::check_type1, check_type1_attribute(), check_xa_photometric(), kcenon::pacs::core::tags::image_type, and options_.
Referenced by validate().


|
private |
Definition at line 313 of file xa_iod_validator.h.
Referenced by options(), set_options(), validate(), validate_general_series_module(), validate_general_study_module(), validate_image_pixel_module(), validate_multiframe_module(), validate_patient_module(), validate_sop_common_module(), validate_xa_acquisition_module(), and validate_xa_image_module().