31 return (GHOST_SystemHandle)system;
39 return (GHOST_SystemHandle)system;
56#if !(defined(WIN32) || defined(__APPLE__))
66 const char *help_label,
67 const char *continue_label,
72 system->
showMessageBox(title, message, help_label, continue_label, link, dialog_options);
102 return (GHOST_TimerTaskHandle)system->
installTimer(delay, interval, timerproc, user_data);
106 GHOST_TimerTaskHandle timertaskhandle)
152 GHOST_ContextHandle contexthandle)
161 GHOST_WindowHandle parent_windowhandle,
206 GHOST_WindowHandle windowhandle)
224 const bool stereoVisual)
231 bstereoVisual =
true;
234 bstereoVisual =
false;
239 return (GHOST_WindowHandle)window;
263 return (GHOST_WindowHandle)window;
281 GHOST_EventConsumerHandle consumerhandle)
289 GHOST_EventConsumerHandle consumerhandle)
372GHOST_TSuccess GHOST_GetCursorPositionScreenCoords(GHOST_SystemHandle systemhandle,
381GHOST_TSuccess GHOST_SetCursorPositionScreenCoords(GHOST_SystemHandle systemhandle,
392 const GHOST_WindowHandle windowhandle,
403 GHOST_WindowHandle windowhandle,
417 const int mouse_ungrab_xy[2])
426 if (mouse_ungrab_xy) {
427 mouse_xy[0] = mouse_ungrab_xy[0];
428 mouse_xy[1] = mouse_ungrab_xy[1];
432 mode, wrap_axis,
bounds ? &bounds_rect :
nullptr, mouse_ungrab_xy ? mouse_xy :
nullptr);
439 bool *r_use_software_cursor)
443 bool use_software_cursor;
445 r_bounds[0] = bounds_rect.
m_l;
446 r_bounds[1] = bounds_rect.
m_t;
447 r_bounds[2] = bounds_rect.
m_r;
448 r_bounds[3] = bounds_rect.
m_b;
449 *r_use_software_cursor = use_software_cursor;
458 bool is_down =
false;
461 *r_is_down = is_down;
472 bool is_down =
false;
475 *r_is_down = is_down;
480#ifdef WITH_INPUT_NDOF
481void GHOST_setNDOFDeadZone(
float deadzone)
484 system->setNDOFDeadZone(deadzone);
513 return (GHOST_WindowHandle)
event->
getWindow();
590 std::string title = window->
getTitle();
592 const size_t ctitle_size = title.size() + 1;
593 char *ctitle = (
char *)malloc(ctitle_size);
595 if (ctitle ==
nullptr) {
599 memcpy(ctitle, title.c_str(), ctitle_size);
608 return window->
setPath(filepath);
619 return (GHOST_RectangleHandle)rectangle;
630 return (GHOST_RectangleHandle)rectangle;
791 return ((
GHOST_Rect *)rectanglehandle)->getWidth();
796 return ((
GHOST_Rect *)rectanglehandle)->getHeight();
820 if (((
GHOST_Rect *)rectanglehandle)->isEmpty()) {
830 if (((
GHOST_Rect *)rectanglehandle)->isValid()) {
842 GHOST_RectangleHandle anotherrectanglehandle)
849 ((
GHOST_Rect *)rectanglehandle)->unionPoint(x, y);
863 GHOST_RectangleHandle anotherrectanglehandle)
867 visible = ((
GHOST_Rect *)rectanglehandle)->getVisibility(*(
GHOST_Rect *)anotherrectanglehandle);
874 ((
GHOST_Rect *)rectanglehandle)->setCenter(cx, cy);
880 ((
GHOST_Rect *)rectanglehandle)->setCenter(cx, cy,
w, h);
884 GHOST_RectangleHandle anotherrectanglehandle)
980 window->beginIME(x, y,
w, h, complete);
993# define GHOST_XR_CAPI_CALL(call, ctx) \
997 catch (GHOST_XrException & e) { \
998 (ctx)->dispatchErrorMessage(&e); \
1001# define GHOST_XR_CAPI_CALL_RET(call, ctx) \
1005 catch (GHOST_XrException & e) { \
1006 (ctx)->dispatchErrorMessage(&e); \
1009void GHOST_XrSessionStart(GHOST_XrContextHandle xr_contexthandle,
1010 const GHOST_XrSessionBeginInfo *begin_info)
1013 GHOST_XR_CAPI_CALL(xr_context->
startSession(begin_info), xr_context);
1016void GHOST_XrSessionEnd(GHOST_XrContextHandle xr_contexthandle)
1019 GHOST_XR_CAPI_CALL(xr_context->
endSession(), xr_context);
1022void GHOST_XrSessionDrawViews(GHOST_XrContextHandle xr_contexthandle,
void *draw_customdata)
1025 GHOST_XR_CAPI_CALL(xr_context->
drawSessionViews(draw_customdata), xr_context);
1028int GHOST_XrSessionIsRunning(
const GHOST_XrContextHandle xr_contexthandle)
1035void GHOST_XrGraphicsContextBindFuncs(GHOST_XrContextHandle xr_contexthandle,
1036 GHOST_XrGraphicsContextBindFn bind_fn,
1037 GHOST_XrGraphicsContextUnbindFn unbind_fn)
1043void GHOST_XrDrawViewFunc(GHOST_XrContextHandle xr_contexthandle, GHOST_XrDrawViewFn draw_view_fn)
1046 GHOST_XR_CAPI_CALL(xr_context->
setDrawViewFunc(draw_view_fn), xr_context);
1049void GHOST_XrPassthroughEnabledFunc(GHOST_XrContextHandle xr_contexthandle,
1050 GHOST_XrPassthroughEnabledFn passthrough_enabled_fn)
1056void GHOST_XrDisablePassthroughFunc(GHOST_XrContextHandle xr_contexthandle,
1057 GHOST_XrDisablePassthroughFn disable_passthrough_fn)
1063int GHOST_XrSessionNeedsUpsideDownDrawing(
const GHOST_XrContextHandle xr_contexthandle)
1071int GHOST_XrCreateActionSet(GHOST_XrContextHandle xr_contexthandle,
1072 const GHOST_XrActionSetInfo *info)
1076 GHOST_XR_CAPI_CALL_RET(xr_session->
createActionSet(*info), xr_context);
1080void GHOST_XrDestroyActionSet(GHOST_XrContextHandle xr_contexthandle,
const char *action_set_name)
1084 GHOST_XR_CAPI_CALL(xr_session->
destroyActionSet(action_set_name), xr_context);
1087int GHOST_XrCreateActions(GHOST_XrContextHandle xr_contexthandle,
1088 const char *action_set_name,
1090 const GHOST_XrActionInfo *infos)
1094 GHOST_XR_CAPI_CALL_RET(xr_session->
createActions(action_set_name,
count, infos), xr_context);
1098void GHOST_XrDestroyActions(GHOST_XrContextHandle xr_contexthandle,
1099 const char *action_set_name,
1101 const char *
const *action_names)
1105 GHOST_XR_CAPI_CALL(xr_session->
destroyActions(action_set_name,
count, action_names), xr_context);
1108int GHOST_XrCreateActionBindings(GHOST_XrContextHandle xr_contexthandle,
1109 const char *action_set_name,
1111 const GHOST_XrActionProfileInfo *infos)
1120void GHOST_XrDestroyActionBindings(GHOST_XrContextHandle xr_contexthandle,
1121 const char *action_set_name,
1123 const char *
const *action_names,
1124 const char *
const *profile_paths)
1133int GHOST_XrAttachActionSets(GHOST_XrContextHandle xr_contexthandle)
1141int GHOST_XrSyncActions(GHOST_XrContextHandle xr_contexthandle,
const char *action_set_name)
1145 GHOST_XR_CAPI_CALL_RET(xr_session->
syncActions(action_set_name), xr_context);
1149int GHOST_XrApplyHapticAction(GHOST_XrContextHandle xr_contexthandle,
1150 const char *action_set_name,
1151 const char *action_name,
1152 const char *subaction_path,
1154 const float *frequency,
1155 const float *amplitude)
1159 GHOST_XR_CAPI_CALL_RET(
1161 action_set_name, action_name, subaction_path, *duration, *frequency, *amplitude),
1166void GHOST_XrStopHapticAction(GHOST_XrContextHandle xr_contexthandle,
1167 const char *action_set_name,
1168 const char *action_name,
1169 const char *subaction_path)
1173 GHOST_XR_CAPI_CALL(xr_session->
stopHapticAction(action_set_name, action_name, subaction_path),
1177void *GHOST_XrGetActionSetCustomdata(GHOST_XrContextHandle xr_contexthandle,
1178 const char *action_set_name)
1186void *GHOST_XrGetActionCustomdata(GHOST_XrContextHandle xr_contexthandle,
1187 const char *action_set_name,
1188 const char *action_name)
1197uint GHOST_XrGetActionCount(GHOST_XrContextHandle xr_contexthandle,
const char *action_set_name)
1201 GHOST_XR_CAPI_CALL_RET(xr_session->
getActionCount(action_set_name), xr_context);
1205void GHOST_XrGetActionCustomdataArray(GHOST_XrContextHandle xr_contexthandle,
1206 const char *action_set_name,
1207 void **r_customdata_array)
1215int GHOST_XrLoadControllerModel(GHOST_XrContextHandle xr_contexthandle,
const char *subaction_path)
1223void GHOST_XrUnloadControllerModel(GHOST_XrContextHandle xr_contexthandle,
1224 const char *subaction_path)
1231int GHOST_XrUpdateControllerModelComponents(GHOST_XrContextHandle xr_contexthandle,
1232 const char *subaction_path)
1240int GHOST_XrGetControllerModelData(GHOST_XrContextHandle xr_contexthandle,
1241 const char *subaction_path,
1242 GHOST_XrControllerModelData *r_data)
1252#ifdef WITH_VULKAN_BACKEND
1254void GHOST_GetVulkanHandles(GHOST_ContextHandle contexthandle,
1256 void *r_physical_device,
1260 void **r_queue_mutex)
1263 context->getVulkanHandles(
1264 r_instance, r_physical_device, r_device, r_graphic_queue_family, r_queue, r_queue_mutex);
1267void GHOST_SetVulkanSwapBuffersCallbacks(
1268 GHOST_ContextHandle contexthandle,
1269 void (*swap_buffers_pre_callback)(
const GHOST_VulkanSwapChainData *),
1270 void (*swap_buffers_post_callback)(
void))
1273 context->setVulkanSwapBuffersCallbacks(swap_buffers_pre_callback, swap_buffers_post_callback);
1276void GHOST_GetVulkanSwapChainFormat(GHOST_WindowHandle windowhandle,
1277 GHOST_VulkanSwapChainData *r_swap_chain_data)
1280 window->getVulkanSwapChainFormat(r_swap_chain_data);
GHOST_TSuccess GHOST_IsInsideRectangle(GHOST_RectangleHandle rectanglehandle, int32_t x, int32_t y)
GHOST_TWindowState GHOST_GetWindowState(GHOST_WindowHandle windowhandle)
GHOST_TSuccess GHOST_putClipboardImage(uint *rgba, int width, int height)
GHOST_TSuccess GHOST_SetCustomCursorShape(GHOST_WindowHandle windowhandle, uint8_t *bitmap, uint8_t *mask, int sizex, int sizey, int hotX, int hotY, bool canInvertColor)
int32_t GHOST_GetWidthRectangle(GHOST_RectangleHandle rectanglehandle)
GHOST_TSuccess GHOST_GetPixelAtCursor(float r_color[3])
GHOST_TVisibility GHOST_GetRectangleVisibility(GHOST_RectangleHandle rectanglehandle, GHOST_RectangleHandle anotherrectanglehandle)
GHOST_TSuccess GHOST_GetCursorPosition(const GHOST_SystemHandle systemhandle, const GHOST_WindowHandle windowhandle, int32_t *x, int32_t *y)
bool GHOST_GetFullScreen(GHOST_SystemHandle systemhandle)
GHOST_ContextHandle GHOST_CreateGPUContext(GHOST_SystemHandle systemhandle, GHOST_GPUSettings gpuSettings)
GHOST_TSuccess GHOST_SetWindowOrder(GHOST_WindowHandle windowhandle, GHOST_TWindowOrder order)
GHOST_TUserDataPtr GHOST_GetWindowUserData(GHOST_WindowHandle windowhandle)
GHOST_TSuccess GHOST_SetClientSize(GHOST_WindowHandle windowhandle, uint32_t width, uint32_t height)
GHOST_TSuccess GHOST_SetCursorPosition(GHOST_SystemHandle systemhandle, GHOST_WindowHandle windowhandle, int32_t x, int32_t y)
void GHOST_ShowMessageBox(GHOST_SystemHandle systemhandle, const char *title, const char *message, const char *help_label, const char *continue_label, const char *link, GHOST_DialogOptions dialog_options)
void GHOST_UnionRectangle(GHOST_RectangleHandle rectanglehandle, GHOST_RectangleHandle anotherrectanglehandle)
void GHOST_ClientToScreen(GHOST_WindowHandle windowhandle, int32_t inX, int32_t inY, int32_t *outX, int32_t *outY)
GHOST_WindowHandle GHOST_GetWindowUnderCursor(GHOST_SystemHandle systemhandle, int32_t x, int32_t y)
GHOST_EventConsumerHandle GHOST_CreateEventConsumer(GHOST_EventCallbackProcPtr eventCallback, GHOST_TUserDataPtr user_data)
GHOST_TSuccess GHOST_AddEventConsumer(GHOST_SystemHandle systemhandle, GHOST_EventConsumerHandle consumerhandle)
GHOST_TSuccess GHOST_GetAllDisplayDimensions(GHOST_SystemHandle systemhandle, uint32_t *r_width, uint32_t *r_height)
GHOST_TimerProcPtr GHOST_GetTimerProc(GHOST_TimerTaskHandle timertaskhandle)
uint GHOST_GetContextDefaultGPUFramebuffer(GHOST_ContextHandle contexthandle)
void GHOST_SetRectangleCenter(GHOST_RectangleHandle rectanglehandle, int32_t cx, int32_t cy, int32_t w, int32_t h)
GHOST_TSuccess GHOST_hasClipboardImage()
GHOST_TSuccess GHOST_RemoveEventConsumer(GHOST_SystemHandle systemhandle, GHOST_EventConsumerHandle consumerhandle)
uint16_t GHOST_GetDPIHint(GHOST_WindowHandle windowhandle)
GHOST_TSuccess GHOST_IsEmptyRectangle(GHOST_RectangleHandle rectanglehandle)
uint GHOST_GetDefaultGPUFramebuffer(GHOST_WindowHandle windowhandle)
void GHOST_DisposeRectangle(GHOST_RectangleHandle rectanglehandle)
GHOST_TSuccess GHOST_SetPath(GHOST_WindowHandle windowhandle, const char *filepath)
void GHOST_UseWindowFocus(bool use_focus)
bool GHOST_ProcessEvents(GHOST_SystemHandle systemhandle, bool waitForEvent)
void GHOST_SetTitle(GHOST_WindowHandle windowhandle, const char *title)
GHOST_TStandardCursor GHOST_GetCursorShape(GHOST_WindowHandle windowhandle)
GHOST_TSuccess GHOST_ReleaseGPUContext(GHOST_ContextHandle contexthandle)
GHOST_TSuccess GHOST_SetClientWidth(GHOST_WindowHandle windowhandle, uint32_t width)
GHOST_TSuccess GHOST_SetClientHeight(GHOST_WindowHandle windowhandle, uint32_t height)
const char * GHOST_SystemBackend()
void GHOST_ScreenToClient(GHOST_WindowHandle windowhandle, int32_t inX, int32_t inY, int32_t *outX, int32_t *outY)
GHOST_TSuccess GHOST_SetCursorShape(GHOST_WindowHandle windowhandle, GHOST_TStandardCursor cursorshape)
GHOST_TSuccess GHOST_ClipRectangle(GHOST_RectangleHandle rectanglehandle, GHOST_RectangleHandle anotherrectanglehandle)
GHOST_TSuccess GHOST_DisposeEventConsumer(GHOST_EventConsumerHandle consumerhandle)
char * GHOST_getClipboard(bool selection)
GHOST_RectangleHandle GHOST_GetWindowBounds(GHOST_WindowHandle windowhandle)
uint64_t GHOST_GetEventTime(GHOST_EventHandle eventhandle)
GHOST_TSuccess GHOST_SetProgressBar(GHOST_WindowHandle windowhandle, float progress)
GHOST_TUserDataPtr GHOST_GetTimerTaskUserData(GHOST_TimerTaskHandle timertaskhandle)
GHOST_SystemHandle GHOST_CreateSystem()
GHOST_TSuccess GHOST_EndFullScreen(GHOST_SystemHandle systemhandle)
GHOST_TSuccess GHOST_SetWindowModifiedState(GHOST_WindowHandle windowhandle, bool isUnsavedChanges)
GHOST_SystemHandle GHOST_CreateSystemBackground()
void GHOST_SetAutoFocus(bool auto_focus)
GHOST_TSuccess GHOST_InvalidateWindow(GHOST_WindowHandle windowhandle)
GHOST_TSuccess GHOST_SetCursorGrab(GHOST_WindowHandle windowhandle, GHOST_TGrabCursorMode mode, GHOST_TAxisFlag wrap_axis, const int bounds[4], const int mouse_ungrab_xy[2])
GHOST_TSuccess GHOST_DisposeWindow(GHOST_SystemHandle systemhandle, GHOST_WindowHandle windowhandle)
bool GHOST_setConsoleWindowState(GHOST_TConsoleWindowState action)
void GHOST_SetTimerProc(GHOST_TimerTaskHandle timertaskhandle, GHOST_TimerProcPtr timerproc)
GHOST_TSuccess GHOST_ActivateGPUContext(GHOST_ContextHandle contexthandle)
void GHOST_SetTimerTaskUserData(GHOST_TimerTaskHandle timertaskhandle, GHOST_TUserDataPtr user_data)
GHOST_TSuccess GHOST_SetWindowState(GHOST_WindowHandle windowhandle, GHOST_TWindowState state)
void GHOST_SetBacktraceHandler(GHOST_TBacktraceFn backtrace_fn)
GHOST_TSuccess GHOST_RemoveTimer(GHOST_SystemHandle systemhandle, GHOST_TimerTaskHandle timertaskhandle)
int32_t GHOST_GetHeightRectangle(GHOST_RectangleHandle rectanglehandle)
void GHOST_SetTabletAPI(GHOST_SystemHandle systemhandle, GHOST_TTabletAPI api)
GHOST_TSuccess GHOST_SwapWindowBuffers(GHOST_WindowHandle windowhandle)
void GHOST_GetCursorGrabState(GHOST_WindowHandle windowhandle, GHOST_TGrabCursorMode *r_mode, GHOST_TAxisFlag *r_axis_flag, int r_bounds[4], bool *r_use_software_cursor)
GHOST_TSuccess GHOST_GetCursorBitmap(GHOST_WindowHandle windowhandle, GHOST_CursorBitmapRef *bitmap)
void GHOST_SetCenterRectangle(GHOST_RectangleHandle rectanglehandle, int32_t cx, int32_t cy)
void GHOST_SetMultitouchGestures(GHOST_SystemHandle systemhandle, const bool use)
GHOST_TEventDataPtr GHOST_GetEventData(GHOST_EventHandle eventhandle)
bool GHOST_GetCursorVisibility(GHOST_WindowHandle windowhandle)
GHOST_TSuccess GHOST_SetCursorVisibility(GHOST_WindowHandle windowhandle, bool visible)
uint * GHOST_getClipboardImage(int *r_width, int *r_height)
GHOST_TSuccess GHOST_ActivateWindowDrawingContext(GHOST_WindowHandle windowhandle)
GHOST_TSuccess GHOST_GetModifierKeyState(GHOST_SystemHandle systemhandle, GHOST_TModifierKey mask, bool *r_is_down)
GHOST_WindowHandle GHOST_CreateWindow(GHOST_SystemHandle systemhandle, GHOST_WindowHandle parent_windowhandle, const char *title, int32_t left, int32_t top, uint32_t width, uint32_t height, GHOST_TWindowState state, bool is_dialog, GHOST_GPUSettings gpuSettings)
bool GHOST_ValidWindow(GHOST_SystemHandle systemhandle, GHOST_WindowHandle windowhandle)
float GHOST_GetNativePixelSize(GHOST_WindowHandle windowhandle)
GHOST_TEventType GHOST_GetEventType(GHOST_EventHandle eventhandle)
bool GHOST_IsDialogWindow(GHOST_WindowHandle windowhandle)
GHOST_WindowHandle GHOST_BeginFullScreen(GHOST_SystemHandle systemhandle, const GHOST_DisplaySetting *setting, const bool stereoVisual)
void GHOST_SystemInitDebug(GHOST_SystemHandle systemhandle, GHOST_Debug debug)
void GHOST_setAcceptDragOperation(GHOST_WindowHandle windowhandle, bool can_accept)
void GHOST_putClipboard(const char *buffer, bool selection)
GHOST_ContextHandle GHOST_GetDrawingContext(GHOST_WindowHandle windowhandle)
void GHOST_SetWindowUserData(GHOST_WindowHandle windowhandle, GHOST_TUserDataPtr user_data)
GHOST_TCapabilityFlag GHOST_GetCapabilities()
GHOST_WindowHandle GHOST_GetEventWindow(GHOST_EventHandle eventhandle)
void GHOST_GetRectangle(GHOST_RectangleHandle rectanglehandle, int32_t *l, int32_t *t, int32_t *r, int32_t *b)
char * GHOST_GetTitle(GHOST_WindowHandle windowhandle)
bool GHOST_UseNativePixels()
GHOST_TDrawingContextType GHOST_GetDrawingContextType(GHOST_WindowHandle windowhandle)
GHOST_TSuccess GHOST_HasCursorShape(GHOST_WindowHandle windowhandle, GHOST_TStandardCursor cursorshape)
GHOST_TSuccess GHOST_IsValidRectangle(GHOST_RectangleHandle rectanglehandle)
void GHOST_DispatchEvents(GHOST_SystemHandle systemhandle)
void GHOST_SetRectangle(GHOST_RectangleHandle rectanglehandle, int32_t l, int32_t t, int32_t r, int32_t b)
GHOST_TSuccess GHOST_SetDrawingContextType(GHOST_WindowHandle windowhandle, GHOST_TDrawingContextType type)
GHOST_TSuccess GHOST_DisposeGPUContext(GHOST_SystemHandle systemhandle, GHOST_ContextHandle contexthandle)
GHOST_TSuccess GHOST_EndProgressBar(GHOST_WindowHandle windowhandle)
GHOST_TSuccess GHOST_SetSwapInterval(GHOST_WindowHandle windowhandle, int interval)
GHOST_TimerTaskHandle GHOST_InstallTimer(GHOST_SystemHandle systemhandle, uint64_t delay, uint64_t interval, GHOST_TimerProcPtr timerproc, GHOST_TUserDataPtr user_data)
void GHOST_InsetRectangle(GHOST_RectangleHandle rectanglehandle, int32_t i)
GHOST_RectangleHandle GHOST_GetClientBounds(GHOST_WindowHandle windowhandle)
uint8_t GHOST_GetNumDisplays(GHOST_SystemHandle systemhandle)
GHOST_TSuccess GHOST_DisposeSystem(GHOST_SystemHandle systemhandle)
uint64_t GHOST_GetMilliSeconds(GHOST_SystemHandle systemhandle)
void GHOST_UnionPointRectangle(GHOST_RectangleHandle rectanglehandle, int32_t x, int32_t y)
bool GHOST_GetValid(GHOST_WindowHandle windowhandle)
GHOST_TSuccess GHOST_GetSwapInterval(GHOST_WindowHandle windowhandle, int *r_interval)
GHOST_TSuccess GHOST_GetButtonState(GHOST_SystemHandle systemhandle, GHOST_TButton mask, bool *r_is_down)
GHOST_TSuccess GHOST_GetMainDisplayDimensions(GHOST_SystemHandle systemhandle, uint32_t *r_width, uint32_t *r_height)
GHOST C-API function and type declarations.
void GHOST_BeginIME(GHOST_WindowHandle windowhandle, int32_t x, int32_t y, int32_t w, int32_t h, bool complete)
void GHOST_EndIME(GHOST_WindowHandle windowhandle)
bool(* GHOST_EventCallbackProcPtr)(GHOST_EventHandle event, GHOST_TUserDataPtr user_data)
#define GHOST_PRINTF(x,...)
void * GHOST_TUserDataPtr
void(* GHOST_TimerProcPtr)(struct GHOST_TimerTaskHandle__ *task, uint64_t time)
const void * GHOST_TEventDataPtr
GHOST_TDrawingContextType
void(* GHOST_TBacktraceFn)(void *file_handle)
GHOST_TConsoleWindowState
ATTR_WARN_UNUSED_RESULT const BMLoop * l
virtual bool isInside(const btVector3 &pt, btScalar tolerance) const
static btDbvtVolume bounds(btDbvtNode **leaves, int count)
SIMD_FORCE_INLINE const btScalar & w() const
Return the w value.
virtual GHOST_TSuccess releaseDrawingContext()=0
virtual GHOST_TSuccess activateDrawingContext()=0
virtual unsigned int getDefaultFramebuffer()=0
virtual GHOST_TEventType getType() const =0
virtual GHOST_TEventDataPtr getData() const =0
virtual GHOST_IWindow * getWindow() const =0
virtual uint64_t getTime() const =0
virtual GHOST_TSuccess endFullScreen()=0
static GHOST_ISystem * getSystem()
virtual void putClipboard(const char *buffer, bool selection) const =0
virtual GHOST_ITimerTask * installTimer(uint64_t delay, uint64_t interval, GHOST_TimerProcPtr timerProc, GHOST_TUserDataPtr userData=nullptr)=0
static void setBacktraceFn(GHOST_TBacktraceFn backtrace_fn)
virtual GHOST_TSuccess showMessageBox(const char *, const char *, const char *, const char *, const char *, GHOST_DialogOptions) const =0
virtual bool getFullScreen()=0
virtual void initDebug(GHOST_Debug debug)=0
virtual void setTabletAPI(GHOST_TTabletAPI api)=0
virtual char * getClipboard(bool selection) const =0
virtual GHOST_TSuccess setCursorPositionClientRelative(GHOST_IWindow *window, int32_t x, int32_t y)=0
virtual void getMainDisplayDimensions(uint32_t &width, uint32_t &height) const =0
virtual bool validWindow(GHOST_IWindow *window)=0
virtual GHOST_TSuccess getCursorPosition(int32_t &x, int32_t &y) const =0
virtual void getAllDisplayDimensions(uint32_t &width, uint32_t &height) const =0
virtual uint * getClipboardImage(int *r_width, int *r_height) const =0
virtual GHOST_TSuccess addEventConsumer(GHOST_IEventConsumer *consumer)=0
virtual GHOST_IContext * createOffscreenContext(GHOST_GPUSettings gpuSettings)=0
virtual GHOST_TSuccess getModifierKeyState(GHOST_TModifierKey mask, bool &isDown) const =0
virtual void useWindowFocus(const bool use_focus)=0
virtual GHOST_TSuccess disposeContext(GHOST_IContext *context)=0
virtual GHOST_TSuccess removeTimer(GHOST_ITimerTask *timerTask)=0
virtual bool useNativePixel()=0
static GHOST_TSuccess createSystem(bool verbose, bool background)
static GHOST_TSuccess disposeSystem()
virtual uint8_t getNumDisplays() const =0
virtual void setMultitouchGestures(const bool use)=0
virtual GHOST_TSuccess beginFullScreen(const GHOST_DisplaySetting &setting, GHOST_IWindow **window, const bool stereoVisual)=0
virtual bool setConsoleWindowState(GHOST_TConsoleWindowState action)=0
virtual void dispatchEvents()=0
virtual GHOST_TSuccess hasClipboardImage(void) const =0
static const char * getSystemBackend()
virtual GHOST_TCapabilityFlag getCapabilities() const =0
virtual GHOST_TSuccess putClipboardImage(uint *rgba, int width, int height) const =0
virtual GHOST_IWindow * createWindow(const char *title, int32_t left, int32_t top, uint32_t width, uint32_t height, GHOST_TWindowState state, GHOST_GPUSettings gpuSettings, const bool exclusive=false, const bool is_dialog=false, const GHOST_IWindow *parentWindow=nullptr)=0
virtual void setAutoFocus(const bool auto_focus)=0
virtual GHOST_TSuccess getCursorPositionClientRelative(const GHOST_IWindow *window, int32_t &x, int32_t &y) const =0
virtual GHOST_TSuccess getButtonState(GHOST_TButton mask, bool &isDown) const =0
virtual uint64_t getMilliSeconds() const =0
virtual GHOST_TSuccess disposeWindow(GHOST_IWindow *window)=0
virtual GHOST_TSuccess setCursorPosition(int32_t x, int32_t y)=0
virtual GHOST_TSuccess removeEventConsumer(GHOST_IEventConsumer *consumer)=0
virtual GHOST_TSuccess getPixelAtCursor(float r_color[3]) const =0
virtual GHOST_IWindow * getWindowUnderCursor(int32_t x, int32_t y)=0
virtual bool processEvents(bool waitForEvent)=0
static GHOST_TSuccess createSystemBackground()
virtual GHOST_TUserDataPtr getUserData() const =0
virtual void setTimerProc(const GHOST_TimerProcPtr timerProc)=0
virtual GHOST_TimerProcPtr getTimerProc() const =0
virtual void setUserData(const GHOST_TUserDataPtr userData)=0
virtual void setTitle(const char *title)=0
virtual void getClientBounds(GHOST_Rect &bounds) const =0
virtual void setAcceptDragOperation(bool canAccept)=0
virtual GHOST_TSuccess activateDrawingContext()=0
virtual GHOST_TSuccess getCursorBitmap(GHOST_CursorBitmapRef *bitmap)=0
virtual GHOST_TSuccess endProgressBar()=0
virtual GHOST_TSuccess setOrder(GHOST_TWindowOrder order)=0
virtual void clientToScreen(int32_t inX, int32_t inY, int32_t &outX, int32_t &outY) const =0
virtual GHOST_TSuccess setClientHeight(uint32_t height)=0
virtual GHOST_TSuccess setProgressBar(float progress)=0
virtual bool isDialog() const =0
virtual std::string getTitle() const =0
virtual GHOST_TSuccess setClientSize(uint32_t width, uint32_t height)=0
virtual GHOST_TSuccess setState(GHOST_TWindowState state)=0
virtual GHOST_TSuccess getSwapInterval(int &intervalOut)=0
virtual GHOST_TSuccess setCursorShape(GHOST_TStandardCursor cursorShape)=0
virtual GHOST_TSuccess setClientWidth(uint32_t width)=0
virtual GHOST_TSuccess setModifiedState(bool isUnsavedChanges)=0
virtual float getNativePixelSize()=0
virtual GHOST_IContext * getDrawingContext()=0
virtual GHOST_TSuccess setCursorVisibility(bool visible)=0
virtual void getCursorGrabState(GHOST_TGrabCursorMode &mode, GHOST_TAxisFlag &axis_flag, GHOST_Rect &bounds, bool &use_software_cursor)=0
virtual void screenToClient(int32_t inX, int32_t inY, int32_t &outX, int32_t &outY) const =0
virtual void getWindowBounds(GHOST_Rect &bounds) const =0
virtual GHOST_TSuccess hasCursorShape(GHOST_TStandardCursor cursorShape)=0
virtual bool getCursorVisibility() const =0
virtual GHOST_TSuccess setPath(const char *filepath)=0
virtual GHOST_TSuccess setDrawingContextType(GHOST_TDrawingContextType type)=0
virtual bool getValid() const =0
virtual GHOST_TSuccess setSwapInterval(int interval)=0
virtual GHOST_TUserDataPtr getUserData() const =0
virtual GHOST_TSuccess invalidate()=0
virtual void setUserData(const GHOST_TUserDataPtr userData)=0
virtual GHOST_TDrawingContextType getDrawingContextType()=0
virtual GHOST_TSuccess swapBuffers()=0
virtual GHOST_TStandardCursor getCursorShape() const =0
virtual uint16_t getDPIHint()=0
virtual GHOST_TWindowState getState() const =0
virtual GHOST_TSuccess setCursorGrab(GHOST_TGrabCursorMode, GHOST_TAxisFlag, GHOST_Rect *, int32_t[2])
virtual GHOST_TSuccess setCustomCursorShape(uint8_t *bitmap, uint8_t *mask, int sizex, int sizey, int hotX, int hotY, bool canInvertColor)=0
virtual unsigned int getDefaultFramebuffer()=0
virtual void endSession()=0
virtual GHOST_XrSession * getSession()=0
virtual void setDisablePassthroughFunc(GHOST_XrDisablePassthroughFn disable_passthrough_fn)=0
virtual void startSession(const GHOST_XrSessionBeginInfo *begin_info)=0
virtual void setPassthroughEnabledFunc(GHOST_XrPassthroughEnabledFn passthrough_enabled_fn)=0
virtual bool needsUpsideDownDrawing() const =0
virtual void setGraphicsContextBindFuncs(GHOST_XrGraphicsContextBindFn bind_fn, GHOST_XrGraphicsContextUnbindFn unbind_fn)=0
virtual void drawSessionViews(void *draw_customdata)=0
virtual bool isSessionRunning() const =0
virtual void setDrawViewFunc(GHOST_XrDrawViewFn draw_view_fn)=0
void destroyActionBindings(const char *action_set_name, uint32_t count, const char *const *action_names, const char *const *profile_paths)
void destroyActionSet(const char *action_set_name)
bool createActionSet(const GHOST_XrActionSetInfo &info)
void * getActionCustomdata(const char *action_set_name, const char *action_name)
void unloadControllerModel(const char *subaction_path)
void * getActionSetCustomdata(const char *action_set_name)
bool updateControllerModelComponents(const char *subaction_path)
bool createActionBindings(const char *action_set_name, uint32_t count, const GHOST_XrActionProfileInfo *infos)
void stopHapticAction(const char *action_set_name, const char *action_name, const char *subaction_path)
void getActionCustomdataArray(const char *action_set_name, void **r_customdata_array)
bool loadControllerModel(const char *subaction_path)
bool syncActions(const char *action_set_name=nullptr)
void destroyActions(const char *action_set_name, uint32_t count, const char *const *action_names)
bool applyHapticAction(const char *action_set_name, const char *action_name, const char *subaction_path, const int64_t &duration, const float &frequency, const float &litude)
uint32_t getActionCount(const char *action_set_name)
bool getControllerModelData(const char *subaction_path, GHOST_XrControllerModelData &r_data)
bool createActions(const char *action_set_name, uint32_t count, const GHOST_XrActionInfo *infos)
local_group_size(16, 16) .push_constant(Type b
unsigned __int64 uint64_t