Mako 9.1.0 API
MakoCore SDK API Documentation
Loading...
Searching...
No Matches
JawsMako::CFrameBufferInfo Class Reference

Description of a frame buffer for use with renderSeparationsToFrameBuffers and Apex rendering functions. More...

#include <jawsmako/renderspec.h>

Public Member Functions

 CFrameBufferInfo ()
bool operator== (const CFrameBufferInfo &other) const
bool operator!= (const CFrameBufferInfo &other) const

Public Attributes

void * buffer
uint32 bufferOfs
 Offset to the byte containing the first first pixel to be written to.
uint8 bufferOfsBits
int32 rowStride
int32 pixelStride
int8 pixelStrideBits

Detailed Description

Description of a frame buffer for use with renderSeparationsToFrameBuffers and Apex rendering functions.

Does not own any buffer memory; merely points into an externally supplied buffer.

Please note that for best performance for 1, 2, and 4-bit output from Apex, contiguous planar buffers should be used for each colorant where possible.

Constructor & Destructor Documentation

◆ CFrameBufferInfo()

JawsMako::CFrameBufferInfo::CFrameBufferInfo ( )
inline

Member Function Documentation

◆ operator!=()

bool JawsMako::CFrameBufferInfo::operator!= ( const CFrameBufferInfo & other) const
inline

◆ operator==()

bool JawsMako::CFrameBufferInfo::operator== ( const CFrameBufferInfo & other) const
inline

Member Data Documentation

◆ buffer

void* JawsMako::CFrameBufferInfo::buffer

Pointer to the frame buffer. For Apex, this may be nullptr. If nullptr, the associated separation will be discarded. If possible, it is more performant to avoid requesting the given component, be it by adding the separation name to ignoredSpotColors if the component is a spot colorant, or by not requesting alpha or content maps if the the buffer is used for those purposes. This feature chiefly exists to allow process components to be skipped.

◆ bufferOfs

uint32 JawsMako::CFrameBufferInfo::bufferOfs

Offset to the byte containing the first first pixel to be written to.

◆ bufferOfsBits

uint8 JawsMako::CFrameBufferInfo::bufferOfsBits

Apex only, and must be zero when rendering to an 8 or 16 bit result. This the offset, within the first byte (where 0 is the most-significant-bit), where the first pixel is to be written. Must be less than 8. For IJawsRenderer, this must always be zero.

◆ pixelStride

int32 JawsMako::CFrameBufferInfo::pixelStride

The integral byte portion of the distance from one sample to the next. Used with pixelStrideBits (in situations where pixelStride is used). In such situations, the total pixel stride, in bits, is calculated as: pixelStride * 8 + pixelStrideBits. If both pixelStride and pixelStrideBits are zero, then the samples are assumed to be packed.

◆ pixelStrideBits

int8 JawsMako::CFrameBufferInfo::pixelStrideBits

Apex only, and must be zero for 8 or 16 bit output. This is the bit-portion of the difference from one sample to the next, used in conjunction with pixelStride to create a total offset. Must be 0 through +/-7. For IJawsRenderer, this must always be zero. See pixelStride for details.

◆ rowStride

int32 JawsMako::CFrameBufferInfo::rowStride

The distance, in bytes, from one scanline in the frame buffer to the next. May be negative.


The documentation for this class was generated from the following file: