Blender V4.3
types.h File Reference
#include <OSL/oslversion.h>
#include "closures_template.h"

Go to the source code of this file.

Classes

struct  OSLClosure
 
struct  ShaderGlobals
 
struct  OSLNoiseOptions
 
struct  OSLTextureOptions
 

Macros

#define OSL_CLOSURE_STRUCT_BEGIN(Upper, lower)   OSL_CLOSURE_##Upper##_ID,
 
#define OSL_TEXTURE_HANDLE_TYPE_IES   ((uintptr_t)0x2 << 30)
 
#define OSL_TEXTURE_HANDLE_TYPE_SVM   ((uintptr_t)0x1 << 30)
 
#define OSL_TEXTURE_HANDLE_TYPE_AO_OR_BEVEL   ((uintptr_t)0x3 << 30)
 
#define OSL_TEXTURE_HANDLE_TYPE(handle)    ((unsigned int)((uintptr_t)(handle) & ((uintptr_t)0x3 << 30)))
 
#define OSL_TEXTURE_HANDLE_SLOT(handle)    ((unsigned int)((uintptr_t)(handle) & ((uintptr_t)0x3FFFFFFF)))
 

Enumerations

enum  OSLClosureType { OSL_CLOSURE_MUL_ID = -1 , OSL_CLOSURE_ADD_ID = -2 , OSL_CLOSURE_NONE_ID = 0 , OSL_CLOSURE_LAYER_ID }
 

Functions

ccl_device_inline DeviceString make_string (const char *str, size_t hash)
 

Variables

CCL_NAMESPACE_BEGIN typedef const char * DeviceString
 

Macro Definition Documentation

◆ OSL_CLOSURE_STRUCT_BEGIN

#define OSL_CLOSURE_STRUCT_BEGIN ( Upper,
lower )   OSL_CLOSURE_##Upper##_ID,

Definition at line 46 of file kernel/osl/types.h.

◆ OSL_TEXTURE_HANDLE_SLOT

#define OSL_TEXTURE_HANDLE_SLOT ( handle)     ((unsigned int)((uintptr_t)(handle) & ((uintptr_t)0x3FFFFFFF)))

Definition at line 116 of file kernel/osl/types.h.

Referenced by osl_texture(), and osl_texture3d().

◆ OSL_TEXTURE_HANDLE_TYPE

#define OSL_TEXTURE_HANDLE_TYPE ( handle)     ((unsigned int)((uintptr_t)(handle) & ((uintptr_t)0x3 << 30)))

Definition at line 114 of file kernel/osl/types.h.

Referenced by osl_texture(), and osl_texture3d().

◆ OSL_TEXTURE_HANDLE_TYPE_AO_OR_BEVEL

#define OSL_TEXTURE_HANDLE_TYPE_AO_OR_BEVEL   ((uintptr_t)0x3 << 30)

Definition at line 112 of file kernel/osl/types.h.

Referenced by OSLRenderServices::get_texture_handle().

◆ OSL_TEXTURE_HANDLE_TYPE_IES

#define OSL_TEXTURE_HANDLE_TYPE_IES   ((uintptr_t)0x2 << 30)

Definition at line 110 of file kernel/osl/types.h.

Referenced by OSLRenderServices::get_texture_handle(), and osl_texture().

◆ OSL_TEXTURE_HANDLE_TYPE_SVM

#define OSL_TEXTURE_HANDLE_TYPE_SVM   ((uintptr_t)0x1 << 30)

Enumeration Type Documentation

◆ OSLClosureType

Enumerator
OSL_CLOSURE_MUL_ID 
OSL_CLOSURE_ADD_ID 
OSL_CLOSURE_NONE_ID 
OSL_CLOSURE_LAYER_ID 

Definition at line 40 of file kernel/osl/types.h.

Function Documentation

◆ make_string()

Variable Documentation

◆ DeviceString

CCL_NAMESPACE_BEGIN typedef const char* DeviceString

Definition at line 19 of file kernel/osl/types.h.

Referenced by make_string().