HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
rtcore_common.h File Reference
#include <stddef.h>
#include <sys/types.h>
#include <stdbool.h>
#include "rtcore_config.h"
+ Include dependency graph for rtcore_common.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  RTCFilterFunctionNArguments
 
struct  RTCIntersectContext
 

Macros

#define RTC_ALIGN(...)   __attribute__((aligned(__VA_ARGS__)))
 
#define RTC_DEPRECATED
 
#define RTC_FORCEINLINE   inline __attribute__((always_inline))
 
#define RTC_INVALID_GEOMETRY_ID   ((unsigned int)-1)
 
#define RTC_MAX_TIME_STEP_COUNT   129
 

Typedefs

typedef void(* RTCFilterFunctionN )(const struct RTCFilterFunctionNArguments *args)
 
typedef bool(* RTCPointQueryFunction )(struct RTCPointQueryFunctionArguments *args)
 

Enumerations

enum  RTCFormat {
  RTC_FORMAT_UNDEFINED = 0, RTC_FORMAT_UCHAR = 0x1001, RTC_FORMAT_UCHAR2, RTC_FORMAT_UCHAR3,
  RTC_FORMAT_UCHAR4, RTC_FORMAT_CHAR = 0x2001, RTC_FORMAT_CHAR2, RTC_FORMAT_CHAR3,
  RTC_FORMAT_CHAR4, RTC_FORMAT_USHORT = 0x3001, RTC_FORMAT_USHORT2, RTC_FORMAT_USHORT3,
  RTC_FORMAT_USHORT4, RTC_FORMAT_SHORT = 0x4001, RTC_FORMAT_SHORT2, RTC_FORMAT_SHORT3,
  RTC_FORMAT_SHORT4, RTC_FORMAT_UINT = 0x5001, RTC_FORMAT_UINT2, RTC_FORMAT_UINT3,
  RTC_FORMAT_UINT4, RTC_FORMAT_INT = 0x6001, RTC_FORMAT_INT2, RTC_FORMAT_INT3,
  RTC_FORMAT_INT4, RTC_FORMAT_ULLONG = 0x7001, RTC_FORMAT_ULLONG2, RTC_FORMAT_ULLONG3,
  RTC_FORMAT_ULLONG4, RTC_FORMAT_LLONG = 0x8001, RTC_FORMAT_LLONG2, RTC_FORMAT_LLONG3,
  RTC_FORMAT_LLONG4, RTC_FORMAT_FLOAT = 0x9001, RTC_FORMAT_FLOAT2, RTC_FORMAT_FLOAT3,
  RTC_FORMAT_FLOAT4, RTC_FORMAT_FLOAT5, RTC_FORMAT_FLOAT6, RTC_FORMAT_FLOAT7,
  RTC_FORMAT_FLOAT8, RTC_FORMAT_FLOAT9, RTC_FORMAT_FLOAT10, RTC_FORMAT_FLOAT11,
  RTC_FORMAT_FLOAT12, RTC_FORMAT_FLOAT13, RTC_FORMAT_FLOAT14, RTC_FORMAT_FLOAT15,
  RTC_FORMAT_FLOAT16, RTC_FORMAT_FLOAT2X2_ROW_MAJOR = 0x9122, RTC_FORMAT_FLOAT2X3_ROW_MAJOR = 0x9123, RTC_FORMAT_FLOAT2X4_ROW_MAJOR = 0x9124,
  RTC_FORMAT_FLOAT3X2_ROW_MAJOR = 0x9132, RTC_FORMAT_FLOAT3X3_ROW_MAJOR = 0x9133, RTC_FORMAT_FLOAT3X4_ROW_MAJOR = 0x9134, RTC_FORMAT_FLOAT4X2_ROW_MAJOR = 0x9142,
  RTC_FORMAT_FLOAT4X3_ROW_MAJOR = 0x9143, RTC_FORMAT_FLOAT4X4_ROW_MAJOR = 0x9144, RTC_FORMAT_FLOAT2X2_COLUMN_MAJOR = 0x9222, RTC_FORMAT_FLOAT2X3_COLUMN_MAJOR = 0x9223,
  RTC_FORMAT_FLOAT2X4_COLUMN_MAJOR = 0x9224, RTC_FORMAT_FLOAT3X2_COLUMN_MAJOR = 0x9232, RTC_FORMAT_FLOAT3X3_COLUMN_MAJOR = 0x9233, RTC_FORMAT_FLOAT3X4_COLUMN_MAJOR = 0x9234,
  RTC_FORMAT_FLOAT4X2_COLUMN_MAJOR = 0x9242, RTC_FORMAT_FLOAT4X3_COLUMN_MAJOR = 0x9243, RTC_FORMAT_FLOAT4X4_COLUMN_MAJOR = 0x9244, RTC_FORMAT_GRID = 0xA001
}
 
enum  RTCBuildQuality { RTC_BUILD_QUALITY_LOW = 0, RTC_BUILD_QUALITY_MEDIUM = 1, RTC_BUILD_QUALITY_HIGH = 2, RTC_BUILD_QUALITY_REFIT = 3 }
 
enum  RTCIntersectContextFlags { RTC_INTERSECT_CONTEXT_FLAG_NONE = 0, RTC_INTERSECT_CONTEXT_FLAG_INCOHERENT = (0 << 0), RTC_INTERSECT_CONTEXT_FLAG_COHERENT = (1 << 0) }
 

Functions

struct RTC_ALIGN (16) RTCBounds
 
RTC_FORCEINLINE void rtcInitIntersectContext (struct RTCIntersectContext *context)
 
struct RTC_ALIGN (32) RTCPointQuery8
 
struct RTC_ALIGN (64) RTCPointQuery16
 
RTC_FORCEINLINE void rtcInitPointQueryContext (struct RTCPointQueryContext *context)
 

Macro Definition Documentation

#define RTC_ALIGN (   ...)    __attribute__((aligned(__VA_ARGS__)))

Definition at line 25 of file rtcore_common.h.

#define RTC_DEPRECATED

Definition at line 34 of file rtcore_common.h.

#define RTC_FORCEINLINE   inline __attribute__((always_inline))

Definition at line 41 of file rtcore_common.h.

#define RTC_INVALID_GEOMETRY_ID   ((unsigned int)-1)

Definition at line 45 of file rtcore_common.h.

#define RTC_MAX_TIME_STEP_COUNT   129

Definition at line 48 of file rtcore_common.h.

Typedef Documentation

typedef void(* RTCFilterFunctionN)(const struct RTCFilterFunctionNArguments *args)

Definition at line 190 of file rtcore_common.h.

typedef bool(* RTCPointQueryFunction)(struct RTCPointQueryFunctionArguments *args)

Definition at line 324 of file rtcore_common.h.

Enumeration Type Documentation

Enumerator
RTC_BUILD_QUALITY_LOW 
RTC_BUILD_QUALITY_MEDIUM 
RTC_BUILD_QUALITY_HIGH 
RTC_BUILD_QUALITY_REFIT 

Definition at line 148 of file rtcore_common.h.

enum RTCFormat
Enumerator
RTC_FORMAT_UNDEFINED 
RTC_FORMAT_UCHAR 
RTC_FORMAT_UCHAR2 
RTC_FORMAT_UCHAR3 
RTC_FORMAT_UCHAR4 
RTC_FORMAT_CHAR 
RTC_FORMAT_CHAR2 
RTC_FORMAT_CHAR3 
RTC_FORMAT_CHAR4 
RTC_FORMAT_USHORT 
RTC_FORMAT_USHORT2 
RTC_FORMAT_USHORT3 
RTC_FORMAT_USHORT4 
RTC_FORMAT_SHORT 
RTC_FORMAT_SHORT2 
RTC_FORMAT_SHORT3 
RTC_FORMAT_SHORT4 
RTC_FORMAT_UINT 
RTC_FORMAT_UINT2 
RTC_FORMAT_UINT3 
RTC_FORMAT_UINT4 
RTC_FORMAT_INT 
RTC_FORMAT_INT2 
RTC_FORMAT_INT3 
RTC_FORMAT_INT4 
RTC_FORMAT_ULLONG 
RTC_FORMAT_ULLONG2 
RTC_FORMAT_ULLONG3 
RTC_FORMAT_ULLONG4 
RTC_FORMAT_LLONG 
RTC_FORMAT_LLONG2 
RTC_FORMAT_LLONG3 
RTC_FORMAT_LLONG4 
RTC_FORMAT_FLOAT 
RTC_FORMAT_FLOAT2 
RTC_FORMAT_FLOAT3 
RTC_FORMAT_FLOAT4 
RTC_FORMAT_FLOAT5 
RTC_FORMAT_FLOAT6 
RTC_FORMAT_FLOAT7 
RTC_FORMAT_FLOAT8 
RTC_FORMAT_FLOAT9 
RTC_FORMAT_FLOAT10 
RTC_FORMAT_FLOAT11 
RTC_FORMAT_FLOAT12 
RTC_FORMAT_FLOAT13 
RTC_FORMAT_FLOAT14 
RTC_FORMAT_FLOAT15 
RTC_FORMAT_FLOAT16 
RTC_FORMAT_FLOAT2X2_ROW_MAJOR 
RTC_FORMAT_FLOAT2X3_ROW_MAJOR 
RTC_FORMAT_FLOAT2X4_ROW_MAJOR 
RTC_FORMAT_FLOAT3X2_ROW_MAJOR 
RTC_FORMAT_FLOAT3X3_ROW_MAJOR 
RTC_FORMAT_FLOAT3X4_ROW_MAJOR 
RTC_FORMAT_FLOAT4X2_ROW_MAJOR 
RTC_FORMAT_FLOAT4X3_ROW_MAJOR 
RTC_FORMAT_FLOAT4X4_ROW_MAJOR 
RTC_FORMAT_FLOAT2X2_COLUMN_MAJOR 
RTC_FORMAT_FLOAT2X3_COLUMN_MAJOR 
RTC_FORMAT_FLOAT2X4_COLUMN_MAJOR 
RTC_FORMAT_FLOAT3X2_COLUMN_MAJOR 
RTC_FORMAT_FLOAT3X3_COLUMN_MAJOR 
RTC_FORMAT_FLOAT3X4_COLUMN_MAJOR 
RTC_FORMAT_FLOAT4X2_COLUMN_MAJOR 
RTC_FORMAT_FLOAT4X3_COLUMN_MAJOR 
RTC_FORMAT_FLOAT4X4_COLUMN_MAJOR 
RTC_FORMAT_GRID 

Definition at line 51 of file rtcore_common.h.

Enumerator
RTC_INTERSECT_CONTEXT_FLAG_NONE 
RTC_INTERSECT_CONTEXT_FLAG_INCOHERENT 
RTC_INTERSECT_CONTEXT_FLAG_COHERENT 

Definition at line 171 of file rtcore_common.h.

Function Documentation

struct RTC_ALIGN ( 16  )

Definition at line 157 of file rtcore_common.h.

struct RTC_ALIGN ( 64  )

Definition at line 257 of file rtcore_common.h.

struct RTC_ALIGN ( 32  )

Definition at line 247 of file rtcore_common.h.

RTC_FORCEINLINE void rtcInitIntersectContext ( struct RTCIntersectContext context)

Definition at line 209 of file rtcore_common.h.

RTC_FORCEINLINE void rtcInitPointQueryContext ( struct RTCPointQueryContext *  context)

Definition at line 286 of file rtcore_common.h.