Blender V4.3
ocio_impl.h
Go to the documentation of this file.
1/* SPDX-FileCopyrightText: 2012 Blender Authors
2 *
3 * SPDX-License-Identifier: GPL-2.0-or-later */
4
5#ifndef __OCIO_IMPL_H__
6#define __OCIO_IMPL_H__
7
8#include "ocio_capi.h"
9
10class IOCIOImpl {
11 public:
12 virtual ~IOCIOImpl() {}
13
14 virtual OCIO_ConstConfigRcPtr *getCurrentConfig(void) = 0;
15 virtual void setCurrentConfig(const OCIO_ConstConfigRcPtr *config) = 0;
16
17 virtual OCIO_ConstConfigRcPtr *configCreateFromEnv(void) = 0;
18 virtual OCIO_ConstConfigRcPtr *configCreateFromFile(const char *filename) = 0;
19
20 virtual void configRelease(OCIO_ConstConfigRcPtr *config) = 0;
21
22 virtual int configGetNumColorSpaces(OCIO_ConstConfigRcPtr *config) = 0;
23 virtual const char *configGetColorSpaceNameByIndex(OCIO_ConstConfigRcPtr *config, int index) = 0;
24 virtual OCIO_ConstColorSpaceRcPtr *configGetColorSpace(OCIO_ConstConfigRcPtr *config,
25 const char *name) = 0;
26 virtual int configGetIndexForColorSpace(OCIO_ConstConfigRcPtr *config, const char *name) = 0;
27
28 virtual int colorSpaceIsInvertible(OCIO_ConstColorSpaceRcPtr *cs) = 0;
29 virtual int colorSpaceIsData(OCIO_ConstColorSpaceRcPtr *cs) = 0;
30 virtual void colorSpaceIsBuiltin(OCIO_ConstConfigRcPtr *config,
31 OCIO_ConstColorSpaceRcPtr *cs,
32 bool &is_scene_linear,
33 bool &is_srgb) = 0;
34
35 virtual void colorSpaceRelease(OCIO_ConstColorSpaceRcPtr *cs) = 0;
36
37 virtual const char *configGetDefaultDisplay(OCIO_ConstConfigRcPtr *config) = 0;
38 virtual int configGetNumDisplays(OCIO_ConstConfigRcPtr *config) = 0;
39 virtual const char *configGetDisplay(OCIO_ConstConfigRcPtr *config, int index) = 0;
40 virtual const char *configGetDefaultView(OCIO_ConstConfigRcPtr *config, const char *display) = 0;
41 virtual int configGetNumViews(OCIO_ConstConfigRcPtr *config, const char *display) = 0;
42 virtual const char *configGetView(OCIO_ConstConfigRcPtr *config,
43 const char *display,
44 int index) = 0;
45 virtual const char *configGetDisplayColorSpaceName(OCIO_ConstConfigRcPtr *config,
46 const char *display,
47 const char *view) = 0;
48
49 virtual void configGetDefaultLumaCoefs(OCIO_ConstConfigRcPtr *config, float *rgb) = 0;
50 virtual void configGetXYZtoSceneLinear(OCIO_ConstConfigRcPtr *config,
51 float xyz_to_scene_linear[3][3]) = 0;
52
53 virtual int configGetNumLooks(OCIO_ConstConfigRcPtr *config) = 0;
54 virtual const char *configGetLookNameByIndex(OCIO_ConstConfigRcPtr *config, int index) = 0;
55 virtual OCIO_ConstLookRcPtr *configGetLook(OCIO_ConstConfigRcPtr *config, const char *name) = 0;
56
57 virtual const char *lookGetProcessSpace(OCIO_ConstLookRcPtr *look) = 0;
58 virtual void lookRelease(OCIO_ConstLookRcPtr *look) = 0;
59
60 virtual OCIO_ConstProcessorRcPtr *configGetProcessorWithNames(OCIO_ConstConfigRcPtr *config,
61 const char *srcName,
62 const char *dstName) = 0;
63 virtual void processorRelease(OCIO_ConstProcessorRcPtr *processor) = 0;
64
65 virtual OCIO_ConstCPUProcessorRcPtr *processorGetCPUProcessor(OCIO_ConstProcessorRcPtr *p) = 0;
66 virtual bool cpuProcessorIsNoOp(OCIO_ConstCPUProcessorRcPtr *cpu_processor) = 0;
68 OCIO_PackedImageDesc *img) = 0;
70 OCIO_PackedImageDesc *img) = 0;
71 virtual void cpuProcessorApplyRGB(OCIO_ConstCPUProcessorRcPtr *cpu_processor, float *pixel) = 0;
72 virtual void cpuProcessorApplyRGBA(OCIO_ConstCPUProcessorRcPtr *cpu_processor, float *pixel) = 0;
74 float *pixel) = 0;
75 virtual void cpuProcessorRelease(OCIO_ConstCPUProcessorRcPtr *cpu_processor) = 0;
76
77 virtual const char *colorSpaceGetName(OCIO_ConstColorSpaceRcPtr *cs) = 0;
78 virtual const char *colorSpaceGetDescription(OCIO_ConstColorSpaceRcPtr *cs) = 0;
79 virtual const char *colorSpaceGetFamily(OCIO_ConstColorSpaceRcPtr *cs) = 0;
80 virtual int colorSpaceGetNumAliases(OCIO_ConstColorSpaceRcPtr *cs) = 0;
81 virtual const char *colorSpaceGetAlias(OCIO_ConstColorSpaceRcPtr *cs, const int index) = 0;
82
83 virtual OCIO_ConstProcessorRcPtr *createDisplayProcessor(OCIO_ConstConfigRcPtr *config,
84 const char *input,
85 const char *view,
86 const char *display,
87 const char *look,
88 const float scale,
89 const float exponent,
90 const float temperature,
91 const float tint,
92 const bool use_white_balance,
93 const bool inverse) = 0;
94
95 virtual OCIO_PackedImageDesc *createOCIO_PackedImageDesc(float *data,
96 long width,
97 long height,
98 long numChannels,
99 long chanStrideBytes,
100 long xStrideBytes,
101 long yStrideBytes) = 0;
102
103 virtual void OCIO_PackedImageDescRelease(OCIO_PackedImageDesc *p) = 0;
104
105 /* Optional GPU support. */
106 virtual bool supportGPUShader()
107 {
108 return false;
109 }
110 virtual bool gpuDisplayShaderBind(OCIO_ConstConfigRcPtr * /*config*/,
111 const char * /*input*/,
112 const char * /*view*/,
113 const char * /*display*/,
114 const char * /*look*/,
115 OCIO_CurveMappingSettings * /*curve_mapping_settings*/,
116 const float /*scale*/,
117 const float /*exponent*/,
118 const float /*dither*/,
119 const float /*temperature*/,
120 const float /*tint*/,
121 const bool /*use_predivide*/,
122 const bool /*use_overlay*/,
123 const bool /*use_hdr*/,
124 const bool /*use_white_balance*/)
125 {
126 return false;
127 }
128 virtual void gpuDisplayShaderUnbind(void) {}
129 virtual void gpuCacheFree(void) {}
130
131 virtual const char *getVersionString(void) = 0;
132 virtual int getVersionHex(void) = 0;
133};
134
135class FallbackImpl : public IOCIOImpl {
136 public:
138
139 OCIO_ConstConfigRcPtr *getCurrentConfig(void);
140 void setCurrentConfig(const OCIO_ConstConfigRcPtr *config);
141
142 OCIO_ConstConfigRcPtr *configCreateFromEnv(void);
143 OCIO_ConstConfigRcPtr *configCreateFromFile(const char *filename);
144
145 void configRelease(OCIO_ConstConfigRcPtr *config);
146
147 int configGetNumColorSpaces(OCIO_ConstConfigRcPtr *config);
148 const char *configGetColorSpaceNameByIndex(OCIO_ConstConfigRcPtr *config, int index);
149 OCIO_ConstColorSpaceRcPtr *configGetColorSpace(OCIO_ConstConfigRcPtr *config, const char *name);
150 int configGetIndexForColorSpace(OCIO_ConstConfigRcPtr *config, const char *name);
151
152 int colorSpaceIsInvertible(OCIO_ConstColorSpaceRcPtr *cs);
153 int colorSpaceIsData(OCIO_ConstColorSpaceRcPtr *cs);
154 void colorSpaceIsBuiltin(OCIO_ConstConfigRcPtr *config,
155 OCIO_ConstColorSpaceRcPtr *cs,
156 bool &is_scene_linear,
157 bool &is_srgb);
158
159 void colorSpaceRelease(OCIO_ConstColorSpaceRcPtr *cs);
160
161 const char *configGetDefaultDisplay(OCIO_ConstConfigRcPtr *config);
162 int configGetNumDisplays(OCIO_ConstConfigRcPtr *config);
163 const char *configGetDisplay(OCIO_ConstConfigRcPtr *config, int index);
164 const char *configGetDefaultView(OCIO_ConstConfigRcPtr *config, const char *display);
165 int configGetNumViews(OCIO_ConstConfigRcPtr *config, const char *display);
166 const char *configGetView(OCIO_ConstConfigRcPtr *config, const char *display, int index);
167 const char *configGetDisplayColorSpaceName(OCIO_ConstConfigRcPtr *config,
168 const char *display,
169 const char *view);
170
171 void configGetDefaultLumaCoefs(OCIO_ConstConfigRcPtr *config, float *rgb);
172 void configGetXYZtoSceneLinear(OCIO_ConstConfigRcPtr *config, float xyz_to_scene_linear[3][3]);
173
174 int configGetNumLooks(OCIO_ConstConfigRcPtr *config);
175 const char *configGetLookNameByIndex(OCIO_ConstConfigRcPtr *config, int index);
176 OCIO_ConstLookRcPtr *configGetLook(OCIO_ConstConfigRcPtr *config, const char *name);
177
178 const char *lookGetProcessSpace(OCIO_ConstLookRcPtr *look);
179 void lookRelease(OCIO_ConstLookRcPtr *look);
180
181 OCIO_ConstProcessorRcPtr *configGetProcessorWithNames(OCIO_ConstConfigRcPtr *config,
182 const char *srcName,
183 const char *dstName);
184 void processorRelease(OCIO_ConstProcessorRcPtr *processor);
185
186 OCIO_ConstCPUProcessorRcPtr *processorGetCPUProcessor(OCIO_ConstProcessorRcPtr *processor);
188 void cpuProcessorApply(OCIO_ConstCPUProcessorRcPtr *cpu_processor, OCIO_PackedImageDesc *img);
190 OCIO_PackedImageDesc *img);
191 void cpuProcessorApplyRGB(OCIO_ConstCPUProcessorRcPtr *cpu_processor, float *pixel);
192 void cpuProcessorApplyRGBA(OCIO_ConstCPUProcessorRcPtr *cpu_processor, float *pixel);
193 void cpuProcessorApplyRGBA_predivide(OCIO_ConstCPUProcessorRcPtr *cpu_processor, float *pixel);
195
196 const char *colorSpaceGetName(OCIO_ConstColorSpaceRcPtr *cs);
197 const char *colorSpaceGetDescription(OCIO_ConstColorSpaceRcPtr *cs);
198 const char *colorSpaceGetFamily(OCIO_ConstColorSpaceRcPtr *cs);
199 int colorSpaceGetNumAliases(OCIO_ConstColorSpaceRcPtr *cs);
200 const char *colorSpaceGetAlias(OCIO_ConstColorSpaceRcPtr *cs, const int index);
201
202 OCIO_ConstProcessorRcPtr *createDisplayProcessor(OCIO_ConstConfigRcPtr *config,
203 const char *input,
204 const char *view,
205 const char *display,
206 const char *look,
207 const float scale,
208 const float exponent,
209 const float temperature,
210 const float tint,
211 const bool use_white_balance,
212 const bool inverse);
213
214 OCIO_PackedImageDesc *createOCIO_PackedImageDesc(float *data,
215 long width,
216 long height,
217 long numChannels,
218 long chanStrideBytes,
219 long xStrideBytes,
220 long yStrideBytes);
221
222 void OCIO_PackedImageDescRelease(OCIO_PackedImageDesc *p);
223
224 const char *getVersionString(void);
225 int getVersionHex(void);
226};
227
228#ifdef WITH_OCIO
229class OCIOImpl : public IOCIOImpl {
230 public:
231 OCIOImpl(){};
232
233 OCIO_ConstConfigRcPtr *getCurrentConfig(void);
234 void setCurrentConfig(const OCIO_ConstConfigRcPtr *config);
235
236 OCIO_ConstConfigRcPtr *configCreateFromEnv(void);
237 OCIO_ConstConfigRcPtr *configCreateFromFile(const char *filename);
238
239 void configRelease(OCIO_ConstConfigRcPtr *config);
240
241 int configGetNumColorSpaces(OCIO_ConstConfigRcPtr *config);
242 const char *configGetColorSpaceNameByIndex(OCIO_ConstConfigRcPtr *config, int index);
243 OCIO_ConstColorSpaceRcPtr *configGetColorSpace(OCIO_ConstConfigRcPtr *config, const char *name);
244 int configGetIndexForColorSpace(OCIO_ConstConfigRcPtr *config, const char *name);
245
246 int colorSpaceIsInvertible(OCIO_ConstColorSpaceRcPtr *cs);
247 int colorSpaceIsData(OCIO_ConstColorSpaceRcPtr *cs);
248 void colorSpaceIsBuiltin(OCIO_ConstConfigRcPtr *config,
249 OCIO_ConstColorSpaceRcPtr *cs,
250 bool &is_scene_linear,
251 bool &is_srgb);
252
253 void colorSpaceRelease(OCIO_ConstColorSpaceRcPtr *cs);
254
255 const char *configGetDefaultDisplay(OCIO_ConstConfigRcPtr *config);
256 int configGetNumDisplays(OCIO_ConstConfigRcPtr *config);
257 const char *configGetDisplay(OCIO_ConstConfigRcPtr *config, int index);
258 const char *configGetDefaultView(OCIO_ConstConfigRcPtr *config, const char *display);
259 int configGetNumViews(OCIO_ConstConfigRcPtr *config, const char *display);
260 const char *configGetView(OCIO_ConstConfigRcPtr *config, const char *display, int index);
261 const char *configGetDisplayColorSpaceName(OCIO_ConstConfigRcPtr *config,
262 const char *display,
263 const char *view);
264
265 void configGetDefaultLumaCoefs(OCIO_ConstConfigRcPtr *config, float *rgb);
266 void configGetXYZtoSceneLinear(OCIO_ConstConfigRcPtr *config, float xyz_to_scene_linear[3][3]);
267
268 int configGetNumLooks(OCIO_ConstConfigRcPtr *config);
269 const char *configGetLookNameByIndex(OCIO_ConstConfigRcPtr *config, int index);
270 OCIO_ConstLookRcPtr *configGetLook(OCIO_ConstConfigRcPtr *config, const char *name);
271
272 const char *lookGetProcessSpace(OCIO_ConstLookRcPtr *look);
273 void lookRelease(OCIO_ConstLookRcPtr *look);
274
275 OCIO_ConstProcessorRcPtr *configGetProcessorWithNames(OCIO_ConstConfigRcPtr *config,
276 const char *srcName,
277 const char *dstName);
278 void processorRelease(OCIO_ConstProcessorRcPtr *processor);
279
280 OCIO_ConstCPUProcessorRcPtr *processorGetCPUProcessor(OCIO_ConstProcessorRcPtr *processor);
282 void cpuProcessorApply(OCIO_ConstCPUProcessorRcPtr *cpu_processor, OCIO_PackedImageDesc *img);
284 OCIO_PackedImageDesc *img);
285 void cpuProcessorApplyRGB(OCIO_ConstCPUProcessorRcPtr *cpu_processor, float *pixel);
286 void cpuProcessorApplyRGBA(OCIO_ConstCPUProcessorRcPtr *cpu_processor, float *pixel);
287 void cpuProcessorApplyRGBA_predivide(OCIO_ConstCPUProcessorRcPtr *cpu_processor, float *pixel);
289
290 const char *colorSpaceGetName(OCIO_ConstColorSpaceRcPtr *cs);
291 const char *colorSpaceGetDescription(OCIO_ConstColorSpaceRcPtr *cs);
292 const char *colorSpaceGetFamily(OCIO_ConstColorSpaceRcPtr *cs);
293 int colorSpaceGetNumAliases(OCIO_ConstColorSpaceRcPtr *cs);
294 const char *colorSpaceGetAlias(OCIO_ConstColorSpaceRcPtr *cs, const int index);
295
296 OCIO_ConstProcessorRcPtr *createDisplayProcessor(OCIO_ConstConfigRcPtr *config,
297 const char *input,
298 const char *view,
299 const char *display,
300 const char *look,
301 const float scale,
302 const float exponent,
303 const float temperature,
304 const float tint,
305 const bool use_white_balance,
306 const bool inverse);
307
308 OCIO_PackedImageDesc *createOCIO_PackedImageDesc(float *data,
309 long width,
310 long height,
311 long numChannels,
312 long chanStrideBytes,
313 long xStrideBytes,
314 long yStrideBytes);
315
316 void OCIO_PackedImageDescRelease(OCIO_PackedImageDesc *p);
317
318 bool supportGPUShader();
319 bool gpuDisplayShaderBind(OCIO_ConstConfigRcPtr *config,
320 const char *input,
321 const char *view,
322 const char *display,
323 const char *look,
324 OCIO_CurveMappingSettings *curve_mapping_settings,
325 const float scale,
326 const float exponent,
327 const float dither,
328 const float temperature,
329 const float tint,
330 const bool use_predivide,
331 const bool use_overlay,
332 const bool use_hdr,
333 const bool use_white_balance);
334 void gpuDisplayShaderUnbind(void);
335 void gpuCacheFree(void);
336
337 const char *getVersionString(void);
338 int getVersionHex(void);
339};
340#endif
341
342#endif /* OCIO_IMPL_H */
struct OCIO_ConstCPUProcessorRc * OCIO_ConstCPUProcessorRcPtr
btMatrix3x3 inverse() const
Return the inverse of the matrix.
const char * colorSpaceGetFamily(OCIO_ConstColorSpaceRcPtr *cs)
int configGetNumDisplays(OCIO_ConstConfigRcPtr *config)
const char * configGetView(OCIO_ConstConfigRcPtr *config, const char *display, int index)
int configGetIndexForColorSpace(OCIO_ConstConfigRcPtr *config, const char *name)
const char * configGetDefaultDisplay(OCIO_ConstConfigRcPtr *config)
void colorSpaceRelease(OCIO_ConstColorSpaceRcPtr *cs)
const char * configGetDisplay(OCIO_ConstConfigRcPtr *config, int index)
void configGetXYZtoSceneLinear(OCIO_ConstConfigRcPtr *config, float xyz_to_scene_linear[3][3])
void configGetDefaultLumaCoefs(OCIO_ConstConfigRcPtr *config, float *rgb)
int colorSpaceIsData(OCIO_ConstColorSpaceRcPtr *cs)
int colorSpaceGetNumAliases(OCIO_ConstColorSpaceRcPtr *cs)
const char * getVersionString(void)
OCIO_ConstProcessorRcPtr * createDisplayProcessor(OCIO_ConstConfigRcPtr *config, const char *input, const char *view, const char *display, const char *look, const float scale, const float exponent, const float temperature, const float tint, const bool use_white_balance, const bool inverse)
void processorRelease(OCIO_ConstProcessorRcPtr *processor)
void setCurrentConfig(const OCIO_ConstConfigRcPtr *config)
int getVersionHex(void)
OCIO_PackedImageDesc * createOCIO_PackedImageDesc(float *data, long width, long height, long numChannels, long chanStrideBytes, long xStrideBytes, long yStrideBytes)
OCIO_ConstConfigRcPtr * configCreateFromEnv(void)
OCIO_ConstConfigRcPtr * getCurrentConfig(void)
const char * configGetDefaultView(OCIO_ConstConfigRcPtr *config, const char *display)
void configRelease(OCIO_ConstConfigRcPtr *config)
void lookRelease(OCIO_ConstLookRcPtr *look)
OCIO_ConstColorSpaceRcPtr * configGetColorSpace(OCIO_ConstConfigRcPtr *config, const char *name)
const char * colorSpaceGetName(OCIO_ConstColorSpaceRcPtr *cs)
const char * configGetDisplayColorSpaceName(OCIO_ConstConfigRcPtr *config, const char *display, const char *view)
void OCIO_PackedImageDescRelease(OCIO_PackedImageDesc *p)
void cpuProcessorApply_predivide(OCIO_ConstCPUProcessorRcPtr *cpu_processor, OCIO_PackedImageDesc *img)
void cpuProcessorRelease(OCIO_ConstCPUProcessorRcPtr *cpu_processor)
const char * colorSpaceGetAlias(OCIO_ConstColorSpaceRcPtr *cs, const int index)
int colorSpaceIsInvertible(OCIO_ConstColorSpaceRcPtr *cs)
const char * colorSpaceGetDescription(OCIO_ConstColorSpaceRcPtr *cs)
void cpuProcessorApplyRGBA_predivide(OCIO_ConstCPUProcessorRcPtr *cpu_processor, float *pixel)
void cpuProcessorApplyRGB(OCIO_ConstCPUProcessorRcPtr *cpu_processor, float *pixel)
void cpuProcessorApply(OCIO_ConstCPUProcessorRcPtr *cpu_processor, OCIO_PackedImageDesc *img)
const char * lookGetProcessSpace(OCIO_ConstLookRcPtr *look)
void colorSpaceIsBuiltin(OCIO_ConstConfigRcPtr *config, OCIO_ConstColorSpaceRcPtr *cs, bool &is_scene_linear, bool &is_srgb)
int configGetNumLooks(OCIO_ConstConfigRcPtr *config)
OCIO_ConstConfigRcPtr * configCreateFromFile(const char *filename)
const char * configGetLookNameByIndex(OCIO_ConstConfigRcPtr *config, int index)
void cpuProcessorApplyRGBA(OCIO_ConstCPUProcessorRcPtr *cpu_processor, float *pixel)
OCIO_ConstCPUProcessorRcPtr * processorGetCPUProcessor(OCIO_ConstProcessorRcPtr *processor)
OCIO_ConstProcessorRcPtr * configGetProcessorWithNames(OCIO_ConstConfigRcPtr *config, const char *srcName, const char *dstName)
int configGetNumViews(OCIO_ConstConfigRcPtr *config, const char *display)
OCIO_ConstLookRcPtr * configGetLook(OCIO_ConstConfigRcPtr *config, const char *name)
int configGetNumColorSpaces(OCIO_ConstConfigRcPtr *config)
const char * configGetColorSpaceNameByIndex(OCIO_ConstConfigRcPtr *config, int index)
bool cpuProcessorIsNoOp(OCIO_ConstCPUProcessorRcPtr *cpu_processor)
virtual OCIO_ConstCPUProcessorRcPtr * processorGetCPUProcessor(OCIO_ConstProcessorRcPtr *p)=0
virtual void colorSpaceIsBuiltin(OCIO_ConstConfigRcPtr *config, OCIO_ConstColorSpaceRcPtr *cs, bool &is_scene_linear, bool &is_srgb)=0
virtual int configGetNumViews(OCIO_ConstConfigRcPtr *config, const char *display)=0
virtual void configRelease(OCIO_ConstConfigRcPtr *config)=0
virtual ~IOCIOImpl()
Definition ocio_impl.h:12
virtual bool supportGPUShader()
Definition ocio_impl.h:106
virtual OCIO_ConstConfigRcPtr * configCreateFromEnv(void)=0
virtual const char * colorSpaceGetDescription(OCIO_ConstColorSpaceRcPtr *cs)=0
virtual void colorSpaceRelease(OCIO_ConstColorSpaceRcPtr *cs)=0
virtual const char * configGetDisplay(OCIO_ConstConfigRcPtr *config, int index)=0
virtual void cpuProcessorApply_predivide(OCIO_ConstCPUProcessorRcPtr *cpu_processor, OCIO_PackedImageDesc *img)=0
virtual void cpuProcessorApply(OCIO_ConstCPUProcessorRcPtr *cpu_processor, OCIO_PackedImageDesc *img)=0
virtual int configGetNumDisplays(OCIO_ConstConfigRcPtr *config)=0
virtual int colorSpaceIsData(OCIO_ConstColorSpaceRcPtr *cs)=0
virtual int configGetNumLooks(OCIO_ConstConfigRcPtr *config)=0
virtual int getVersionHex(void)=0
virtual const char * configGetView(OCIO_ConstConfigRcPtr *config, const char *display, int index)=0
virtual OCIO_ConstColorSpaceRcPtr * configGetColorSpace(OCIO_ConstConfigRcPtr *config, const char *name)=0
virtual const char * colorSpaceGetName(OCIO_ConstColorSpaceRcPtr *cs)=0
virtual const char * getVersionString(void)=0
virtual int configGetNumColorSpaces(OCIO_ConstConfigRcPtr *config)=0
virtual void setCurrentConfig(const OCIO_ConstConfigRcPtr *config)=0
virtual const char * configGetDefaultDisplay(OCIO_ConstConfigRcPtr *config)=0
virtual void cpuProcessorApplyRGB(OCIO_ConstCPUProcessorRcPtr *cpu_processor, float *pixel)=0
virtual OCIO_ConstConfigRcPtr * getCurrentConfig(void)=0
virtual const char * configGetDefaultView(OCIO_ConstConfigRcPtr *config, const char *display)=0
virtual void configGetDefaultLumaCoefs(OCIO_ConstConfigRcPtr *config, float *rgb)=0
virtual void OCIO_PackedImageDescRelease(OCIO_PackedImageDesc *p)=0
virtual OCIO_PackedImageDesc * createOCIO_PackedImageDesc(float *data, long width, long height, long numChannels, long chanStrideBytes, long xStrideBytes, long yStrideBytes)=0
virtual OCIO_ConstConfigRcPtr * configCreateFromFile(const char *filename)=0
virtual void gpuCacheFree(void)
Definition ocio_impl.h:129
virtual void lookRelease(OCIO_ConstLookRcPtr *look)=0
virtual int colorSpaceGetNumAliases(OCIO_ConstColorSpaceRcPtr *cs)=0
virtual const char * configGetDisplayColorSpaceName(OCIO_ConstConfigRcPtr *config, const char *display, const char *view)=0
virtual int colorSpaceIsInvertible(OCIO_ConstColorSpaceRcPtr *cs)=0
virtual OCIO_ConstProcessorRcPtr * createDisplayProcessor(OCIO_ConstConfigRcPtr *config, const char *input, const char *view, const char *display, const char *look, const float scale, const float exponent, const float temperature, const float tint, const bool use_white_balance, const bool inverse)=0
virtual const char * configGetColorSpaceNameByIndex(OCIO_ConstConfigRcPtr *config, int index)=0
virtual bool gpuDisplayShaderBind(OCIO_ConstConfigRcPtr *, const char *, const char *, const char *, const char *, OCIO_CurveMappingSettings *, const float, const float, const float, const float, const float, const bool, const bool, const bool, const bool)
Definition ocio_impl.h:110
virtual int configGetIndexForColorSpace(OCIO_ConstConfigRcPtr *config, const char *name)=0
virtual const char * colorSpaceGetFamily(OCIO_ConstColorSpaceRcPtr *cs)=0
virtual OCIO_ConstProcessorRcPtr * configGetProcessorWithNames(OCIO_ConstConfigRcPtr *config, const char *srcName, const char *dstName)=0
virtual void cpuProcessorApplyRGBA_predivide(OCIO_ConstCPUProcessorRcPtr *cpu_processor, float *pixel)=0
virtual const char * lookGetProcessSpace(OCIO_ConstLookRcPtr *look)=0
virtual OCIO_ConstLookRcPtr * configGetLook(OCIO_ConstConfigRcPtr *config, const char *name)=0
virtual void processorRelease(OCIO_ConstProcessorRcPtr *processor)=0
virtual void cpuProcessorRelease(OCIO_ConstCPUProcessorRcPtr *cpu_processor)=0
virtual void gpuDisplayShaderUnbind(void)
Definition ocio_impl.h:128
virtual const char * configGetLookNameByIndex(OCIO_ConstConfigRcPtr *config, int index)=0
virtual void cpuProcessorApplyRGBA(OCIO_ConstCPUProcessorRcPtr *cpu_processor, float *pixel)=0
virtual bool cpuProcessorIsNoOp(OCIO_ConstCPUProcessorRcPtr *cpu_processor)=0
virtual void configGetXYZtoSceneLinear(OCIO_ConstConfigRcPtr *config, float xyz_to_scene_linear[3][3])=0
virtual const char * colorSpaceGetAlias(OCIO_ConstColorSpaceRcPtr *cs, const int index)=0