HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
BRAY_Types.h File Reference
#include "BRAY_API.h"
#include <UT/UT_StringHolder.h>
#include <GT/GT_Types.h>
+ Include dependency graph for BRAY_Types.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Macros

#define ENUM_FLAG(TOKEN)   BRAY_EVENT_##TOKEN = (1 << BRAY_EVENT_##TOKEN##_FLAG)
 
#define PROPERTY_LOOKUP(NAME, STYLE, ENUM)
 
#define ENUM_TO_MASK(TOKEN)   TOKEN = (1 << TOKEN##_ENUM)
 
#define INSTANTIATE(VAR, SIZE, IS_ARRAY)
 

Typedefs

using BRAYtime = float
 Consistent representation of time type within BRAY. More...
 
using BRAYmaterialId = int
 Consistent representation for material ids. More...
 

Enumerations

enum  {
  BRAY_EVENT_NEW_FLAG, BRAY_EVENT_DEL_FLAG, BRAY_EVENT_ATTRIB_P_FLAG, BRAY_EVENT_ATTRIB_FLAG,
  BRAY_EVENT_TOPOLOGY_FLAG, BRAY_EVENT_XFORM_FLAG, BRAY_EVENT_CONTENTS_FLAG, BRAY_EVENT_PROPERTIES_FLAG,
  BRAY_EVENT_MATERIAL_FLAG, BRAY_EVENT_TRACESET_FLAG, BRAY_EVENT_MAXFLAGS
}
 
enum  BRAY_EventType {
  BRAY_NO_EVENT = 0, ENUM_FLAG =(NEW), ENUM_FLAG =(NEW), ENUM_FLAG =(NEW),
  ENUM_FLAG =(NEW), ENUM_FLAG =(NEW), ENUM_FLAG =(NEW), ENUM_FLAG =(NEW),
  ENUM_FLAG =(NEW), ENUM_FLAG =(NEW), ENUM_FLAG =(NEW)
}
 Types of events that can be sent as updates to the renderer. More...
 
enum  BRAY_SceneOption {
  BRAY_OPT_RENDERER = 0, BRAY_OPT_VERSION, BRAY_OPT_ACCELERATOR, BRAY_OPT_SAMPLES_PER_PIXEL,
  BRAY_OPT_RAYBIAS, BRAY_OPT_SCREENDOOR_LIMIT, BRAY_OPT_FPS, BRAY_OPT_HD_FOREGROUND,
  BRAY_OPT_IPR_INC_RANDOM, BRAY_OPT_IPR_CONVERGENCE, BRAY_OPT_IPR_PROXY_DEPTH, BRAY_OPT_IPR_RESERVE_THREADS,
  BRAY_OPT_IPR_INTERACTION, BRAY_OPT_IPR_TILES_FOR_IMAGEFILTER, BRAY_OPT_IPR_TIME_FOR_IMAGEFILTER, BRAY_OPT_IPR_PROXY_FOR_IMAGEFILTER,
  BRAY_OPT_USECACHERATIO, BRAY_OPT_CACHERATIO, BRAY_OPT_CACHESIZE, BRAY_OPT_DISABLE_LIGHTING,
  BRAY_OPT_AO_SAMPLES, BRAY_OPT_AO_DISTANCE, BRAY_OPT_AO_COLORLIMIT, BRAY_OPT_DEPTHCUE_COLOR,
  BRAY_OPT_DEPTHCUE_ALPHA, BRAY_OPT_DEPTHCUE_Z, BRAY_OPT_LIGHT_SAMPLING_MODE, BRAY_OPT_LIGHT_SAMPLING_QUALITY,
  BRAY_OPT_COLOR_LIMIT, BRAY_OPT_RENDER_CAMERA, BRAY_OPT_DICING_CAMERA, BRAY_OPT_OFFSCREEN_QUALITY,
  BRAY_OPT_ENABLE_DOF, BRAY_OPT_RESOLUTION, BRAY_OPT_TILESIZE, BRAY_OPT_IMAGEFILTER,
  BRAY_OPT_SAMPLEFILTER, BRAY_OPT_PIXELORACLE, BRAY_OPT_RANDOMSEED, BRAY_OPT_ABORTMISSINGTEXTURE,
  BRAY_OPT_EMBREE_SSE, BRAY_OPT_EXPORTCOMPONENTS, BRAY_OPT_DIFFUSECOMPONENTS, BRAY_OPT_REFRACTCOMPONENTS,
  BRAY_OPT_VOLUMECOMPONENTS, BRAY_OPT_SSSCOMPONENTS, BRAY_OPT_DATAWINDOW, BRAY_OPT_PIXELASPECT,
  BRAY_OPT_MAX_SCENE_OPTIONS, BRAY_OPT_INVALID_SCENE = BRAY_OPT_MAX_SCENE_OPTIONS
}
 
enum  BRAY_ObjectProperty {
  BRAY_OBJ_MOTION_BLUR, BRAY_OBJ_GEO_VELBLUR, BRAY_OBJ_GEO_SAMPLES, BRAY_OBJ_XFORM_SAMPLES,
  BRAY_OBJ_DICING_QUALITY, BRAY_OBJ_DIFFUSE_SAMPLES, BRAY_OBJ_REFLECT_SAMPLES, BRAY_OBJ_REFRACT_SAMPLES,
  BRAY_OBJ_VOLUME_SAMPLES, BRAY_OBJ_SSS_SAMPLES, BRAY_OBJ_DIFFUSE_LIMIT, BRAY_OBJ_REFLECT_LIMIT,
  BRAY_OBJ_REFRACT_LIMIT, BRAY_OBJ_VOLUME_LIMIT, BRAY_OBJ_SSS_LIMIT, BRAY_OBJ_VOLUME_SAMPLING,
  BRAY_OBJ_VOLUME_STEP_RATE, BRAY_OBJ_VOLUME_UNIFORM, BRAY_OBJ_VOLUME_UNIFORM_DENSITY, BRAY_OBJ_VOLUME_UNIFORM_SAMPLES,
  BRAY_OBJ_VISIBILITY_MASK, BRAY_OBJ_ENABLE_LOFT, BRAY_OBJ_LOFT_PTS_THRESH, BRAY_OBJ_TRACESETS,
  BRAY_OBJ_LIGHT_CATEGORIES, BRAY_OBJ_IS_MATTE, BRAY_OBJ_POINT_STYLE, BRAY_OBJ_CURVE_STYLE,
  BRAY_OBJ_CURVE_BASIS, BRAY_OBJ_TREAT_AS_LIGHTSOURCE, BRAY_OBJ_IS_LIGHTSOURCE, BRAY_OBJ_LIGHTSOURCE_SAMPLING_QUALITY,
  BRAY_OBJ_SMOOTHP, BRAY_OBJ_HD_RPRIM_ID, BRAY_OBJ_RENDER_MASK, BRAY_OBJ_MAX_PROPERTIES,
  BRAY_OBJ_INVALID_PROPERTY = BRAY_OBJ_MAX_PROPERTIES
}
 
enum  BRAY_CameraProperty {
  BRAY_CAMERA_FOCAL, BRAY_CAMERA_APERTURE, BRAY_CAMERA_ASPECT, BRAY_CAMERA_ORTHO,
  BRAY_CAMERA_ORTHO_WIDTH, BRAY_CAMERA_CLIP, BRAY_CAMERA_SHUTTER, BRAY_CAMERA_FOCUS_DISTANCE,
  BRAY_CAMERA_FSTOP, BRAY_CAMERA_WINDOW, BRAY_CAMERA_MAX_PROPERTIES, BRAY_CAMERA_INVALID_PROPERTY = BRAY_CAMERA_MAX_PROPERTIES
}
 
enum  BRAY_LightProperty {
  BRAY_LIGHT_ENABLE, BRAY_LIGHT_AREA_SHAPE, BRAY_LIGHT_NORMALIZE_AREA, BRAY_LIGHT_AREA_SIZE,
  BRAY_LIGHT_ACTIVE_RADIUS, BRAY_LIGHT_AREA_MAP, BRAY_LIGHT_SHADOW_COLOR, BRAY_LIGHT_SHADOW_DISTANCE,
  BRAY_LIGHT_MIS_BIAS, BRAY_LIGHT_SAMPLING_QUALITY, BRAY_LIGHT_FORCE_UNIFORM_SAMPLING, BRAY_LIGHT_SHADOW_TRACESET,
  BRAY_LIGHT_CATEGORY, BRAY_LIGHT_HDRI_MAX_ISIZE, BRAY_LIGHT_DISTANT_BLUR, BRAY_LIGHT_DIFFUSE_SCALE,
  BRAY_LIGHT_SPECULAR_SCALE, BRAY_LIGHT_MAX_PROPERTIES, BRAY_LIGHT_INVALID_PROPERTY = BRAY_LIGHT_MAX_PROPERTIES
}
 
enum  BRAY_PlaneProperty {
  BRAY_PLANE_FILTER, BRAY_PLANE_SAMPLING, BRAY_PLANE_EXCLUDE_DCM, BRAY_PLANE_DISABLE,
  BRAY_PLANE_SEPARATE_FILE, BRAY_PLANE_DITHER, BRAY_PLANE_DEFAULT_VALUE, BRAY_PLANE_MAX_PROPERTIES,
  BRAY_PLANE_INVALID_PROPERTY = BRAY_PLANE_MAX_PROPERTIES
}
 
enum  BRAY_CommandProperty {
  BRAY_COMMAND_FRAME, BRAY_COMMAND_FRAME_COUNT, BRAY_COMMAND_FRAME_INC, BRAY_COMMAND_CHECKPOINT,
  BRAY_COMMAND_TIMELIMIT, BRAY_COMMAND_TIMELIMIT_IMAGE, BRAY_COMMAND_TIMELIMIT_NOSAVE_PARTIAL, BRAY_COMMAND_MAX_PROPERTIES,
  BRAY_COMMAND_INVALID_PROPERTY = BRAY_COMMAND_MAX_PROPERTIES
}
 Properties interpreted by the command line renderer. More...
 
enum  BRAY_PropertyType {
  BRAY_SCENE_PROPERTY, BRAY_OBJECT_PROPERTY, BRAY_LIGHT_PROPERTY, BRAY_CAMERA_PROPERTY,
  BRAY_PLANE_PROPERTY, BRAY_COMMAND_PROPERTY, BRAY_MAX_PROPERTY_TYPES, BRAY_INVALID_PROPERTY = BRAY_MAX_PROPERTY_TYPES
}
 
enum  BRAY_LightType {
  BRAY_LIGHT_POINT, BRAY_LIGHT_SPHERE, BRAY_LIGHT_RECT, BRAY_LIGHT_DISK,
  BRAY_LIGHT_CYLINDER, BRAY_LIGHT_LINE, BRAY_LIGHT_ENVIRONMENT, BRAY_LIGHT_DISTANT,
  BRAY_LIGHT_GEOMETRY, BRAY_LIGHT_UNDEFINED, BRAY_LIGHT_MAX = BRAY_LIGHT_UNDEFINED
}
 
enum  BRAY_InteractionType {
  BRAY_INTERACTION_NORMAL, BRAY_INTERACTION_FLIPBOOK, BRAY_INTERACTION_PLAYING, BRAY_INTERACTION_SCRUBBING,
  BRAY_INTERACTION_EDITING, BRAY_INTERACTION_TUMBLING, BRAY_INTERACTION_MAX_TYPES
}
 
enum  BRAY_LPEPrefix { BRAY_LPEPREFIX_NONE = 0x0000, BRAY_LPEPREFIX_UNOCCLUDED = 0x0001 }
 List of known LPE prefixes. More...
 
enum  BRAY_RayVisibilityEnum {
  BRAY_RAY_CAMERA_ENUM, BRAY_RAY_DIFFUSE_ENUM, BRAY_RAY_REFLECT_ENUM, BRAY_RAY_REFRACT_ENUM,
  BRAY_RAY_VOLUME_ENUM, BRAY_RAY_SHADOW_ENUM, BRAY_PROXY_CAMERA_ENUM, BRAY_PROXY_SHADOW_ENUM,
  BRAY_GUIDE_CAMERA_ENUM, BRAY_GUIDE_SHADOW_ENUM
}
 
enum  BRAY_RayVisibility {
  BRAY_RAY_NONE = 0, ENUM_TO_MASK =(BRAY_RAY_CAMERA), ENUM_TO_MASK =(BRAY_RAY_CAMERA), ENUM_TO_MASK =(BRAY_RAY_CAMERA),
  ENUM_TO_MASK =(BRAY_RAY_CAMERA), ENUM_TO_MASK =(BRAY_RAY_CAMERA), ENUM_TO_MASK =(BRAY_RAY_CAMERA), ENUM_TO_MASK =(BRAY_RAY_CAMERA),
  ENUM_TO_MASK =(BRAY_RAY_CAMERA), ENUM_TO_MASK =(BRAY_RAY_CAMERA), ENUM_TO_MASK =(BRAY_RAY_CAMERA), BRAY_ANY_CAMERA = (BRAY_RAY_CAMERA | BRAY_PROXY_CAMERA | BRAY_GUIDE_CAMERA),
  BRAY_ANY_SHADOW = (BRAY_RAY_SHADOW | BRAY_PROXY_SHADOW | BRAY_GUIDE_SHADOW), BRAY_RAY_ALL = 0xFFFF, BRAY_RAY_PROXY_MASK = (BRAY_PROXY_CAMERA|BRAY_PROXY_SHADOW), BRAY_RAY_GUIDE_MASK = (BRAY_GUIDE_CAMERA|BRAY_GUIDE_SHADOW),
  BRAY_RAY_RENDER_MASK
}
 Ray visibility flags. More...
 
enum  BRAY_MaterialMask { BRAY_MATMASK_NO_LIGHTSOURCE_EMISSION = (1 << 0) }
 Material evaluation flags. More...
 
enum  BRAY_VexRayImport {
  BRAY_RAYIMPORT_P, BRAY_RAYIMPORT_D, BRAY_RAYIMPORT_TIME, BRAY_RAYIMPORT_NEAR,
  BRAY_RAYIMPORT_FAR, BRAY_RAYIMPORT_MASK, BRAY_RAYIMPORT_CONTRIB, BRAY_RAYIMPORT_HIT_P,
  BRAY_RAYIMPORT_HIT_Pz, BRAY_RAYIMPORT_HIT_STACK, BRAY_RAYIMPORT_HIT_ELEM, BRAY_RAYIMPORT_HIT_PRIMID,
  BRAY_RAYIMPORT_HIT_COORD, BRAY_RAYIMPORT_HIT_DIST, BRAY_RAYIMPORT_HIT_DPDZ, BRAY_RAYIMPORT_HIT_N,
  BRAY_RAYIMPORT_HIT_Ng, BRAY_RAYIMPORT_HIT_FLAGS, BRAY_RAYIMPORT_LEVEL, BRAY_RAYIMPORT_HD_PRIM,
  BRAY_RAYIMPORT_HD_INST, BRAY_RAYIMPORT_INVALID
}
 

Functions

 UT_ASSERT_COMPILETIME (BRAY_EVENT_MAXFLAGS<=32)
 
BRAY_API UT_StringHolder BRAYeventType (BRAY_EventType type)
 Create a nice string for the event type mask. More...
 
BRAY_API const UT_StringHolderBRAYrendererName ()
 Return the name of the renderer. More...
 
BRAY_API const UT_StringHolderBRAYproperty (BRAY_PropertyType ty, int id)
 Look up the enum given a name. More...
 
BRAY_API int BRAYproperty (BRAY_PropertyType ty, const char *name)
 
BRAY_API exint BRAYpropertySize (BRAY_PropertyType ty, int id)
 
BRAY_API GT_Storage BRAYpropertyStorage (BRAY_PropertyType ty, int id)
 
bool BRAYisValid (BRAY_PropertyType ty, int id)
 
bool BRAYisValid (const std::pair< BRAY_PropertyType, int > &prop)
 
BRAY_API BRAY_PropertyType BRAYpropertyType (const char *name)
 Lookup a property type by name. More...
 
BRAY_API const UT_StringHolderBRAYpropertyType (BRAY_PropertyType id)
 Look up the name of a property type by the id. More...
 
BRAY_API std::pair
< BRAY_PropertyType, int
BRAYproperty (const char *token, BRAY_PropertyType style=BRAY_SCENE_PROPERTY)
 
BRAY_API const char * BRAYproperty (UT_WorkBuffer &storage, BRAY_PropertyType type, int property_id, const char *prefix="")
 
BRAY_API BRAY_LightType BRAYlightType (const char *name)
 
BRAY_API const UT_StringHolderBRAYlightType (BRAY_LightType o)
 
BRAY_API BRAY_InteractionType BRAYinteractionType (const char *name)
 
BRAY_API const UT_StringHolderBRAYinteractionType (BRAY_InteractionType t)
 
BRAY_API UT_StringHolder BRAYrayVisibility (BRAY_RayVisibility mask)
 
BRAY_API BRAY_VexRayImport BRAYrayImport (const UT_StringRef &n)
 
BRAY_API const char * BRAYrayImport (BRAY_VexRayImport t)
 
template<>
constexpr size_t BRAYmaxOptions< BRAY_SceneOption > ()
 
template<>
constexpr size_t BRAYmaxOptions< BRAY_ObjectProperty > ()
 
template<>
constexpr size_t BRAYmaxOptions< BRAY_LightProperty > ()
 
template<>
constexpr size_t BRAYmaxOptions< BRAY_CameraProperty > ()
 
template<>
constexpr size_t BRAYmaxOptions< BRAY_PlaneProperty > ()
 
template<>
constexpr size_t BRAYmaxOptions< BRAY_CommandProperty > ()
 
template<>
constexpr BRAY_PropertyType BRAYpropertyType< BRAY_SceneOption > ()
 
template<>
constexpr BRAY_PropertyType BRAYpropertyType< BRAY_ObjectProperty > ()
 
template<>
constexpr BRAY_PropertyType BRAYpropertyType< BRAY_LightProperty > ()
 
template<>
constexpr BRAY_PropertyType BRAYpropertyType< BRAY_CameraProperty > ()
 
template<>
constexpr BRAY_PropertyType BRAYpropertyType< BRAY_PlaneProperty > ()
 
template<>
constexpr BRAY_PropertyType BRAYpropertyType< BRAY_CommandProperty > ()
 

Macro Definition Documentation

#define ENUM_FLAG (   TOKEN)    BRAY_EVENT_##TOKEN = (1 << BRAY_EVENT_##TOKEN##_FLAG)

Definition at line 37 of file BRAY_Types.h.

#define ENUM_TO_MASK (   TOKEN)    TOKEN = (1 << TOKEN##_ENUM)

Definition at line 457 of file BRAY_Types.h.

#define INSTANTIATE (   VAR,
  SIZE,
  IS_ARRAY 
)
Value:
template <> inline constexpr size_t \
BRAYrayImportSize<VAR>() { return SIZE; } \
template <> inline constexpr bool \
BRAYrayImportIsArray<VAR>() { return IS_ARRAY; } \
/* end of macro */
#define SIZE
Definition: simple.C:40

Definition at line 559 of file BRAY_Types.h.

#define PROPERTY_LOOKUP (   NAME,
  STYLE,
  ENUM 
)
Value:
inline ENUM BRAY##NAME(const char *name) \
{ return ENUM(BRAYproperty(STYLE, name)); } \
inline const UT_StringHolder &BRAY##NAME(ENUM token) \
{ return BRAYproperty(STYLE, token); } \
inline exint BRAY##NAME##Size(ENUM token) \
{ return BRAYpropertySize(STYLE, token); } \
inline GT_Storage BRAY##NAME##Storage(ENUM token) \
{ return BRAYpropertyStorage(STYLE, token); } \
/* end of macro */
GT_Storage
Definition: GT_Types.h:18
GLuint const GLchar * name
Definition: glew.h:1814
BRAY_API GT_Storage BRAYpropertyStorage(BRAY_PropertyType ty, int id)
BRAY_API exint BRAYpropertySize(BRAY_PropertyType ty, int id)
int64 exint
Definition: SYS_Types.h:120
BRAY_API const UT_StringHolder & BRAYproperty(BRAY_PropertyType ty, int id)
Look up the enum given a name.

Definition at line 300 of file BRAY_Types.h.

Typedef Documentation

Consistent representation for material ids.

Definition at line 424 of file BRAY_Types.h.

using BRAYtime = float

Consistent representation of time type within BRAY.

Definition at line 421 of file BRAY_Types.h.

Enumeration Type Documentation

anonymous enum
Enumerator
BRAY_EVENT_NEW_FLAG 
BRAY_EVENT_DEL_FLAG 
BRAY_EVENT_ATTRIB_P_FLAG 
BRAY_EVENT_ATTRIB_FLAG 
BRAY_EVENT_TOPOLOGY_FLAG 
BRAY_EVENT_XFORM_FLAG 
BRAY_EVENT_CONTENTS_FLAG 
BRAY_EVENT_PROPERTIES_FLAG 
BRAY_EVENT_MATERIAL_FLAG 
BRAY_EVENT_TRACESET_FLAG 
BRAY_EVENT_MAXFLAGS 

Definition at line 20 of file BRAY_Types.h.

Enumerator
BRAY_CAMERA_FOCAL 
BRAY_CAMERA_APERTURE 
BRAY_CAMERA_ASPECT 
BRAY_CAMERA_ORTHO 
BRAY_CAMERA_ORTHO_WIDTH 
BRAY_CAMERA_CLIP 
BRAY_CAMERA_SHUTTER 
BRAY_CAMERA_FOCUS_DISTANCE 
BRAY_CAMERA_FSTOP 
BRAY_CAMERA_WINDOW 
BRAY_CAMERA_MAX_PROPERTIES 
BRAY_CAMERA_INVALID_PROPERTY 

Definition at line 193 of file BRAY_Types.h.

Properties interpreted by the command line renderer.

Enumerator
BRAY_COMMAND_FRAME 
BRAY_COMMAND_FRAME_COUNT 
BRAY_COMMAND_FRAME_INC 
BRAY_COMMAND_CHECKPOINT 
BRAY_COMMAND_TIMELIMIT 
BRAY_COMMAND_TIMELIMIT_IMAGE 
BRAY_COMMAND_TIMELIMIT_NOSAVE_PARTIAL 
BRAY_COMMAND_MAX_PROPERTIES 
BRAY_COMMAND_INVALID_PROPERTY 

Definition at line 249 of file BRAY_Types.h.

Types of events that can be sent as updates to the renderer.

Enumerator
BRAY_NO_EVENT 
ENUM_FLAG 
ENUM_FLAG 
ENUM_FLAG 
ENUM_FLAG 
ENUM_FLAG 
ENUM_FLAG 
ENUM_FLAG 
ENUM_FLAG 
ENUM_FLAG 
ENUM_FLAG 

Definition at line 39 of file BRAY_Types.h.

Enumerator
BRAY_INTERACTION_NORMAL 
BRAY_INTERACTION_FLIPBOOK 
BRAY_INTERACTION_PLAYING 
BRAY_INTERACTION_SCRUBBING 
BRAY_INTERACTION_EDITING 
BRAY_INTERACTION_TUMBLING 
BRAY_INTERACTION_MAX_TYPES 

Definition at line 405 of file BRAY_Types.h.

Enumerator
BRAY_LIGHT_ENABLE 
BRAY_LIGHT_AREA_SHAPE 
BRAY_LIGHT_NORMALIZE_AREA 
BRAY_LIGHT_AREA_SIZE 
BRAY_LIGHT_ACTIVE_RADIUS 
BRAY_LIGHT_AREA_MAP 
BRAY_LIGHT_SHADOW_COLOR 
BRAY_LIGHT_SHADOW_DISTANCE 
BRAY_LIGHT_MIS_BIAS 
BRAY_LIGHT_SAMPLING_QUALITY 
BRAY_LIGHT_FORCE_UNIFORM_SAMPLING 
BRAY_LIGHT_SHADOW_TRACESET 
BRAY_LIGHT_CATEGORY 
BRAY_LIGHT_HDRI_MAX_ISIZE 
BRAY_LIGHT_DISTANT_BLUR 
BRAY_LIGHT_DIFFUSE_SCALE 
BRAY_LIGHT_SPECULAR_SCALE 
BRAY_LIGHT_MAX_PROPERTIES 
BRAY_LIGHT_INVALID_PROPERTY 

Definition at line 210 of file BRAY_Types.h.

Enumerator
BRAY_LIGHT_POINT 
BRAY_LIGHT_SPHERE 
BRAY_LIGHT_RECT 
BRAY_LIGHT_DISK 
BRAY_LIGHT_CYLINDER 
BRAY_LIGHT_LINE 
BRAY_LIGHT_ENVIRONMENT 
BRAY_LIGHT_DISTANT 
BRAY_LIGHT_GEOMETRY 
BRAY_LIGHT_UNDEFINED 
BRAY_LIGHT_MAX 

Definition at line 386 of file BRAY_Types.h.

List of known LPE prefixes.

Enumerator
BRAY_LPEPREFIX_NONE 
BRAY_LPEPREFIX_UNOCCLUDED 

Definition at line 430 of file BRAY_Types.h.

Material evaluation flags.

Enumerator
BRAY_MATMASK_NO_LIGHTSOURCE_EMISSION 

Definition at line 507 of file BRAY_Types.h.

Note
If you add an object property, please update BRAY_HdUtil.C
Enumerator
BRAY_OBJ_MOTION_BLUR 
BRAY_OBJ_GEO_VELBLUR 
BRAY_OBJ_GEO_SAMPLES 
BRAY_OBJ_XFORM_SAMPLES 
BRAY_OBJ_DICING_QUALITY 
BRAY_OBJ_DIFFUSE_SAMPLES 
Note
: The order must match theBsdfBounceTypes in PBR_Types.h
BRAY_OBJ_REFLECT_SAMPLES 
Note
: The order must match theBsdfBounceTypes in PBR_Types.h
BRAY_OBJ_REFRACT_SAMPLES 
Note
: The order must match theBsdfBounceTypes in PBR_Types.h
BRAY_OBJ_VOLUME_SAMPLES 
Note
: The order must match theBsdfBounceTypes in PBR_Types.h
BRAY_OBJ_SSS_SAMPLES 
Note
: The order must match theBsdfBounceTypes in PBR_Types.h
BRAY_OBJ_DIFFUSE_LIMIT 
Note
: The order must match theBsdfBounceTypes in PBR_Types.h
BRAY_OBJ_REFLECT_LIMIT 
Note
: The order must match theBsdfBounceTypes in PBR_Types.h
BRAY_OBJ_REFRACT_LIMIT 
Note
: The order must match theBsdfBounceTypes in PBR_Types.h
BRAY_OBJ_VOLUME_LIMIT 
Note
: The order must match theBsdfBounceTypes in PBR_Types.h
BRAY_OBJ_SSS_LIMIT 
Note
: The order must match theBsdfBounceTypes in PBR_Types.h
BRAY_OBJ_VOLUME_SAMPLING 
BRAY_OBJ_VOLUME_STEP_RATE 
BRAY_OBJ_VOLUME_UNIFORM 
BRAY_OBJ_VOLUME_UNIFORM_DENSITY 
BRAY_OBJ_VOLUME_UNIFORM_SAMPLES 
BRAY_OBJ_VISIBILITY_MASK 
BRAY_OBJ_ENABLE_LOFT 
BRAY_OBJ_LOFT_PTS_THRESH 
BRAY_OBJ_TRACESETS 
BRAY_OBJ_LIGHT_CATEGORIES 
BRAY_OBJ_IS_MATTE 
BRAY_OBJ_POINT_STYLE 
BRAY_OBJ_CURVE_STYLE 
BRAY_OBJ_CURVE_BASIS 
BRAY_OBJ_TREAT_AS_LIGHTSOURCE 
BRAY_OBJ_IS_LIGHTSOURCE 
BRAY_OBJ_LIGHTSOURCE_SAMPLING_QUALITY 
BRAY_OBJ_SMOOTHP 
BRAY_OBJ_HD_RPRIM_ID 
BRAY_OBJ_RENDER_MASK 
BRAY_OBJ_MAX_PROPERTIES 
BRAY_OBJ_INVALID_PROPERTY 

Definition at line 136 of file BRAY_Types.h.

Enumerator
BRAY_PLANE_FILTER 
BRAY_PLANE_SAMPLING 
BRAY_PLANE_EXCLUDE_DCM 
BRAY_PLANE_DISABLE 
BRAY_PLANE_SEPARATE_FILE 
BRAY_PLANE_DITHER 
BRAY_PLANE_DEFAULT_VALUE 
BRAY_PLANE_MAX_PROPERTIES 
BRAY_PLANE_INVALID_PROPERTY 

Definition at line 234 of file BRAY_Types.h.

Enumerator
BRAY_SCENE_PROPERTY 
BRAY_OBJECT_PROPERTY 
BRAY_LIGHT_PROPERTY 
BRAY_CAMERA_PROPERTY 
BRAY_PLANE_PROPERTY 
BRAY_COMMAND_PROPERTY 
BRAY_MAX_PROPERTY_TYPES 
BRAY_INVALID_PROPERTY 

Definition at line 263 of file BRAY_Types.h.

Ray visibility flags.

Enumerator
BRAY_RAY_NONE 
ENUM_TO_MASK 
ENUM_TO_MASK 
ENUM_TO_MASK 
ENUM_TO_MASK 
ENUM_TO_MASK 
ENUM_TO_MASK 
ENUM_TO_MASK 
ENUM_TO_MASK 
ENUM_TO_MASK 
ENUM_TO_MASK 
BRAY_ANY_CAMERA 
BRAY_ANY_SHADOW 
BRAY_RAY_ALL 
BRAY_RAY_PROXY_MASK 
BRAY_RAY_GUIDE_MASK 
BRAY_RAY_RENDER_MASK 

Definition at line 459 of file BRAY_Types.h.

Enumerator
BRAY_RAY_CAMERA_ENUM 
BRAY_RAY_DIFFUSE_ENUM 
BRAY_RAY_REFLECT_ENUM 
BRAY_RAY_REFRACT_ENUM 
BRAY_RAY_VOLUME_ENUM 
BRAY_RAY_SHADOW_ENUM 
BRAY_PROXY_CAMERA_ENUM 
BRAY_PROXY_SHADOW_ENUM 
BRAY_GUIDE_CAMERA_ENUM 
BRAY_GUIDE_SHADOW_ENUM 

Definition at line 441 of file BRAY_Types.h.

Option tokens used at the "global" (scene) level

Note
If you add an scene option, please update BRAY_HdUtil.C
Enumerator
BRAY_OPT_RENDERER 
BRAY_OPT_VERSION 
BRAY_OPT_ACCELERATOR 
BRAY_OPT_SAMPLES_PER_PIXEL 
BRAY_OPT_RAYBIAS 
BRAY_OPT_SCREENDOOR_LIMIT 
BRAY_OPT_FPS 
BRAY_OPT_HD_FOREGROUND 
BRAY_OPT_IPR_INC_RANDOM 
BRAY_OPT_IPR_CONVERGENCE 
BRAY_OPT_IPR_PROXY_DEPTH 
BRAY_OPT_IPR_RESERVE_THREADS 
BRAY_OPT_IPR_INTERACTION 
BRAY_OPT_IPR_TILES_FOR_IMAGEFILTER 
BRAY_OPT_IPR_TIME_FOR_IMAGEFILTER 
BRAY_OPT_IPR_PROXY_FOR_IMAGEFILTER 
BRAY_OPT_USECACHERATIO 
BRAY_OPT_CACHERATIO 
BRAY_OPT_CACHESIZE 
BRAY_OPT_DISABLE_LIGHTING 
BRAY_OPT_AO_SAMPLES 
BRAY_OPT_AO_DISTANCE 
BRAY_OPT_AO_COLORLIMIT 
BRAY_OPT_DEPTHCUE_COLOR 
BRAY_OPT_DEPTHCUE_ALPHA 
BRAY_OPT_DEPTHCUE_Z 
BRAY_OPT_LIGHT_SAMPLING_MODE 
BRAY_OPT_LIGHT_SAMPLING_QUALITY 
BRAY_OPT_COLOR_LIMIT 
BRAY_OPT_RENDER_CAMERA 
BRAY_OPT_DICING_CAMERA 
BRAY_OPT_OFFSCREEN_QUALITY 
BRAY_OPT_ENABLE_DOF 
BRAY_OPT_RESOLUTION 
BRAY_OPT_TILESIZE 
BRAY_OPT_IMAGEFILTER 
BRAY_OPT_SAMPLEFILTER 
BRAY_OPT_PIXELORACLE 
BRAY_OPT_RANDOMSEED 
BRAY_OPT_ABORTMISSINGTEXTURE 
BRAY_OPT_EMBREE_SSE 
BRAY_OPT_EXPORTCOMPONENTS 
BRAY_OPT_DIFFUSECOMPONENTS 
BRAY_OPT_REFRACTCOMPONENTS 
BRAY_OPT_VOLUMECOMPONENTS 
BRAY_OPT_SSSCOMPONENTS 
BRAY_OPT_DATAWINDOW 
BRAY_OPT_PIXELASPECT 
BRAY_OPT_MAX_SCENE_OPTIONS 
BRAY_OPT_INVALID_SCENE 

Definition at line 66 of file BRAY_Types.h.

Enumerator
BRAY_RAYIMPORT_P 
BRAY_RAYIMPORT_D 
BRAY_RAYIMPORT_TIME 
BRAY_RAYIMPORT_NEAR 
BRAY_RAYIMPORT_FAR 
BRAY_RAYIMPORT_MASK 
BRAY_RAYIMPORT_CONTRIB 
BRAY_RAYIMPORT_HIT_P 
BRAY_RAYIMPORT_HIT_Pz 
BRAY_RAYIMPORT_HIT_STACK 
BRAY_RAYIMPORT_HIT_ELEM 
BRAY_RAYIMPORT_HIT_PRIMID 
BRAY_RAYIMPORT_HIT_COORD 
BRAY_RAYIMPORT_HIT_DIST 
BRAY_RAYIMPORT_HIT_DPDZ 
BRAY_RAYIMPORT_HIT_N 
BRAY_RAYIMPORT_HIT_Ng 
BRAY_RAYIMPORT_HIT_FLAGS 
BRAY_RAYIMPORT_LEVEL 
BRAY_RAYIMPORT_HD_PRIM 
BRAY_RAYIMPORT_HD_INST 
BRAY_RAYIMPORT_INVALID 

Definition at line 512 of file BRAY_Types.h.

Function Documentation

BRAY_API UT_StringHolder BRAYeventType ( BRAY_EventType  type)

Create a nice string for the event type mask.

BRAY_API BRAY_InteractionType BRAYinteractionType ( const char *  name)
BRAY_API const UT_StringHolder& BRAYinteractionType ( BRAY_InteractionType  t)
bool BRAYisValid ( BRAY_PropertyType  ty,
int  id 
)
inline

Definition at line 288 of file BRAY_Types.h.

bool BRAYisValid ( const std::pair< BRAY_PropertyType, int > &  prop)
inline

Definition at line 295 of file BRAY_Types.h.

BRAY_API BRAY_LightType BRAYlightType ( const char *  name)
template<>
constexpr size_t BRAYmaxOptions< BRAY_CameraProperty > ( )
inline

Generic method to return the number of options given an enum

Definition at line 359 of file BRAY_Types.h.

template<>
constexpr size_t BRAYmaxOptions< BRAY_CommandProperty > ( )
inline

Generic method to return the number of options given an enum

Definition at line 363 of file BRAY_Types.h.

template<>
constexpr size_t BRAYmaxOptions< BRAY_LightProperty > ( )
inline

Generic method to return the number of options given an enum

Definition at line 357 of file BRAY_Types.h.

template<>
constexpr size_t BRAYmaxOptions< BRAY_ObjectProperty > ( )
inline

Generic method to return the number of options given an enum

Definition at line 355 of file BRAY_Types.h.

template<>
constexpr size_t BRAYmaxOptions< BRAY_PlaneProperty > ( )
inline

Generic method to return the number of options given an enum

Definition at line 361 of file BRAY_Types.h.

template<>
constexpr size_t BRAYmaxOptions< BRAY_SceneOption > ( )
inline

Generic method to return the number of options given an enum

Definition at line 353 of file BRAY_Types.h.

BRAY_API const UT_StringHolder& BRAYproperty ( BRAY_PropertyType  ty,
int  id 
)

Look up the enum given a name.

BRAY_API int BRAYproperty ( BRAY_PropertyType  ty,
const char *  name 
)
BRAY_API std::pair<BRAY_PropertyType, int> BRAYproperty ( const char *  token,
BRAY_PropertyType  style = BRAY_SCENE_PROPERTY 
)

This function will resolve generic names to the appropriate property type and property identifier. For example: "plane:filter" -> {BRAY_PLANE_PROPERTY, BRAY_PLANE_FILTER} "camera:focal" -> {BRAY_CAMERA_PROPERTY, BRAY_CAMERA_FOCAL} "global:tilesize" -> {BRAY_SCENE_PROPERTY, BRAY_OPT_TILESIZE} If the token doesn't map to a property, the function will return an invalid pair (i.e. BRAYisValid(result) == false).

If the token isn't prefixed with a property type, the default_style will be used. For example, with the default of BRAY_SCENE_PROPERTY: "tilesize" -> { BRAY_SCENE_PROPERTY, BRAY_OPT_TILESIZE } "focal" -> {invalid_property_pair} (error - not a scene property)

BRAY_API const char* BRAYproperty ( UT_WorkBuffer storage,
BRAY_PropertyType  type,
int  property_id,
const char *  prefix = "" 
)

Given a property type, this will compose a name string that fully qualifies the property. This is a string that would be suitable for BRAYlookupProperty(). This may return a nullptr.

BRAY_API exint BRAYpropertySize ( BRAY_PropertyType  ty,
int  id 
)
BRAY_API GT_Storage BRAYpropertyStorage ( BRAY_PropertyType  ty,
int  id 
)
BRAY_API BRAY_PropertyType BRAYpropertyType ( const char *  name)

Lookup a property type by name.

BRAY_API const UT_StringHolder& BRAYpropertyType ( BRAY_PropertyType  id)

Look up the name of a property type by the id.

template<>
constexpr BRAY_PropertyType BRAYpropertyType< BRAY_CameraProperty > ( )
inline

Generic method to find the valud of the property type enum given the enum

Definition at line 378 of file BRAY_Types.h.

template<>
constexpr BRAY_PropertyType BRAYpropertyType< BRAY_CommandProperty > ( )
inline

Generic method to find the valud of the property type enum given the enum

Definition at line 382 of file BRAY_Types.h.

template<>
constexpr BRAY_PropertyType BRAYpropertyType< BRAY_LightProperty > ( )
inline

Generic method to find the valud of the property type enum given the enum

Definition at line 376 of file BRAY_Types.h.

template<>
constexpr BRAY_PropertyType BRAYpropertyType< BRAY_ObjectProperty > ( )
inline

Generic method to find the valud of the property type enum given the enum

Definition at line 374 of file BRAY_Types.h.

template<>
constexpr BRAY_PropertyType BRAYpropertyType< BRAY_PlaneProperty > ( )
inline

Generic method to find the valud of the property type enum given the enum

Definition at line 380 of file BRAY_Types.h.

template<>
constexpr BRAY_PropertyType BRAYpropertyType< BRAY_SceneOption > ( )
inline

Generic method to find the valud of the property type enum given the enum

Definition at line 372 of file BRAY_Types.h.

BRAY_API BRAY_VexRayImport BRAYrayImport ( const UT_StringRef n)
BRAY_API const char* BRAYrayImport ( BRAY_VexRayImport  t)
BRAY_API UT_StringHolder BRAYrayVisibility ( BRAY_RayVisibility  mask)
BRAY_API const UT_StringHolder& BRAYrendererName ( )

Return the name of the renderer.

UT_ASSERT_COMPILETIME ( BRAY_EVENT_MAXFLAGS<=  32)