|
PACS System 0.1.0
PACS DICOM system library
|
Configuration for S3-compatible cloud storage. More...
#include <s3_storage.h>

Public Attributes | |
| std::string | bucket_name |
| S3 bucket name for storing DICOM files. | |
| std::string | region {"us-east-1"} |
| AWS region (e.g., "us-east-1", "eu-west-1") | |
| std::string | access_key_id |
| AWS access key ID for authentication. | |
| std::string | secret_access_key |
| AWS secret access key for authentication. | |
| std::optional< std::string > | endpoint_url |
| Optional custom endpoint URL for MinIO or S3-compatible services If empty, uses the default AWS S3 endpoint. | |
| std::size_t | multipart_threshold = 100 * 1024 * 1024 |
| Threshold for multipart upload in bytes (default: 100MB) Files larger than this will use multipart upload. | |
| std::size_t | part_size = 10 * 1024 * 1024 |
| Part size for multipart upload in bytes (default: 10MB) | |
| std::size_t | max_connections = 25 |
| Maximum number of concurrent upload connections. | |
| std::uint32_t | connect_timeout_ms = 3000 |
| Connection timeout in milliseconds. | |
| std::uint32_t | request_timeout_ms = 30000 |
| Request timeout in milliseconds. | |
| bool | enable_encryption = false |
| Enable server-side encryption (SSE-S3) | |
| std::string | storage_class {"STANDARD"} |
| Storage class for S3 objects (STANDARD, INTELLIGENT_TIERING, etc.) | |
Configuration for S3-compatible cloud storage.
Contains all settings needed to connect to an S3-compatible storage service. Supports AWS S3, MinIO, and other S3-compatible services via endpoint_url.
Definition at line 41 of file s3_storage.h.
| std::string kcenon::pacs::storage::cloud_storage_config::access_key_id |
AWS access key ID for authentication.
Definition at line 49 of file s3_storage.h.
| std::string kcenon::pacs::storage::cloud_storage_config::bucket_name |
S3 bucket name for storing DICOM files.
Definition at line 43 of file s3_storage.h.
Referenced by kcenon::pacs::storage::s3_storage::bucket_name().
| std::uint32_t kcenon::pacs::storage::cloud_storage_config::connect_timeout_ms = 3000 |
Connection timeout in milliseconds.
Definition at line 69 of file s3_storage.h.
| bool kcenon::pacs::storage::cloud_storage_config::enable_encryption = false |
Enable server-side encryption (SSE-S3)
Definition at line 75 of file s3_storage.h.
| std::optional<std::string> kcenon::pacs::storage::cloud_storage_config::endpoint_url |
Optional custom endpoint URL for MinIO or S3-compatible services If empty, uses the default AWS S3 endpoint.
Definition at line 56 of file s3_storage.h.
| std::size_t kcenon::pacs::storage::cloud_storage_config::max_connections = 25 |
Maximum number of concurrent upload connections.
Definition at line 66 of file s3_storage.h.
| std::size_t kcenon::pacs::storage::cloud_storage_config::multipart_threshold = 100 * 1024 * 1024 |
Threshold for multipart upload in bytes (default: 100MB) Files larger than this will use multipart upload.
Definition at line 60 of file s3_storage.h.
| std::size_t kcenon::pacs::storage::cloud_storage_config::part_size = 10 * 1024 * 1024 |
Part size for multipart upload in bytes (default: 10MB)
Definition at line 63 of file s3_storage.h.
| std::string kcenon::pacs::storage::cloud_storage_config::region {"us-east-1"} |
AWS region (e.g., "us-east-1", "eu-west-1")
Definition at line 46 of file s3_storage.h.
| std::uint32_t kcenon::pacs::storage::cloud_storage_config::request_timeout_ms = 30000 |
Request timeout in milliseconds.
Definition at line 72 of file s3_storage.h.
| std::string kcenon::pacs::storage::cloud_storage_config::secret_access_key |
AWS secret access key for authentication.
Definition at line 52 of file s3_storage.h.
| std::string kcenon::pacs::storage::cloud_storage_config::storage_class {"STANDARD"} |
Storage class for S3 objects (STANDARD, INTELLIGENT_TIERING, etc.)
Definition at line 78 of file s3_storage.h.