Blender V4.3
blender::draw::image_engine::SpaceNodeAccessor Class Reference

#include <image_space_node.hh>

Inherits blender::draw::image_engine::AbstractSpaceAccessor.

Public Member Functions

 SpaceNodeAccessor (SpaceNode *snode)
 
Imageget_image (Main *bmain) override
 
ImageUserget_image_user () override
 
ImBufacquire_image_buffer (Image *image, void **lock) override
 
void release_buffer (Image *image, ImBuf *ibuf, void *lock) override
 
void get_shader_parameters (ShaderParameters &r_shader_parameters, ImBuf *ibuf) override
 
bool use_tile_drawing () const override
 Is (wrap) repeat option enabled in the space.
 
void init_ss_to_texture_matrix (const ARegion *region, const float image_offset[2], const float image_resolution[2], float r_uv_to_texture[4][4]) const override
 
- Public Member Functions inherited from blender::draw::image_engine::AbstractSpaceAccessor
virtual ~AbstractSpaceAccessor ()=default
 

Detailed Description

Definition at line 15 of file image_space_node.hh.

Constructor & Destructor Documentation

◆ SpaceNodeAccessor()

blender::draw::image_engine::SpaceNodeAccessor::SpaceNodeAccessor ( SpaceNode * snode)
inline

Definition at line 19 of file image_space_node.hh.

Member Function Documentation

◆ acquire_image_buffer()

ImBuf * blender::draw::image_engine::SpaceNodeAccessor::acquire_image_buffer ( Image * image,
void ** lock )
inlineoverridevirtual

Acquire the image buffer of the image.

Parameters
imageImage to get the buffer from. Image is the same as returned from the get_image member.
lockpointer to a lock object.
Returns
Image buffer of the given image.

Implements blender::draw::image_engine::AbstractSpaceAccessor.

Definition at line 31 of file image_space_node.hh.

References BKE_image_acquire_ibuf(), and lock.

◆ get_image()

Image * blender::draw::image_engine::SpaceNodeAccessor::get_image ( Main * bmain)
inlineoverridevirtual

Return the active image of the space.

The returned image will be drawn in the space.

The return value is optional.

Implements blender::draw::image_engine::AbstractSpaceAccessor.

Definition at line 21 of file image_space_node.hh.

References BKE_image_ensure_viewer(), and IMA_TYPE_COMPOSITE.

◆ get_image_user()

ImageUser * blender::draw::image_engine::SpaceNodeAccessor::get_image_user ( )
inlineoverridevirtual

Return the ImageUser of the space.

The return value is optional.

Implements blender::draw::image_engine::AbstractSpaceAccessor.

Definition at line 26 of file image_space_node.hh.

◆ get_shader_parameters()

void blender::draw::image_engine::SpaceNodeAccessor::get_shader_parameters ( ShaderParameters & r_shader_parameters,
ImBuf * image_buffer )
inlineoverridevirtual

◆ init_ss_to_texture_matrix()

void blender::draw::image_engine::SpaceNodeAccessor::init_ss_to_texture_matrix ( const ARegion * region,
const float image_offset[2],
const float image_resolution[2],
float r_uv_to_texture[4][4] ) const
inlineoverridevirtual

The backdrop of the node editor isn't drawn in screen space UV space. But is locked with the screen.

Implements blender::draw::image_engine::AbstractSpaceAccessor.

Definition at line 88 of file image_space_node.hh.

References mul_v2_v2fl(), unit_m4(), SpaceNode::xof, SpaceNode::yof, and SpaceNode::zoom.

◆ release_buffer()

void blender::draw::image_engine::SpaceNodeAccessor::release_buffer ( Image * image,
ImBuf * image_buffer,
void * lock )
inlineoverridevirtual

Release a previous locked image from acquire_image_buffer.

Implements blender::draw::image_engine::AbstractSpaceAccessor.

Definition at line 36 of file image_space_node.hh.

References BKE_image_release_ibuf(), and lock.

◆ use_tile_drawing()

bool blender::draw::image_engine::SpaceNodeAccessor::use_tile_drawing ( ) const
inlineoverridevirtual

Is (wrap) repeat option enabled in the space.

Implements blender::draw::image_engine::AbstractSpaceAccessor.

Definition at line 79 of file image_space_node.hh.


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