Blender V4.3
GPU_select.hh
Go to the documentation of this file.
1/* SPDX-FileCopyrightText: 2014 Blender Authors
2 *
3 * SPDX-License-Identifier: GPL-2.0-or-later */
4
9#pragma once
10
11#include "BLI_span.hh"
12#include "BLI_sys_types.h"
13#include "BLI_vector.hh"
14
15struct rcti;
16
27
33 unsigned int id;
41 unsigned int depth;
42};
43
48
53 const rcti *input,
54 eGPUSelectMode mode,
55 int oldhits);
61 const rcti *input,
62 eGPUSelectMode mode,
63 int oldhits);
72bool GPU_select_load_id(unsigned int id);
79unsigned int GPU_select_end();
80
81/* Cache selection region. */
82
87
88/* Utilities. */
89
98 uint select_id);
102void GPU_select_buffer_stride_realign(const rcti *src, const rcti *dst, uint *r_buf);
unsigned int uint
const GPUSelectResult * GPU_select_buffer_near(const blender::Span< GPUSelectResult > hit_results)
void GPU_select_cache_end()
eGPUSelectMode
Definition GPU_select.hh:18
@ GPU_SELECT_NEAREST_SECOND_PASS
Definition GPU_select.hh:22
@ GPU_SELECT_NEAREST_FIRST_PASS
Definition GPU_select.hh:21
@ GPU_SELECT_PICK_ALL
Definition GPU_select.hh:24
@ GPU_SELECT_ALL
Definition GPU_select.hh:19
@ GPU_SELECT_PICK_NEAREST
Definition GPU_select.hh:25
void GPU_select_finalize()
bool GPU_select_load_id(unsigned int id)
bool GPU_select_is_cached()
unsigned int GPU_select_end()
void GPU_select_begin(GPUSelectBuffer *buffer, const rcti *input, eGPUSelectMode mode, int oldhits)
void GPU_select_cache_load_id()
void GPU_select_begin_next(GPUSelectBuffer *buffer, const rcti *input, eGPUSelectMode mode, int oldhits)
uint GPU_select_buffer_remove_by_id(blender::MutableSpan< GPUSelectResult > hit_results, uint select_id)
void GPU_select_cache_begin()
void GPU_select_buffer_stride_realign(const rcti *src, const rcti *dst, uint *r_buf)
GPUSelectStorage storage
Definition GPU_select.hh:46
unsigned int id
Definition GPU_select.hh:33
unsigned int depth
Definition GPU_select.hh:41