PACS System 0.1.0
PACS DICOM system library
Loading...
Searching...
No Matches
dicomweb_endpoints.cpp File Reference

DICOMweb (WADO-RS) API endpoints implementation. More...

Include dependency graph for dicomweb_endpoints.cpp:

Go to the source code of this file.

Namespaces

namespace  kcenon
 
namespace  kcenon::pacs
 
namespace  kcenon::pacs::web
 
namespace  kcenon::pacs::web::dicomweb
 
namespace  kcenon::pacs::web::endpoints
 

Functions

auto kcenon::pacs::web::dicomweb::parse_accept_header (std::string_view accept_header) -> std::vector< accept_info >
 Parse Accept header into structured format.
 
auto kcenon::pacs::web::dicomweb::is_acceptable (const std::vector< accept_info > &accept_infos, std::string_view media_type) -> bool
 Check if a media type is acceptable based on Accept header.
 
auto kcenon::pacs::web::dicomweb::is_bulk_data_tag (uint32_t tag) -> bool
 Check if a DICOM tag contains bulk data.
 
auto kcenon::pacs::web::dicomweb::vr_to_string (uint16_t vr_code) -> std::string
 Convert a VR type code to DicomJSON VR string.
 
auto kcenon::pacs::web::dicomweb::validate_instance (const core::dicom_dataset &dataset, std::optional< std::string_view > target_study_uid=std::nullopt) -> validation_result
 Validate a DICOM instance for STOW-RS storage.
 
auto kcenon::pacs::web::dicomweb::build_store_response_json (const store_response &response, std::string_view base_url) -> std::string
 Build STOW-RS response in DicomJSON format.
 
auto kcenon::pacs::web::dicomweb::dataset_to_dicom_json (const core::dicom_dataset &dataset, bool include_bulk_data=false, std::string_view bulk_data_uri_prefix="") -> std::string
 Convert a DICOM dataset to DicomJSON format.
 
auto kcenon::pacs::web::dicomweb::study_record_to_dicom_json (const storage::study_record &record, std::string_view patient_id, std::string_view patient_name) -> std::string
 Convert a study record to DicomJSON format for QIDO-RS response.
 
auto kcenon::pacs::web::dicomweb::series_record_to_dicom_json (const storage::series_record &record, std::string_view study_uid) -> std::string
 Convert a series record to DicomJSON format for QIDO-RS response.
 
auto kcenon::pacs::web::dicomweb::instance_record_to_dicom_json (const storage::instance_record &record, std::string_view series_uid, std::string_view study_uid) -> std::string
 Convert an instance record to DicomJSON format for QIDO-RS response.
 
auto kcenon::pacs::web::dicomweb::parse_study_query_params (const std::string &url_params) -> storage::study_query
 Parse QIDO-RS query parameters from HTTP request.
 
auto kcenon::pacs::web::dicomweb::parse_series_query_params (const std::string &url_params) -> storage::series_query
 Parse QIDO-RS series query parameters from HTTP request.
 
auto kcenon::pacs::web::dicomweb::parse_instance_query_params (const std::string &url_params) -> storage::instance_query
 Parse QIDO-RS instance query parameters from HTTP request.
 
auto kcenon::pacs::web::dicomweb::parse_frame_numbers (std::string_view frame_list) -> std::vector< uint32_t >
 Parse frame numbers from URL path.
 
auto kcenon::pacs::web::dicomweb::extract_frame (std::span< const uint8_t > pixel_data, uint32_t frame_number, size_t frame_size) -> std::vector< uint8_t >
 Extract a single frame from pixel data.
 
auto kcenon::pacs::web::dicomweb::parse_rendered_params (std::string_view query_string, std::string_view accept_header) -> rendered_params
 Parse rendered image parameters from HTTP request.
 
auto kcenon::pacs::web::dicomweb::apply_window_level (std::span< const uint8_t > pixel_data, uint16_t width, uint16_t height, uint16_t bits_stored, bool is_signed, double window_center, double window_width, double rescale_slope=1.0, double rescale_intercept=0.0) -> std::vector< uint8_t >
 Apply window/level transformation to pixel data.
 
auto kcenon::pacs::web::dicomweb::render_dicom_image (std::string_view file_path, const rendered_params &params) -> rendered_result
 Render a DICOM image to JPEG or PNG.
 
void kcenon::pacs::web::endpoints::register_dicomweb_endpoints_impl (crow::SimpleApp &app, std::shared_ptr< rest_server_context > ctx)
 

Detailed Description

DICOMweb (WADO-RS) API endpoints implementation.

Definition in file dicomweb_endpoints.cpp.