StormByte C++ Library: Multimedia module 0.0.9999
StormByte-Multimedia is a StormByte library module for parsing configuration files
Loading...
Searching...
No Matches
StormByte::Multimedia::Property::HDR10 Class Referencefinal

Mastering display and content light level metadata. More...

#include <StormByte/multimedia/property/hdr10.hxx>

Collaboration diagram for StormByte::Multimedia::Property::HDR10:

Public Types

enum class  Source { Metadata , Heuristics }
 Origin of the mastering-display numbers. More...

Public Member Functions

 HDR10 () noexcept
 DEFAULT primaries / luminance, Source::Heuristics.
 HDR10 (const Point &red, const Point &green, const Point &blue, const Point &white, const Point &luminance, const std::optional< Point > &light_level=std::nullopt, Source source=Source::Metadata) noexcept
 Full mastering-display description.
 HDR10 (Point &&red, Point &&green, Point &&blue, Point &&white, Point &&luminance, std::optional< Point > &&light_level=std::nullopt, Source source=Source::Metadata) noexcept
 Move overload of the full constructor.
 HDR10 (const HDR10 &)=default
 Copy constructor.
 HDR10 (HDR10 &&) noexcept=default
 Move constructor.
 ~HDR10 () noexcept=default
 Destructor.
HDR10 & operator= (const HDR10 &)=default
 Copy assignment.
HDR10 & operator= (HDR10 &&) noexcept=default
 Move assignment.
const Point & Red () const noexcept
 Red primary.
const Point & Green () const noexcept
 Green primary.
const Point & Blue () const noexcept
 Blue primary.
const Point & White () const noexcept
 White point.
const Point & Luminance () const noexcept
 Luminance (min, max).
const std::optional< Point > & LightLevel () const noexcept
 Optional content light level (MaxCLL, MaxFALL).
Source Origin () const noexcept
 Origin of the numbers.
bool IsHDR10Plus () const noexcept
 HDR10+ dynamic metadata flag.
void HDR10Plus (bool hdrplus) noexcept
 Sets the HDR10+ flag.

Static Public Attributes

static const HDR10 DEFAULT
 Fallback mastering display (Heuristics).

Detailed Description

Mastering display and content light level metadata.

Member Enumeration Documentation

◆ Source

Origin of the mastering-display numbers.

Enumerator
Metadata 

Side data from the container / bitstream.

Heuristics 

DEFAULT values; file signalled HDR10 without MDM.

Constructor & Destructor Documentation

◆ HDR10() [1/5]

StormByte::Multimedia::Property::HDR10::HDR10 ( )
noexcept

DEFAULT primaries / luminance, Source::Heuristics.

◆ HDR10() [2/5]

StormByte::Multimedia::Property::HDR10::HDR10 ( const Point & red,
const Point & green,
const Point & blue,
const Point & white,
const Point & luminance,
const std::optional< Point > & light_level = std::nullopt,
Source source = Source::Metadata )
noexcept

Full mastering-display description.

Parameters
redRed primary.
greenGreen primary.
blueBlue primary.
whiteWhite point.
luminanceMin/max luminance pair.
light_levelOptional MaxCLL/MaxFALL.
sourceMetadata or Heuristics.

◆ HDR10() [3/5]

StormByte::Multimedia::Property::HDR10::HDR10 ( Point && red,
Point && green,
Point && blue,
Point && white,
Point && luminance,
std::optional< Point > && light_level = std::nullopt,
Source source = Source::Metadata )
noexcept

Move overload of the full constructor.

Parameters
redRed primary.
greenGreen primary.
blueBlue primary.
whiteWhite point.
luminanceMin/max luminance pair.
light_levelOptional MaxCLL/MaxFALL.
sourceMetadata or Heuristics.

◆ HDR10() [4/5]

StormByte::Multimedia::Property::HDR10::HDR10 ( const HDR10 & )
default

Copy constructor.

◆ HDR10() [5/5]

StormByte::Multimedia::Property::HDR10::HDR10 ( HDR10 && )
defaultnoexcept

Move constructor.

◆ ~HDR10()

StormByte::Multimedia::Property::HDR10::~HDR10 ( )
defaultnoexcept

Destructor.

Member Function Documentation

◆ Blue()

const Point & StormByte::Multimedia::Property::HDR10::Blue ( ) const
noexcept

Blue primary.

Returns
Blue.

◆ Green()

const Point & StormByte::Multimedia::Property::HDR10::Green ( ) const
noexcept

Green primary.

Returns
Green.

◆ HDR10Plus()

void StormByte::Multimedia::Property::HDR10::HDR10Plus ( bool hdrplus)
noexcept

Sets the HDR10+ flag.

Parameters
hdrplusNew value.

◆ IsHDR10Plus()

bool StormByte::Multimedia::Property::HDR10::IsHDR10Plus ( ) const
noexcept

HDR10+ dynamic metadata flag.

Returns
true if HDR10+ was detected.

◆ LightLevel()

const std::optional< Point > & StormByte::Multimedia::Property::HDR10::LightLevel ( ) const
noexcept

Optional content light level (MaxCLL, MaxFALL).

Returns
Light level, or empty.

◆ Luminance()

const Point & StormByte::Multimedia::Property::HDR10::Luminance ( ) const
noexcept

Luminance (min, max).

Returns
Luminance.

◆ operator=() [1/2]

HDR10 & StormByte::Multimedia::Property::HDR10::operator= ( const HDR10 & )
default

Copy assignment.

Returns
*this.

◆ operator=() [2/2]

HDR10 & StormByte::Multimedia::Property::HDR10::operator= ( HDR10 && )
defaultnoexcept

Move assignment.

Returns
*this.

◆ Origin()

Source StormByte::Multimedia::Property::HDR10::Origin ( ) const
noexcept

Origin of the numbers.

Returns
Metadata or Heuristics.

◆ Red()

const Point & StormByte::Multimedia::Property::HDR10::Red ( ) const
noexcept

Red primary.

Returns
Red.

◆ White()

const Point & StormByte::Multimedia::Property::HDR10::White ( ) const
noexcept

White point.

Returns
White.

Member Data Documentation

◆ DEFAULT

const HDR10 StormByte::Multimedia::Property::HDR10::DEFAULT
static

Fallback mastering display (Heuristics).


The documentation for this class was generated from the following file:
  • lib/public/StormByte/multimedia/property/hdr10.hxx