CaptureMoment 0.1.0
Free and open-source non-destructive photo editor
Loading...
Searching...
No Matches
raw_settings.h File Reference

Comprehensive RAW development settings with runtime configuration. More...

#include <string>
#include <array>
#include <magic_enum/magic_enum.hpp>
+ Include dependency graph for raw_settings.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  CaptureMoment::Core::ImageConfig::Raw::RawSettings
 Complete configuration for RAW image development via OIIO/LibRaw. This struct encapsulates all RAW processing parameters with sensible defaults optimized for quality. Parameters can be modified at runtime via setters. More...
 

Namespaces

namespace  CaptureMoment
 
namespace  CaptureMoment::Core
 Manages the lifecycle of a single IWorkingImage instance.
 
namespace  CaptureMoment::Core::ImageConfig
 
namespace  CaptureMoment::Core::ImageConfig::Raw
 Namespace for RAW-specific configuration settings.
 

Enumerations

enum class  CaptureMoment::Core::ImageConfig::Raw::HighlightMode : std::uint8_t { CaptureMoment::Core::ImageConfig::Raw::clip = 0 , CaptureMoment::Core::ImageConfig::Raw::unclip = 1 , CaptureMoment::Core::ImageConfig::Raw::blend = 2 , CaptureMoment::Core::ImageConfig::Raw::rebuild = 3 }
 Controls how overexposed/clipped highlights are handled during RAW development. When sensor channels saturate at different levels, highlights can take on unnatural color casts. The highlight mode determines how these clipped values are reconstructed or blended. More...
 
enum class  CaptureMoment::Core::ImageConfig::Raw::DemosaicAlgorithm : std::uint8_t {
  CaptureMoment::Core::ImageConfig::Raw::linear , CaptureMoment::Core::ImageConfig::Raw::vng , CaptureMoment::Core::ImageConfig::Raw::ppg , CaptureMoment::Core::ImageConfig::Raw::ahd ,
  CaptureMoment::Core::ImageConfig::Raw::dcb , CaptureMoment::Core::ImageConfig::Raw::ahd_mod , CaptureMoment::Core::ImageConfig::Raw::afd , CaptureMoment::Core::ImageConfig::Raw::vcd ,
  CaptureMoment::Core::ImageConfig::Raw::mixed , CaptureMoment::Core::ImageConfig::Raw::lmmse , CaptureMoment::Core::ImageConfig::Raw::amaze , CaptureMoment::Core::ImageConfig::Raw::dht ,
  CaptureMoment::Core::ImageConfig::Raw::aahd , CaptureMoment::Core::ImageConfig::Raw::none
}
 Demosaicing algorithms for converting Bayer pattern RAW data to RGB. Demosaicing is the process of interpolating missing color values from the Bayer filter pattern. Quality vs speed trade-offs exist between algorithms. More...
 
enum class  CaptureMoment::Core::ImageConfig::Raw::RawColorSpace : std::uint8_t {
  CaptureMoment::Core::ImageConfig::Raw::raw , CaptureMoment::Core::ImageConfig::Raw::srgb , CaptureMoment::Core::ImageConfig::Raw::srgb_linear , CaptureMoment::Core::ImageConfig::Raw::adobe ,
  CaptureMoment::Core::ImageConfig::Raw::wide , CaptureMoment::Core::ImageConfig::Raw::prophoto , CaptureMoment::Core::ImageConfig::Raw::prophoto_linear , CaptureMoment::Core::ImageConfig::Raw::xyz ,
  CaptureMoment::Core::ImageConfig::Raw::aces , CaptureMoment::Core::ImageConfig::Raw::dci_p3 , CaptureMoment::Core::ImageConfig::Raw::rec2020
}
 Color primaries and transfer function for RAW development output. The working color space determines the gamut of colors that can be represented and affects how edits are performed. Linear spaces are preferred for editing. More...
 
enum class  CaptureMoment::Core::ImageConfig::Raw::CameraMatrixMode : std::uint8_t { CaptureMoment::Core::ImageConfig::Raw::never = 0 , CaptureMoment::Core::ImageConfig::Raw::dng_only = 1 , CaptureMoment::Core::ImageConfig::Raw::always = 3 }
 Controls when to use the embedded camera color profile matrix. Camera color matrices provide accurate color reproduction by converting from camera-specific color space to a standard working space. More...
 
enum class  CaptureMoment::Core::ImageConfig::Raw::FbddNoiseRd : std::uint8_t { CaptureMoment::Core::ImageConfig::Raw::off = 0 , CaptureMoment::Core::ImageConfig::Raw::light = 1 , CaptureMoment::Core::ImageConfig::Raw::full = 2 }
 FBDD (Fuzzy Block Denoising and Demosaicing) noise reduction level. Controls noise reduction applied BEFORE demosaicing. This can significantly improve demosaicing quality for noisy images, especially with AMaZE algorithm. More...
 
enum class  CaptureMoment::Core::ImageConfig::Raw::Orientation : std::int8_t {
  CaptureMoment::Core::ImageConfig::Raw::ignored = -1 , CaptureMoment::Core::ImageConfig::Raw::normal = 0 , CaptureMoment::Core::ImageConfig::Raw::flip_horizontal = 1 , CaptureMoment::Core::ImageConfig::Raw::rotate_180 = 2 ,
  CaptureMoment::Core::ImageConfig::Raw::flip_vertical = 3 , CaptureMoment::Core::ImageConfig::Raw::flip_h_rotate_90 = 4 , CaptureMoment::Core::ImageConfig::Raw::rotate_90_cw = 5 , CaptureMoment::Core::ImageConfig::Raw::flip_h_rotate_270 = 6 ,
  CaptureMoment::Core::ImageConfig::Raw::rotate_270_cw = 7 , CaptureMoment::Core::ImageConfig::Raw::flip_v_rotate_90 = 8
}
 Image orientation values matching EXIF orientation codes. Used to rotate/flip the image during RAW development based on camera orientation metadata or user preference. More...
 
enum class  CaptureMoment::Core::ImageConfig::Raw::WhiteBalanceMode : std::uint8_t {
  CaptureMoment::Core::ImageConfig::Raw::none = 0 , CaptureMoment::Core::ImageConfig::Raw::camera = 1 , CaptureMoment::Core::ImageConfig::Raw::auto_wb = 2 , CaptureMoment::Core::ImageConfig::Raw::grey_box = 3 ,
  CaptureMoment::Core::ImageConfig::Raw::user_mul = 4
}
 White balance calculation mode for RAW development. Determines how the initial white balance multipliers are calculated. Camera WB is typically the most accurate starting point. More...
 

Detailed Description

Comprehensive RAW development settings with runtime configuration.

Author
CaptureMoment Team
Date
2026 This file provides a complete configuration system for RAW image development via OIIO/LibRaw. All parameters are runtime-configurable with sensible defaults.
Note
Uses magic_enum for enum - string conversion.
All getters are constexpr and noexcept.
All setters are noexcept.

Definition in file raw_settings.h.

CaptureMoment — footer