18#ifndef PACS_SERVICES_VALIDATION_SR_IOD_VALIDATOR_HPP
19#define PACS_SERVICES_VALIDATION_SR_IOD_VALIDATOR_HPP
260 std::string_view parent_value_type,
265 std::string_view context,
297 std::string_view
name,
303 std::string_view
name,
void validate_image_content_item(const core::dicom_dataset &item, std::vector< validation_finding > &findings) const
sr_iod_validator()=default
Construct validator with default options.
const sr_validation_options & options() const noexcept
Get the validation options.
void check_verification_flag(const core::dicom_dataset &dataset, std::vector< validation_finding > &findings) const
void validate_num_content_item(const core::dicom_dataset &item, std::vector< validation_finding > &findings) const
validation_result validate(const core::dicom_dataset &dataset) const
Validate a DICOM dataset against SR IOD.
void validate_coded_entry(const core::dicom_dataset &coded_entry, std::string_view context, std::vector< validation_finding > &findings) const
validation_result validate_key_object_selection(const core::dicom_dataset &dataset) const
Validate a Key Object Selection document.
void validate_text_content_item(const core::dicom_dataset &item, std::vector< validation_finding > &findings) const
void set_options(const sr_validation_options &options)
Set validation options.
void validate_evidence_sequences(const core::dicom_dataset &dataset, std::vector< validation_finding > &findings) const
void check_type2_attribute(const core::dicom_dataset &dataset, core::dicom_tag tag, std::string_view name, std::vector< validation_finding > &findings) const
void validate_scoord_content_item(const core::dicom_dataset &item, std::vector< validation_finding > &findings) const
bool quick_check(const core::dicom_dataset &dataset) const
Quick check if dataset has minimum required attributes.
void check_modality(const core::dicom_dataset &dataset, std::vector< validation_finding > &findings) const
validation_result validate_content_tree(const core::dicom_dataset &dataset) const
Validate content tree structure.
void validate_patient_module(const core::dicom_dataset &dataset, std::vector< validation_finding > &findings) const
void validate_content_item(const core::dicom_dataset &item, size_t depth, std::string_view parent_value_type, std::vector< validation_finding > &findings) const
void validate_code_content_item(const core::dicom_dataset &item, std::vector< validation_finding > &findings) const
void validate_scoord3d_content_item(const core::dicom_dataset &item, std::vector< validation_finding > &findings) const
void validate_sop_common_module(const core::dicom_dataset &dataset, std::vector< validation_finding > &findings) const
validation_result validate_basic_text_sr(const core::dicom_dataset &dataset) const
Validate a Basic Text SR dataset.
void validate_content_sequence(const core::dicom_dataset &dataset, std::vector< validation_finding > &findings) const
void check_completion_flag(const core::dicom_dataset &dataset, std::vector< validation_finding > &findings) const
void validate_sr_document_general_module(const core::dicom_dataset &dataset, std::vector< validation_finding > &findings) const
validation_result validate_comprehensive_sr(const core::dicom_dataset &dataset) const
Validate a Comprehensive SR dataset.
void validate_sr_document_content_module(const core::dicom_dataset &dataset, std::vector< validation_finding > &findings) const
void validate_general_study_module(const core::dicom_dataset &dataset, std::vector< validation_finding > &findings) const
validation_result validate_references(const core::dicom_dataset &dataset) const
Validate referenced instances.
void validate_sr_document_series_module(const core::dicom_dataset &dataset, std::vector< validation_finding > &findings) const
validation_result validate_enhanced_sr(const core::dicom_dataset &dataset) const
Validate an Enhanced SR dataset.
void check_type1_attribute(const core::dicom_dataset &dataset, core::dicom_tag tag, std::string_view name, std::vector< validation_finding > &findings) const
void validate_general_equipment_module(const core::dicom_dataset &dataset, std::vector< validation_finding > &findings) const
sr_validation_options options_
DICOM Dataset - ordered collection of Data Elements.
DICOM Tag representation (Group, Element pairs)
size_t get_content_item_count(const core::dicom_dataset &dataset)
Get content item count from dataset.
bool is_sr_complete(const core::dicom_dataset &dataset)
Check if SR document is complete.
validation_result validate_sr_iod(const core::dicom_dataset &dataset)
Validate an SR dataset with default options.
bool is_sr_verified(const core::dicom_dataset &dataset)
Check if SR document is verified.
std::string get_sr_document_title(const core::dicom_dataset &dataset)
Get SR document title from Concept Name Code Sequence.
bool is_valid_sr_dataset(const core::dicom_dataset &dataset)
Quick check if a dataset is a valid SR document.
Options for SR IOD validation.
bool validate_key_object_selection
Allow Key Object Selection document specific validation.
bool check_conditional
Check Type 1C/2C (conditionally required) attributes.
bool validate_coded_entries
Validate coded entries (concept name codes, etc.)
bool validate_template_id
Validate template identification if present.
bool strict_mode
Strict mode - treat warnings as errors.
bool validate_value_types
Validate content item value types.
bool check_type1
Check Type 1 (required) attributes.
bool validate_references
Validate referenced SOP instances.
bool validate_content_sequence
Validate Content Sequence structure.
bool validate_document_status
Validate completion and verification flags.
bool check_type2
Check Type 2 (required, can be empty) attributes.
bool validate_relationships
Validate relationship types between content items.
Single validation finding.
Result of IOD validation.
Ultrasound Image IOD Validator.