12#ifndef QUERY_SCU_QUERY_BUILDER_HPP
13#define QUERY_SCU_QUERY_BUILDER_HPP
233 ds.set_string(tags::query_retrieve_level, vr_type::CS,
238 case query_level::patient:
241 case query_level::study:
245 case query_level::series:
250 case query_level::image:
276 ds.
set_string(tags::patient_birth_date, vr_type::DA,
"");
283 ds.
set_string(tags::patient_sex, vr_type::CS,
"");
301 ds.
set_string(tags::study_time, vr_type::TM,
"");
311 ds.
set_string(tags::study_id, vr_type::SH,
"");
318 ds.
set_string(tags::referring_physician_name, vr_type::PN,
"");
321 ds.
set_string(tags::number_of_study_related_series, vr_type::IS,
"");
324 ds.
set_string(tags::number_of_study_related_instances, vr_type::IS,
"");
344 ds.
set_string(tags::series_number, vr_type::IS,
"");
351 ds.
set_string(tags::number_of_series_related_instances, vr_type::IS,
"");
362 ds.
set_string(tags::sop_class_uid, vr_type::UI,
"");
368 ds.
set_string(tags::instance_number, vr_type::IS,
"");
void set_string(dicom_tag tag, encoding::vr_type vr, std::string_view value)
Set a string value for the given tag.
query_builder & modality(std::string_view mod)
Set modality criteria.
std::string study_instance_uid_
std::string accession_number_
query_builder & patient_birth_date(std::string_view date)
Set patient birth date criteria.
void add_instance_keys(kcenon::pacs::core::dicom_dataset &ds) const
query_builder & study_date(std::string_view date)
Set study date criteria (supports ranges)
query_builder & study_instance_uid(std::string_view uid)
Set study instance UID criteria.
void add_study_keys(kcenon::pacs::core::dicom_dataset &ds) const
query_builder & study_id(std::string_view id)
Set study ID criteria.
void add_series_keys(kcenon::pacs::core::dicom_dataset &ds) const
query_builder & sop_instance_uid(std::string_view uid)
Set SOP instance UID criteria.
query_builder & patient_sex(std::string_view sex)
Set patient sex criteria.
query_builder & series_number(std::string_view num)
Set series number criteria.
std::string series_description_
std::string sop_instance_uid_
query_builder & patient_name(std::string_view name)
Set patient name search criteria (supports wildcards)
query_builder & series_instance_uid(std::string_view uid)
Set series instance UID criteria.
query_builder & accession_number(std::string_view accession)
Set accession number criteria.
query_builder & patient_id(std::string_view id)
Set patient ID search criteria.
std::string series_instance_uid_
kcenon::pacs::core::dicom_dataset build() const
Build the query dataset.
std::string study_description_
query_builder & study_description(std::string_view desc)
Set study description criteria.
std::string patient_name_
query_builder & study_time(std::string_view time)
Set study time criteria.
query_builder & series_description(std::string_view desc)
Set series description criteria.
std::string series_number_
query_builder & instance_number(std::string_view num)
Set instance number criteria.
std::string patient_birth_date_
std::string instance_number_
query_builder & level(query_level lvl)
Set the query/retrieve level.
void add_patient_keys(kcenon::pacs::core::dicom_dataset &ds) const
DICOM Dataset - ordered collection of Data Elements.
Compile-time constants for commonly used DICOM tags.
auto to_string(mpps_status status) -> std::string_view
Convert mpps_status to DICOM string representation.
query_level
DICOM Query/Retrieve level enumeration.
DICOM Query SCP service (C-FIND handler)