#pragma once
#include "rtcore.h"
namespace embree {
namespace instance_id_stack {
static_assert …;
template<typename Context>
RTC_FORCEINLINE bool push(Context context,
unsigned instanceId,
unsigned instancePrimId)
{ … }
template<typename Context>
RTC_FORCEINLINE void pop(Context context)
{ … }
RTC_FORCEINLINE bool push(RTCPointQueryContext* context,
unsigned int instanceId,
unsigned int instancePrimId,
AffineSpace3fa const& w2i,
AffineSpace3fa const& i2w)
{ … }
template<>
RTC_FORCEINLINE void pop(RTCPointQueryContext* context)
{ … }
RTC_FORCEINLINE void copy_UU(const unsigned* src, unsigned* tgt)
{ … }
RTC_FORCEINLINE void copy_UU(const RTCRayQueryContext* context, const unsigned* src, unsigned* tgt)
{ … }
template <int K>
RTC_FORCEINLINE void copy_UV(const unsigned* src, vuint<K>* tgt)
{ … }
template <int K>
RTC_FORCEINLINE void copy_UV(const unsigned* src, vuint<K>* tgt, size_t j)
{ … }
template <int K>
RTC_FORCEINLINE void copy_UV(const unsigned* src, vuint<K>* tgt, const vbool<K>& mask)
{ … }
template <int K>
RTC_FORCEINLINE void copy_VU(const vuint<K>* src, unsigned* tgt, size_t i)
{ … }
template <int K>
RTC_FORCEINLINE void copy_VV(const vuint<K>* src, vuint<K>* tgt, size_t i, size_t j)
{ … }
template <int K>
RTC_FORCEINLINE void copy_VV(const vuint<K>* src, vuint<K>* tgt, const vbool<K>& mask)
{ … }
}
}