63 -> std::optional<annotation_type> {
139 [[nodiscard]]
auto is_valid() const noexcept ->
bool {
172 std::optional<annotation_type>
type;
auto annotation_type_from_string(std::string_view str) -> std::optional< annotation_type >
Parse string to annotation_type.
auto to_string(annotation_type type) -> std::string
Convert annotation_type to string.
annotation_type
Annotation types supported by the system.
@ ellipse
Ellipse/oval shape.
@ angle
Angle measurement annotation.
@ rectangle
Rectangle shape.
@ freehand
Freehand drawing.
@ polygon
Multi-point polygon.
auto has_criteria() const noexcept -> bool
Check if any filter criteria is set.
std::optional< std::string > series_uid
Series Instance UID filter.
std::optional< std::string > user_id
User ID filter.
std::optional< std::string > sop_instance_uid
SOP Instance UID filter.
size_t limit
Maximum number of results to return (0 = unlimited)
std::optional< annotation_type > type
Annotation type filter.
size_t offset
Offset for pagination.
std::optional< std::string > study_uid
Study Instance UID filter.
Annotation record from the database.
std::string annotation_id
Unique annotation identifier (UUID)
annotation_type type
Type of annotation.
int64_t pk
Primary key (auto-generated)
std::optional< int > frame_number
Frame number for multi-frame images (1-based)
std::string text
Text content for text annotations or labels.
std::string series_uid
Series Instance UID - DICOM tag (0020,000E)
std::string study_uid
Study Instance UID - DICOM tag (0020,000D)
annotation_style style
Visual style of the annotation.
std::chrono::system_clock::time_point created_at
Record creation timestamp.
std::chrono::system_clock::time_point updated_at
Record last update timestamp.
std::string sop_instance_uid
SOP Instance UID - DICOM tag (0008,0018)
std::string geometry_json
Geometry data as JSON string (type-specific coordinates)
std::string user_id
User who created the annotation.
auto is_valid() const noexcept -> bool
Check if this record has valid data.
Style information for annotations.
int font_size
Font size in pixels.
int line_width
Line width in pixels.
float fill_opacity
Fill opacity (0.0-1.0)
std::string font_family
Font family for text.
std::string fill_color
Fill color (hex), empty for no fill.
std::string color
Stroke/line color (hex)