PACS System 0.1.0
PACS DICOM system library
Loading...
Searching...
No Matches
tag_action.cpp
Go to the documentation of this file.
1// BSD 3-Clause License
2// Copyright (c) 2021-2025, 🍀☀🌕🌥 🌊
3// See the LICENSE file in the project root for full license information.
4
14
16
17using namespace kcenon::pacs::core;
18
29
30auto get_geographic_tags() -> std::vector<dicom_tag> {
31 return {
36 };
37}
38
52
53auto get_communication_tags() -> std::vector<dicom_tag> {
54 // Phone, fax, email - not typically in standard DICOM tags
55 // These would be in private tags or extended attributes
56 return {};
57}
58
70
71auto get_all_identifier_tags() -> std::vector<dicom_tag> {
72 std::vector<dicom_tag> all_tags;
73
74 auto names = get_name_tags();
75 auto geo = get_geographic_tags();
76 auto dates = get_date_tags();
77 auto comm = get_communication_tags();
78 auto ids = get_unique_id_tags();
79
80 all_tags.reserve(names.size() + geo.size() + dates.size() +
81 comm.size() + ids.size());
82
83 all_tags.insert(all_tags.end(), names.begin(), names.end());
84 all_tags.insert(all_tags.end(), geo.begin(), geo.end());
85 all_tags.insert(all_tags.end(), dates.begin(), dates.end());
86 all_tags.insert(all_tags.end(), comm.begin(), comm.end());
87 all_tags.insert(all_tags.end(), ids.begin(), ids.end());
88
89 return all_tags;
90}
91
92} // namespace kcenon::pacs::security::hipaa_identifiers
Compile-time constants for commonly used DICOM tags.
constexpr dicom_tag referring_physician_name
Referring Physician's Name.
constexpr dicom_tag issuer_of_patient_id
Issuer of Patient ID.
constexpr dicom_tag institution_name
Institution Name.
constexpr dicom_tag institution_address
Institution Address.
constexpr dicom_tag name_of_physicians_reading_study
Name of Physician(s) Reading Study.
constexpr dicom_tag patient_id
Patient ID.
constexpr dicom_tag scheduled_procedure_step_start_date
Scheduled Procedure Step Start Date.
constexpr dicom_tag patient_address
Patient's Address.
constexpr dicom_tag acquisition_date
Acquisition Date.
constexpr dicom_tag patient_birth_date
Patient's Birth Date.
constexpr dicom_tag scheduled_performing_physician_name
Scheduled Performing Physician's Name.
constexpr dicom_tag performed_procedure_step_id
Performed Procedure Step ID.
constexpr dicom_tag accession_number
Accession Number.
constexpr dicom_tag performed_procedure_step_start_date
Performed Procedure Step Start Date.
constexpr dicom_tag series_date
Series Date.
constexpr dicom_tag station_name
Station Name.
constexpr dicom_tag scheduled_procedure_step_end_date
Scheduled Procedure Step End Date.
constexpr dicom_tag operators_name
Operators' Name.
constexpr dicom_tag performing_physician_name
Performing Physician's Name.
constexpr dicom_tag instance_creation_date
Instance Creation Date.
constexpr dicom_tag content_date
Content Date.
constexpr dicom_tag requested_procedure_id
Requested Procedure ID.
constexpr dicom_tag study_id
Study ID.
constexpr dicom_tag patient_name
Patient's Name.
constexpr dicom_tag study_date
Study Date.
constexpr dicom_tag scheduled_procedure_step_id
Scheduled Procedure Step ID.
HIPAA Safe Harbor identifiers (18 categories)
Definition tag_action.h:302
auto get_all_identifier_tags() -> std::vector< core::dicom_tag >
Get all HIPAA identifier tags.
auto get_name_tags() -> std::vector< core::dicom_tag >
Tags containing names.
auto get_unique_id_tags() -> std::vector< core::dicom_tag >
Tags containing unique identifiers.
auto get_date_tags() -> std::vector< core::dicom_tag >
Tags containing dates (except year)
auto get_communication_tags() -> std::vector< core::dicom_tag >
Tags containing communication identifiers.
auto get_geographic_tags() -> std::vector< core::dicom_tag >
Tags containing geographic identifiers.
Tag action definitions for DICOM de-identification.