PACS System 0.1.0
PACS DICOM system library
Loading...
Searching...
No Matches
kcenon::pacs::storage::measurement_query Struct Reference

Query parameters for measurement search. More...

#include <measurement_record.h>

Collaboration diagram for kcenon::pacs::storage::measurement_query:
Collaboration graph

Public Member Functions

auto has_criteria () const noexcept -> bool
 Check if any filter criteria is set.
 

Public Attributes

std::optional< std::string > sop_instance_uid
 SOP Instance UID filter.
 
std::optional< std::string > study_uid
 Study Instance UID filter (requires join with instances)
 
std::optional< std::string > user_id
 User ID filter.
 
std::optional< measurement_type > type
 Measurement type filter.
 
size_t limit {0}
 Maximum number of results to return (0 = unlimited)
 
size_t offset {0}
 Offset for pagination.
 

Detailed Description

Query parameters for measurement search.

Supports filtering by instance, study (via instance), user, and type. Empty fields are not included in the query filter.

Example:
query.sop_instance_uid = "1.2.3.4.5.6";
auto results = repo.search(query);
@ length
Linear distance measurement.
Query parameters for measurement search.

Definition at line 134 of file measurement_record.h.

Member Function Documentation

◆ has_criteria()

auto kcenon::pacs::storage::measurement_query::has_criteria ( ) const -> bool
inlinenodiscardnoexcept

Check if any filter criteria is set.

Returns
true if at least one filter field is set

Definition at line 158 of file measurement_record.h.

158 {
159 return sop_instance_uid.has_value() || study_uid.has_value() ||
160 user_id.has_value() || type.has_value();
161 }
std::optional< std::string > sop_instance_uid
SOP Instance UID filter.
std::optional< std::string > study_uid
Study Instance UID filter (requires join with instances)
std::optional< measurement_type > type
Measurement type filter.
std::optional< std::string > user_id
User ID filter.

References sop_instance_uid, study_uid, type, and user_id.

Member Data Documentation

◆ limit

size_t kcenon::pacs::storage::measurement_query::limit {0}

Maximum number of results to return (0 = unlimited)

Definition at line 148 of file measurement_record.h.

148{0};

Referenced by kcenon::pacs::web::endpoints::register_measurement_endpoints_impl().

◆ offset

size_t kcenon::pacs::storage::measurement_query::offset {0}

Offset for pagination.

Definition at line 151 of file measurement_record.h.

151{0};

Referenced by kcenon::pacs::web::endpoints::register_measurement_endpoints_impl().

◆ sop_instance_uid

std::optional<std::string> kcenon::pacs::storage::measurement_query::sop_instance_uid

SOP Instance UID filter.

Definition at line 136 of file measurement_record.h.

Referenced by has_criteria().

◆ study_uid

std::optional<std::string> kcenon::pacs::storage::measurement_query::study_uid

Study Instance UID filter (requires join with instances)

Definition at line 139 of file measurement_record.h.

Referenced by has_criteria().

◆ type

std::optional<measurement_type> kcenon::pacs::storage::measurement_query::type

Measurement type filter.

Definition at line 145 of file measurement_record.h.

Referenced by has_criteria().

◆ user_id

std::optional<std::string> kcenon::pacs::storage::measurement_query::user_id

User ID filter.

Definition at line 142 of file measurement_record.h.

Referenced by has_criteria().


The documentation for this struct was generated from the following file: