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

Measurement record from the database. More...

#include <measurement_record.h>

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

Public Member Functions

auto is_valid () const noexcept -> bool
 Check if this record has valid data.
 

Public Attributes

int64_t pk {0}
 Primary key (auto-generated)
 
std::string measurement_id
 Unique measurement identifier (UUID)
 
std::string sop_instance_uid
 SOP Instance UID - DICOM tag (0008,0018)
 
std::optional< int > frame_number
 Frame number for multi-frame images (1-based)
 
std::string user_id
 User who created the measurement.
 
measurement_type type {measurement_type::length}
 Type of measurement.
 
std::string geometry_json
 Geometry data as JSON string (coordinates)
 
double value {0.0}
 Calculated measurement value.
 
std::string unit
 Unit of measurement (mm, cm2, degrees, HU, g/ml, etc.)
 
std::string label
 Optional label/description.
 
std::chrono::system_clock::time_point created_at
 Record creation timestamp.
 

Detailed Description

Measurement record from the database.

Represents a single measurement on a DICOM image. Maps directly to the measurements table in the database.

Definition at line 76 of file measurement_record.h.

Member Function Documentation

◆ is_valid()

auto kcenon::pacs::storage::measurement_record::is_valid ( ) const -> bool
inlinenodiscardnoexcept

Check if this record has valid data.

Returns
true if measurement_id and sop_instance_uid are not empty
Examples
/home/runner/work/pacs_system/pacs_system/include/kcenon/pacs/storage/measurement_record.h.

Definition at line 115 of file measurement_record.h.

115 {
116 return !measurement_id.empty() && !sop_instance_uid.empty();
117 }
std::string measurement_id
Unique measurement identifier (UUID)
std::string sop_instance_uid
SOP Instance UID - DICOM tag (0008,0018)

References measurement_id, and sop_instance_uid.

Member Data Documentation

◆ created_at

std::chrono::system_clock::time_point kcenon::pacs::storage::measurement_record::created_at

◆ frame_number

std::optional<int> kcenon::pacs::storage::measurement_record::frame_number

◆ geometry_json

std::string kcenon::pacs::storage::measurement_record::geometry_json

◆ label

std::string kcenon::pacs::storage::measurement_record::label

◆ measurement_id

std::string kcenon::pacs::storage::measurement_record::measurement_id

◆ pk

int64_t kcenon::pacs::storage::measurement_record::pk {0}

Primary key (auto-generated)

Examples
/home/runner/work/pacs_system/pacs_system/include/kcenon/pacs/storage/measurement_record.h.

Definition at line 78 of file measurement_record.h.

78{0};

◆ sop_instance_uid

std::string kcenon::pacs::storage::measurement_record::sop_instance_uid

◆ type

◆ unit

std::string kcenon::pacs::storage::measurement_record::unit

◆ user_id

std::string kcenon::pacs::storage::measurement_record::user_id

◆ value

double kcenon::pacs::storage::measurement_record::value {0.0}

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