PACS System 0.1.0
PACS DICOM system library
Loading...
Searching...
No Matches
console_utils.h File Reference

Console output utilities for developer samples. More...

#include <kcenon/pacs/core/dicom_dataset.h>
#include <string>
#include <string_view>
#include <vector>
Include dependency graph for console_utils.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

namespace  kcenon
 
namespace  kcenon::pacs
 
namespace  kcenon::pacs::samples
 
namespace  kcenon::pacs::samples::colors
 ANSI escape codes for terminal colors.
 

Functions

auto kcenon::pacs::samples::supports_color () noexcept -> bool
 Check if the terminal supports ANSI colors.
 
void kcenon::pacs::samples::set_color_enabled (bool enabled)
 Enable or disable color output globally.
 
auto kcenon::pacs::samples::is_color_enabled () noexcept -> bool
 Check if colors are currently enabled.
 
void kcenon::pacs::samples::print_header (std::string_view title)
 Print a header/title with decorative border.
 
void kcenon::pacs::samples::print_section (std::string_view title)
 Print a section header.
 
void kcenon::pacs::samples::print_success (std::string_view message)
 Print a success message.
 
void kcenon::pacs::samples::print_error (std::string_view message)
 Print an error message.
 
void kcenon::pacs::samples::print_warning (std::string_view message)
 Print a warning message.
 
void kcenon::pacs::samples::print_info (std::string_view message)
 Print an informational message.
 
void kcenon::pacs::samples::print_debug (std::string_view message)
 Print a debug message.
 
void kcenon::pacs::samples::print_dataset_summary (const core::dicom_dataset &ds)
 Print a summary of a DICOM dataset.
 
void kcenon::pacs::samples::print_dataset_elements (const core::dicom_dataset &ds, size_t max_value_length=60)
 Print all elements in a DICOM dataset.
 
void kcenon::pacs::samples::print_box (const std::vector< std::string > &lines)
 Print text in a decorative box.
 
void kcenon::pacs::samples::print_table (std::string_view title, const std::vector< std::pair< std::string, std::string > > &rows)
 Print a key-value table.
 
void kcenon::pacs::samples::print_progress (size_t current, size_t total, int width=40, std::string_view label="Progress")
 Print a progress bar.
 
void kcenon::pacs::samples::clear_line ()
 Clear the current line (for updating progress)
 
auto kcenon::pacs::samples::format_bytes (uint64_t bytes) -> std::string
 Format a byte size for human-readable display.
 
auto kcenon::pacs::samples::format_duration (uint64_t milliseconds) -> std::string
 Format a duration in milliseconds.
 
auto kcenon::pacs::samples::center_text (std::string_view text, size_t width) -> std::string
 Center a string within a given width.
 
auto kcenon::pacs::samples::truncate (std::string_view text, size_t max_length, std::string_view suffix="...") -> std::string
 Truncate a string to a maximum length.
 

Variables

constexpr const char * kcenon::pacs::samples::colors::reset = "\033[0m"
 Reset all formatting.
 
constexpr const char * kcenon::pacs::samples::colors::bold = "\033[1m"
 Bold text.
 
constexpr const char * kcenon::pacs::samples::colors::dim = "\033[2m"
 Dim/faint text.
 
constexpr const char * kcenon::pacs::samples::colors::black = "\033[30m"
 Standard colors.
 
constexpr const char * kcenon::pacs::samples::colors::red = "\033[31m"
 
constexpr const char * kcenon::pacs::samples::colors::green = "\033[32m"
 
constexpr const char * kcenon::pacs::samples::colors::yellow = "\033[33m"
 
constexpr const char * kcenon::pacs::samples::colors::blue = "\033[34m"
 
constexpr const char * kcenon::pacs::samples::colors::magenta = "\033[35m"
 
constexpr const char * kcenon::pacs::samples::colors::cyan = "\033[36m"
 
constexpr const char * kcenon::pacs::samples::colors::white = "\033[37m"
 
constexpr const char * kcenon::pacs::samples::colors::bright_red = "\033[91m"
 Bright/bold colors.
 
constexpr const char * kcenon::pacs::samples::colors::bright_green = "\033[92m"
 
constexpr const char * kcenon::pacs::samples::colors::bright_yellow = "\033[93m"
 
constexpr const char * kcenon::pacs::samples::colors::bright_blue = "\033[94m"
 
constexpr const char * kcenon::pacs::samples::colors::bright_magenta = "\033[95m"
 
constexpr const char * kcenon::pacs::samples::colors::bright_cyan = "\033[96m"
 
constexpr const char * kcenon::pacs::samples::colors::bright_white = "\033[97m"
 
constexpr const char * kcenon::pacs::samples::colors::bg_red = "\033[41m"
 Background colors.
 
constexpr const char * kcenon::pacs::samples::colors::bg_green = "\033[42m"
 
constexpr const char * kcenon::pacs::samples::colors::bg_yellow = "\033[43m"
 
constexpr const char * kcenon::pacs::samples::colors::bg_blue = "\033[44m"
 

Detailed Description

Console output utilities for developer samples.

This file provides utilities for formatted console output with ANSI color support and pretty-printing of DICOM data.

Definition in file console_utils.h.