Blender V4.5
BKE_preview_image.hh
Go to the documentation of this file.
1/* SPDX-FileCopyrightText: 2006-2007 Blender Authors
2 *
3 * SPDX-License-Identifier: GPL-2.0-or-later */
4
8
9#pragma once
10
11#include <array>
12#include <memory>
13#include <optional>
14
15#include "DNA_ID_enums.h"
16
17struct BlendDataReader;
18struct BlendWriter;
19struct GPUTexture;
20struct ID;
21struct ImBuf;
22struct PreviewImage;
23
24enum ThumbSource : int8_t;
25
26namespace blender::bke {
27
29
32 int icon_id = 0;
33 int16_t tag = 0;
34
35 std::array<GPUTexture *, NUM_ICON_SIZES> gputexture = {};
36
38 std::unique_ptr<PreviewDeferredLoadingData> deferred_loading_data;
42};
43
44} // namespace blender::bke
45
48
52void BKE_previewimg_freefunc(void *link);
53
58
63
68
74
76
80void BKE_previewimg_id_custom_set(ID *id, const char *filepath);
81
86
91
96
101void BKE_previewimg_id_copy(ID *new_id, const ID *old_id);
102
107
113
115std::optional<int> BKE_previewimg_deferred_thumb_source_get(const PreviewImage *prv);
116
122
124bool BKE_previewimg_is_finished(const PreviewImage *prv, int size);
130
131PreviewImage *BKE_previewimg_cached_get(const char *name);
132
137
144 const char *filepath,
145 int source,
146 bool force_update);
147
148void BKE_previewimg_cached_release(const char *name);
149
151
152void BKE_previewimg_blend_write(BlendWriter *writer, const PreviewImage *prv);
void BKE_previewimg_deferred_release(PreviewImage *prv)
ImBuf * BKE_previewimg_to_imbuf(const PreviewImage *prv, int size)
PreviewImage * BKE_previewimg_id_get(const ID *id)
void BKE_previewimg_blend_write(BlendWriter *writer, const PreviewImage *prv)
void BKE_previewimg_ensure(PreviewImage *prv, int size)
bool BKE_previewimg_is_finished(const PreviewImage *prv, int size)
PreviewImage * BKE_previewimg_cached_thumbnail_read(const char *name, const char *filepath, int source, bool force_update)
std::optional< int > BKE_previewimg_deferred_thumb_source_get(const PreviewImage *prv)
void BKE_previewimg_cached_release(const char *name)
PreviewImage * BKE_previewimg_create()
bool BKE_previewimg_id_supports_jobs(const ID *id)
void BKE_preview_images_init()
PreviewImage * BKE_previewimg_id_ensure(ID *id)
void BKE_previewimg_freefunc(void *link)
PreviewImage ** BKE_previewimg_id_get_p(const ID *id)
void BKE_previewimg_clear_single(PreviewImage *prv, enum eIconSizes size)
const char * BKE_previewimg_deferred_filepath_get(const PreviewImage *prv)
bool BKE_previewimg_is_invalid(const PreviewImage *prv)
void BKE_preview_images_free()
void BKE_previewimg_free(PreviewImage **prv)
PreviewImage * BKE_previewimg_copy(const PreviewImage *prv)
PreviewImage * BKE_previewimg_cached_get(const char *name)
void BKE_previewimg_blend_read(BlendDataReader *reader, PreviewImage *prv)
void BKE_previewimg_id_custom_set(ID *id, const char *filepath)
void BKE_previewimg_id_copy(ID *new_id, const ID *old_id)
PreviewImage * BKE_previewimg_cached_ensure(const char *name)
void BKE_previewimg_finish(PreviewImage *prv, int size)
void BKE_previewimg_clear(PreviewImage *prv)
void BKE_previewimg_id_free(ID *id)
Enumerations for DNA_ID.h.
eIconSizes
ThumbSource
Definition IMB_thumbs.hh:27
static DBVT_INLINE btScalar size(const btDbvtVolume &a)
Definition btDbvt.cpp:52
Definition DNA_ID.h:404
std::unique_ptr< PreviewDeferredLoadingData > deferred_loading_data
std::array< GPUTexture *, NUM_ICON_SIZES > gputexture