StormByte C++ Library: Multimedia module 0.0.9999
StormByte-Multimedia is a StormByte library module for parsing configuration files
Loading...
Searching...
No Matches
Public Types | Public Member Functions | Static Public Attributes | List of all members
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:
Collaboration graph
[legend]

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.
 
HDR10operator= (const HDR10 &)=default
 Copy assignment.
 
HDR10operator= (HDR10 &&) noexcept=default
 Move assignment.
 
const PointRed () const noexcept
 Red primary.
 
const PointGreen () const noexcept
 Green primary.
 
const PointBlue () const noexcept
 Blue primary.
 
const PointWhite () const noexcept
 White point.
 
const PointLuminance () 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: