本文整理汇总了C++中RTCORE_TRACE函数的典型用法代码示例。如果您正苦于以下问题:C++ RTCORE_TRACE函数的具体用法?C++ RTCORE_TRACE怎么用?C++ RTCORE_TRACE使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了RTCORE_TRACE函数的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。
示例1: rtcCommitThread
RTCORE_API void rtcCommitThread(RTCScene hscene, unsigned int threadID, unsigned int numThreads)
{
Scene* scene = (Scene*) hscene;
RTCORE_CATCH_BEGIN;
RTCORE_TRACE(rtcCommitThread);
RTCORE_VERIFY_HANDLE(hscene);
if (unlikely(numThreads == 0))
throw_RTCError(RTC_INVALID_OPERATION,"invalid number of threads specified");
#if defined(__MIC__)
if (unlikely(numThreads % 4 != 0 && numThreads != 1))
throw_RTCError(RTC_INVALID_OPERATION,"MIC requires numThreads % 4 == 0 in rtcCommitThread");
#endif
/* for best performance set FTZ and DAZ flags in the MXCSR control and status register */
#if !defined(__MIC__)
unsigned int mxcsr = _mm_getcsr();
_mm_setcsr(mxcsr | /* FTZ */ (1<<15) | /* DAZ */ (1<<6));
#endif
/* perform scene build */
scene->build(threadID,numThreads);
/* reset MXCSR register again */
#if !defined(__MIC__)
_mm_setcsr(mxcsr);
#endif
RTCORE_CATCH_END(scene->device);
}
开发者ID:eyalsoreq,项目名称:embree,代码行数:31,代码来源:rtcore.cpp
示例2: rtcSetErrorFunction
RTCORE_API void rtcSetErrorFunction(RTCErrorFunc func)
{
RTCORE_CATCH_BEGIN;
RTCORE_TRACE(rtcSetErrorFunction);
assert(g_device);
if (g_device) g_device->error_function = func;
RTCORE_CATCH_END(g_device);
}
开发者ID:eyalsoreq,项目名称:embree,代码行数:8,代码来源:rtcore.cpp
示例3: rtcSetParameter1i
RTCORE_API void rtcSetParameter1i(const RTCParameter parm, ssize_t val)
{
RTCORE_CATCH_BEGIN;
RTCORE_TRACE(rtcSetParameter1i);
Lock<MutexSys> lock(g_mutex);
if (g_device) g_device->setParameter1i(parm,val);
RTCORE_CATCH_END(g_device);
}
开发者ID:eyalsoreq,项目名称:embree,代码行数:8,代码来源:rtcore.cpp
示例4: rtcDeviceSetMemoryMonitorFunction
RTCORE_API void rtcDeviceSetMemoryMonitorFunction(RTCDevice hdevice, RTCMemoryMonitorFunc func)
{
Device* device = (Device*) hdevice;
RTCORE_CATCH_BEGIN;
RTCORE_TRACE(rtcDeviceSetMemoryMonitorFunction);
device->memory_monitor_function = func;
RTCORE_CATCH_END(device);
}
开发者ID:eyalsoreq,项目名称:embree,代码行数:8,代码来源:rtcore.cpp
示例5: rtcSetMemoryMonitorFunction
RTCORE_API void rtcSetMemoryMonitorFunction(RTCMemoryMonitorFunc func)
{
RTCORE_CATCH_BEGIN;
RTCORE_TRACE(rtcSetMemoryMonitorFunction);
assert(g_device);
if (g_device) g_device->memory_monitor_function = func;
RTCORE_CATCH_END(g_device);
}
开发者ID:eyalsoreq,项目名称:embree,代码行数:8,代码来源:rtcore.cpp
示例6: rtcInit
RTCORE_API void rtcInit(const char* cfg)
{
RTCORE_CATCH_BEGIN;
RTCORE_TRACE(rtcInit);
Lock<MutexSys> lock(g_mutex);
if (g_device) throw_RTCError(RTC_INVALID_OPERATION,"already initialized");
g_device = new Device(cfg,true);
RTCORE_CATCH_END(g_device);
}
开发者ID:eyalsoreq,项目名称:embree,代码行数:9,代码来源:rtcore.cpp
示例7: rtcDeleteDevice
RTCORE_API void rtcDeleteDevice(RTCDevice device)
{
RTCORE_CATCH_BEGIN;
RTCORE_TRACE(rtcDeleteDevice);
RTCORE_VERIFY_HANDLE(device);
Lock<MutexSys> lock(g_mutex);
delete (Device*) device;
RTCORE_CATCH_END_NOREPORT;
}
开发者ID:eyalsoreq,项目名称:embree,代码行数:9,代码来源:rtcore.cpp
示例8: rtcSetProgressMonitorFunction
RTCORE_API void rtcSetProgressMonitorFunction(RTCScene hscene, RTCProgressMonitorFunc func, void* ptr)
{
Scene* scene = (Scene*) hscene;
RTCORE_CATCH_BEGIN;
RTCORE_TRACE(rtcSetProgressMonitorFunction);
RTCORE_VERIFY_HANDLE(hscene);
scene->setProgressMonitorFunction(func,ptr);
RTCORE_CATCH_END(scene->device);
}
开发者ID:eyalsoreq,项目名称:embree,代码行数:9,代码来源:rtcore.cpp
示例9: rtcDeviceSetErrorFunction
RTCORE_API void rtcDeviceSetErrorFunction(RTCDevice hdevice, RTCErrorFunc func)
{
Device* device = (Device*) hdevice;
RTCORE_CATCH_BEGIN;
RTCORE_TRACE(rtcDeviceSetErrorFunction);
RTCORE_VERIFY_HANDLE(hdevice);
device->error_function = func;
RTCORE_CATCH_END(device);
}
开发者ID:eyalsoreq,项目名称:embree,代码行数:9,代码来源:rtcore.cpp
示例10: rtcExit
RTCORE_API void rtcExit()
{
RTCORE_CATCH_BEGIN;
RTCORE_TRACE(rtcExit);
Lock<MutexSys> lock(g_mutex);
if (!g_device) throw_RTCError(RTC_INVALID_OPERATION,"rtcInit has to get called before rtcExit");
delete g_device; g_device = nullptr;
RTCORE_CATCH_END(g_device);
}
开发者ID:eyalsoreq,项目名称:embree,代码行数:9,代码来源:rtcore.cpp
示例11: ispcSetIntersectFunction16
extern "C" void ispcSetIntersectFunction16 (RTCScene hscene, unsigned geomID, RTCIntersectFunc16 intersect)
{
Scene* scene = (Scene*) hscene;
RTCORE_CATCH_BEGIN;
RTCORE_TRACE(rtcSetIntersectFunction16);
RTCORE_VERIFY_HANDLE(scene);
RTCORE_VERIFY_GEOMID(geomID);
((Scene*)scene)->get_locked(geomID)->setIntersectFunction16(intersect,true);
RTCORE_CATCH_END(scene->device);
}
开发者ID:Dade916,项目名称:embree,代码行数:10,代码来源:rtcore_ispc.cpp
示例12: ispcSetOccludedFunction8
extern "C" void ispcSetOccludedFunction8 (RTCScene hscene, unsigned geomID, RTCOccludedFunc8 occluded)
{
Scene* scene = (Scene*) hscene;
RTCORE_CATCH_BEGIN;
RTCORE_TRACE(rtcSetOccludedFunction8);
RTCORE_VERIFY_HANDLE(scene);
RTCORE_VERIFY_GEOMID(geomID);
((Scene*)scene)->get_locked(geomID)->setOccludedFunction8(occluded,true);
RTCORE_CATCH_END(scene->device);
}
开发者ID:Dade916,项目名称:embree,代码行数:10,代码来源:rtcore_ispc.cpp
示例13: rtcDeviceNewScene
RTCORE_API RTCScene rtcDeviceNewScene (RTCDevice device, RTCSceneFlags flags, RTCAlgorithmFlags aflags)
{
RTCORE_CATCH_BEGIN;
RTCORE_TRACE(rtcDeviceNewScene);
RTCORE_VERIFY_HANDLE(device);
if (!isCoherent(flags) && !isIncoherent(flags)) flags = RTCSceneFlags(flags | RTC_SCENE_INCOHERENT);
return (RTCScene) new Scene((Device*)device,flags,aflags);
RTCORE_CATCH_END((Device*)device);
return nullptr;
}
开发者ID:eyalsoreq,项目名称:embree,代码行数:10,代码来源:rtcore.cpp
示例14: rtcNewScene
RTCORE_API RTCScene rtcNewScene (RTCSceneFlags flags, RTCAlgorithmFlags aflags)
{
RTCORE_CATCH_BEGIN;
RTCORE_TRACE(rtcNewScene);
assert(g_device);
if (!isCoherent(flags) && !isIncoherent(flags)) flags = RTCSceneFlags(flags | RTC_SCENE_INCOHERENT);
return (RTCScene) new Scene(g_device,flags,aflags);
RTCORE_CATCH_END(g_device);
return nullptr;
}
开发者ID:eyalsoreq,项目名称:embree,代码行数:10,代码来源:rtcore.cpp
示例15: ispcSetOcclusionFilterFunction16
extern "C" void ispcSetOcclusionFilterFunction16 (RTCScene hscene, unsigned geomID, RTCFilterFunc16 filter)
{
Scene* scene = (Scene*) hscene;
RTCORE_CATCH_BEGIN;
RTCORE_TRACE(rtcSetOcclusionFilterFunction16);
RTCORE_VERIFY_HANDLE(scene);
RTCORE_VERIFY_GEOMID(geomID);
((Scene*)scene)->get_locked(geomID)->setOcclusionFilterFunction16(filter,true);
RTCORE_CATCH_END(scene->device);
}
开发者ID:Dade916,项目名称:embree,代码行数:10,代码来源:rtcore_ispc.cpp
示例16: ispcSetUserData
extern "C" void ispcSetUserData (RTCScene hscene, unsigned geomID, void* ptr)
{
Scene* scene = (Scene*) hscene;
RTCORE_CATCH_BEGIN;
RTCORE_TRACE(rtcSetUserData);
RTCORE_VERIFY_HANDLE(scene);
RTCORE_VERIFY_GEOMID(geomID);
scene->get_locked(geomID)->setUserData(ptr);
RTCORE_CATCH_END(scene->device);
}
开发者ID:Dade916,项目名称:embree,代码行数:10,代码来源:rtcore_ispc.cpp
示例17: ispcSetDisplacementFunction
extern "C" void ispcSetDisplacementFunction (RTCScene hscene, unsigned int geomID, void* func, RTCBounds* bounds)
{
Scene* scene = (Scene*) hscene;
RTCORE_CATCH_BEGIN;
RTCORE_TRACE(rtcSetDisplacementFunction);
RTCORE_VERIFY_HANDLE(scene);
RTCORE_VERIFY_GEOMID(geomID);
((Scene*)scene)->get_locked(geomID)->setDisplacementFunction((RTCDisplacementFunc)func,bounds);
RTCORE_CATCH_END(scene->device);
}
开发者ID:Dade916,项目名称:embree,代码行数:10,代码来源:rtcore_ispc.cpp
示例18: rtcDeviceSetParameter1i
RTCORE_API void rtcDeviceSetParameter1i(RTCDevice hdevice, const RTCParameter parm, ssize_t val)
{
Device* device = (Device*) hdevice;
RTCORE_CATCH_BEGIN;
RTCORE_TRACE(rtcDeviceSetParameter1i);
RTCORE_VERIFY_HANDLE(hdevice);
Lock<MutexSys> lock(g_mutex);
device->setParameter1i(parm,val);
RTCORE_CATCH_END(device);
}
开发者ID:eyalsoreq,项目名称:embree,代码行数:10,代码来源:rtcore.cpp
示例19: ispcGetUserData
extern "C" void* ispcGetUserData (RTCScene hscene, unsigned geomID)
{
Scene* scene = (Scene*) hscene;
RTCORE_CATCH_BEGIN;
RTCORE_TRACE(rtcSetUserData);
RTCORE_VERIFY_HANDLE(scene);
RTCORE_VERIFY_GEOMID(geomID);
return scene->get(geomID)->getUserData(); // this call is on purpose not thread safe
RTCORE_CATCH_END(scene->device);
return nullptr;
}
开发者ID:Dade916,项目名称:embree,代码行数:11,代码来源:rtcore_ispc.cpp
示例20: rtcGetError
RTCORE_API RTCError rtcGetError()
{
RTCORE_CATCH_BEGIN;
RTCORE_TRACE(rtcGetError);
if (g_device == nullptr) return RTC_UNKNOWN_ERROR;
RTCError* stored_error = g_device->error();
RTCError error = *stored_error;
*stored_error = RTC_NO_ERROR;
return error;
RTCORE_CATCH_END(g_device);
return RTC_UNKNOWN_ERROR;
}
开发者ID:eyalsoreq,项目名称:embree,代码行数:12,代码来源:rtcore.cpp
注:本文中的RTCORE_TRACE函数示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论