MythTV  master
mythcolourspace.h
Go to the documentation of this file.
1 #ifndef MYTHUICOLOURSPACE_H
2 #define MYTHUICOLOURSPACE_H
3 
4 // Std
5 #include <array>
6 
7 // Qt
8 #include <QMatrix4x4>
9 
10 // MythTV
11 #include "mythuiexp.h"
12 
13 using MythPrimaryFloat = std::array<float,2>;;
14 using MythPrimariesFloat = std::array<MythPrimaryFloat,3>;
15 using MythPrimaryUInt16 = std::array<uint16_t,2>;;
16 using MythPrimariesUInt16 = std::array<MythPrimaryUInt16,3>;
17 
19 {
20  public:
27 
28  static bool Alike(const MythColourSpace& First, const MythColourSpace& Second, float Fuzz);
29  static QMatrix4x4 RGBtoXYZ(const MythColourSpace& Primaries);
30 
31  MythColourSpace() = default;
32  MythColourSpace(const MythPrimariesFloat& Primaries, MythPrimaryFloat WhitePoint);
33 
34  MythPrimariesFloat m_primaries {{{0.0F}}};
35  MythPrimaryFloat m_whitePoint {0.0F};
36 };
37 
38 
39 #endif
MUI_PUBLIC
#define MUI_PUBLIC
Definition: mythuiexp.h:9
MythColourSpace::s_BT610_625
static MythColourSpace s_BT610_625
Definition: mythcolourspace.h:25
MythColourSpace::s_sRGB
static MythColourSpace s_sRGB
Definition: mythcolourspace.h:21
MythColourSpace::s_BT470M
static MythColourSpace s_BT470M
Definition: mythcolourspace.h:23
MythColourSpace::s_BT610_525
static MythColourSpace s_BT610_525
Definition: mythcolourspace.h:24
MythColourSpace
Definition: mythcolourspace.h:18
MythPrimaryUInt16
std::array< uint16_t, 2 > MythPrimaryUInt16
Definition: mythcolourspace.h:15
MythColourSpace::s_BT2020
static MythColourSpace s_BT2020
Definition: mythcolourspace.h:26
MythPrimaryFloat
std::array< float, 2 > MythPrimaryFloat
Definition: mythcolourspace.h:13
MythColourSpace::s_BT709
static MythColourSpace s_BT709
Definition: mythcolourspace.h:22
MythPrimariesUInt16
std::array< MythPrimaryUInt16, 3 > MythPrimariesUInt16
Definition: mythcolourspace.h:16
mythuiexp.h
MythPrimariesFloat
std::array< MythPrimaryFloat, 3 > MythPrimariesFloat
Definition: mythcolourspace.h:14