Struct Compositors::ChannelInfo#

Nested Relationships#

This struct is a nested type of Class Compositors.

Struct Documentation#

struct ChannelInfo

Information about a channel for use in the multi-channel-composition operation. The gradation to be applied can be specified in two ways: either the black-point and white-point is provided, and the gradation curve is a straight line (between black-point and white-point) or a look-up table is used. In case of a look-up table being specified, black-point/white-point is not used. The size of the look-up table must match exactly the bits in this channels, so far a Gray8/Bgr24 it must be of size 256 and for Gray16/Bgr48 is must be of size 65536.

Public Functions

inline void Clear()

All members are set to zero.

Public Members

float weight

The weight of the channel.

bool enableTinting

True if tinting is enabled for this channel (in which case the tinting member is to be examined), false if no tinting is to be applied (the tinting member is then not used).

TintingColor tinting

The tinting color (only examined if enableTinting is true).

float blackPoint

The black point - it is a float between 0 and 1, where 0 corresponds to the lowest pixel value (of the pixeltype for the channel) and 1 to the highest pixel value (of the pixeltype of this channel). All pixel values below the black point are mapped to 0.

float whitePoint

The white point - it is a float between 0 and 1, where 0 corresponds to the lowest pixel value (of the pixeltype for the channel) and 1 to the highest pixel value (of the pixeltype of this channel). All pixel value above the white pointer are mapped to the highest pixel value.

int lookUpTableElementCount

Number of elements in the look-up table. If 0, then the look-up table is not used. If this channelInfo applies to a Gray8/Bgr24-channel, then the size of the look-up table must be 256. In case of a Gray16/Bgr48-channel, the size must be 65536.

Remark

If a look-up table is provided, then blackPoint and whitePoint are not used anymore .

const std::uint8_t *ptrLookUpTable

The pointer to the look-up table. If lookUpTableElementCount is <> 0, then this pointer must be valid.