24 "1.2.840.10008.1.2.1",
85static constexpr std::array<waveform_sop_class_info, 17> kWaveformRegistry = {{
124std::vector<std::string>
126 bool include_annotation) {
127 std::vector<std::string> result;
128 result.reserve(kWaveformRegistry.size());
130 for (
const auto& entry : kWaveformRegistry) {
132 !include_presentation_state) {
138 result.emplace_back(entry.uid);
143const waveform_sop_class_info*
145 auto it = std::find_if(kWaveformRegistry.begin(), kWaveformRegistry.end(),
147 return info.uid == uid;
149 return (it != kWaveformRegistry.end()) ? &(*it) :
nullptr;
constexpr std::string_view general_ecg_storage_uid
General ECG Waveform Storage SOP Class UID.
constexpr std::string_view ambulatory_ecg_storage_uid
Ambulatory ECG Waveform Storage SOP Class UID.
const waveform_sop_class_info * get_waveform_sop_class_info(std::string_view uid) noexcept
Get information about a specific Waveform SOP Class.
constexpr std::string_view hemodynamic_waveform_storage_uid
Hemodynamic Waveform Storage SOP Class UID.
constexpr std::string_view arterial_pulse_waveform_storage_uid
Arterial Pulse Waveform Storage SOP Class UID.
constexpr std::string_view waveform_annotation_storage_uid
Waveform Annotation Storage SOP Class UID.
bool is_waveform_presentation_state_sop_class(std::string_view uid) noexcept
Check if a SOP Class UID is a Waveform Presentation State SOP Class.
std::vector< std::string > get_waveform_storage_sop_classes(bool include_presentation_state=true, bool include_annotation=true)
Get all Waveform Storage SOP Class UIDs.
waveform_type get_waveform_type(std::string_view uid) noexcept
Get waveform type from SOP Class UID.
constexpr std::string_view cardiac_ep_waveform_storage_uid
Basic Cardiac Electrophysiology Waveform Storage SOP Class UID.
constexpr std::string_view general_audio_waveform_storage_uid
General Audio Waveform Storage SOP Class UID.
constexpr std::string_view respiratory_waveform_storage_uid
Respiratory Waveform Storage SOP Class UID.
constexpr std::string_view twelve_lead_ecg_storage_uid
12-lead ECG Waveform Storage SOP Class UID
constexpr std::string_view sleep_eeg_storage_uid
Sleep Electroencephalogram Waveform Storage SOP Class UID.
constexpr std::string_view eog_waveform_storage_uid
Electrooculogram Waveform Storage SOP Class UID.
constexpr std::string_view waveform_presentation_state_storage_uid
Waveform Presentation State Storage SOP Class UID.
bool is_waveform_storage_sop_class(std::string_view uid) noexcept
Check if a SOP Class UID is a Waveform Storage SOP Class.
bool is_waveform_annotation_sop_class(std::string_view uid) noexcept
Check if a SOP Class UID is a Waveform Annotation SOP Class.
constexpr std::string_view body_position_waveform_storage_uid
Body Position Waveform Storage SOP Class UID.
constexpr std::string_view basic_voice_audio_storage_uid
Basic Voice Audio Waveform Storage SOP Class UID.
constexpr std::string_view emg_waveform_storage_uid
Electromyogram Waveform Storage SOP Class UID.
waveform_type
Waveform type classification.
@ audio_general
General audio.
@ cardiac_ep
Cardiac electrophysiology.
@ ecg_ambulatory
Ambulatory ECG (Holter)
@ hemodynamic
Hemodynamic monitoring.
@ annotation
Waveform Annotation.
@ ecg_general
General ECG.
@ presentation_state
Waveform Presentation State.
@ arterial_pulse
Arterial pulse waveform.
@ audio_basic
Basic voice audio.
@ unknown
Unknown waveform type.
@ respiratory
Single-channel respiratory.
@ body_position
Body position.
@ eeg_routine
Routine scalp EEG.
@ respiratory_multi
Multi-channel respiratory.
constexpr std::string_view multichannel_respiratory_waveform_storage_uid
Multi-channel Respiratory Waveform Storage SOP Class UID.
constexpr std::string_view routine_scalp_eeg_storage_uid
Routine Scalp Electroencephalogram Waveform Storage SOP Class UID.
std::string_view to_string(dx_photometric_interpretation interp) noexcept
Convert photometric interpretation enum to DICOM string.
std::vector< std::string > get_waveform_transfer_syntaxes()
Get recommended transfer syntaxes for waveform objects.