color-management: use more consistent naming
This commit is contained in:
parent
32db933242
commit
83e79b68e6
65 changed files with 439 additions and 510 deletions
|
|
@ -28,8 +28,8 @@ use {
|
|||
theme::{Color, colors::Colorable, sized::Resizable},
|
||||
timer::Timer,
|
||||
video::{
|
||||
ColorSpace, Connector, DrmDevice, Format, GfxApi, Mode, TearingMode, TransferFunction,
|
||||
Transform, VrrMode,
|
||||
ColorSpace, Connector, DrmDevice, Eotf, Format, GfxApi, Mode, TearingMode, Transform,
|
||||
VrrMode,
|
||||
connector_type::{CON_UNKNOWN, ConnectorType},
|
||||
},
|
||||
window::{
|
||||
|
|
@ -1042,16 +1042,11 @@ impl ConfigClient {
|
|||
self.send(&ClientMessage::ConnectorSetFormat { connector, format });
|
||||
}
|
||||
|
||||
pub fn connector_set_colors(
|
||||
&self,
|
||||
connector: Connector,
|
||||
color_space: ColorSpace,
|
||||
transfer_function: TransferFunction,
|
||||
) {
|
||||
pub fn connector_set_colors(&self, connector: Connector, color_space: ColorSpace, eotf: Eotf) {
|
||||
self.send(&ClientMessage::ConnectorSetColors {
|
||||
connector,
|
||||
color_space,
|
||||
transfer_function,
|
||||
eotf,
|
||||
});
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -12,8 +12,8 @@ use {
|
|||
theme::{Color, colors::Colorable, sized::Resizable},
|
||||
timer::Timer,
|
||||
video::{
|
||||
ColorSpace, Connector, DrmDevice, Format, GfxApi, TearingMode, TransferFunction,
|
||||
Transform, VrrMode, connector_type::ConnectorType,
|
||||
ColorSpace, Connector, DrmDevice, Eotf, Format, GfxApi, TearingMode, Transform,
|
||||
VrrMode, connector_type::ConnectorType,
|
||||
},
|
||||
window::{ContentType, TileState, Window, WindowMatcher, WindowType},
|
||||
workspace::WorkspaceDisplayOrder,
|
||||
|
|
@ -555,7 +555,7 @@ pub enum ClientMessage<'a> {
|
|||
ConnectorSetColors {
|
||||
connector: Connector,
|
||||
color_space: ColorSpace,
|
||||
transfer_function: TransferFunction,
|
||||
eotf: Eotf,
|
||||
},
|
||||
ConnectorSetBrightness {
|
||||
connector: Connector,
|
||||
|
|
|
|||
|
|
@ -273,26 +273,26 @@ impl Connector {
|
|||
get!().connector_set_format(self, format);
|
||||
}
|
||||
|
||||
/// Sets the color space and transfer function of the connector.
|
||||
/// Sets the color space and EOTF of the connector.
|
||||
///
|
||||
/// By default, the default values are used which usually means sRGB color space with
|
||||
/// sRGB transfer function.
|
||||
/// gamma22 EOTF.
|
||||
///
|
||||
/// If the output supports it, HDR10 can be enabled by setting the color space to
|
||||
/// BT.2020 and the transfer function to PQ.
|
||||
/// BT.2020 and the EOTF to PQ.
|
||||
///
|
||||
/// Note that some displays might ignore incompatible settings.
|
||||
pub fn set_colors(self, color_space: ColorSpace, transfer_function: TransferFunction) {
|
||||
get!().connector_set_colors(self, color_space, transfer_function);
|
||||
pub fn set_colors(self, color_space: ColorSpace, eotf: Eotf) {
|
||||
get!().connector_set_colors(self, color_space, eotf);
|
||||
}
|
||||
|
||||
/// Sets the brightness of the output.
|
||||
///
|
||||
/// By default or when `brightness` is `None`, the brightness depends on the
|
||||
/// transfer function:
|
||||
/// EOTF:
|
||||
///
|
||||
/// - [`TransferFunction::DEFAULT`]: The maximum brightness of the output.
|
||||
/// - [`TransferFunction::PQ`]: 203 cd/m^2.
|
||||
/// - [`Eotf::DEFAULT`]: The maximum brightness of the output.
|
||||
/// - [`Eotf::PQ`]: 203 cd/m^2.
|
||||
///
|
||||
/// This should only be used with the PQ transfer function. If the default transfer
|
||||
/// function is used, you should instead calibrate the hardware directly.
|
||||
|
|
@ -718,13 +718,16 @@ impl ColorSpace {
|
|||
pub const BT2020: Self = Self(1);
|
||||
}
|
||||
|
||||
/// A transfer function.
|
||||
/// An electro-optical transfer function (EOTF).
|
||||
#[derive(Serialize, Deserialize, Copy, Clone, Debug, Eq, PartialEq, Hash)]
|
||||
pub struct TransferFunction(pub u32);
|
||||
pub struct Eotf(pub u32);
|
||||
|
||||
impl TransferFunction {
|
||||
/// The default transfer function (usually sRGB).
|
||||
#[deprecated = "use the Eotf type instead"]
|
||||
pub type TransferFunction = Eotf;
|
||||
|
||||
impl Eotf {
|
||||
/// The default EOTF (usually gamma22).
|
||||
pub const DEFAULT: Self = Self(0);
|
||||
/// The PQ transfer function.
|
||||
/// The PQ EOTF.
|
||||
pub const PQ: Self = Self(1);
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue