30#ifndef vtkCocoaRenderWindow_h
31#define vtkCocoaRenderWindow_h
34#include "vtkRenderingOpenGL2Module.h"
38VTK_ABI_NAMESPACE_BEGIN
99 void SetSize(
int width,
int height)
override;
115 void SetPosition(
int x,
int y) override;
116 void SetPosition(
int a[2])
override { this->
SetPosition(a[0], a[1]); }
135 void SetWindowName(const
char*) override;
137 void SetNextWindowInfo(const
char*)
override
139 vtkDebugMacro(
"SetNextWindowInfo not implemented (WindowRemap not implemented).");
143 vtkDebugMacro(
"Method not implemented.");
156 this->DisplayIndex = displayId ? *(
reinterpret_cast<int*
>(displayId)) : 0;
161 vtkDebugMacro(
"Method not implemented.");
181 vtkDebugMacro(
"SetNextWindowId not implemented (WindowRemap not implemented).");
251 virtual void SetupPixelFormat(
void* hDC,
void* dwFlags,
int debug,
int bpp = 16,
int zbpp = 16);
293 void SetContextId(
void*);
295 void* GetContextId();
296 void* GetGenericContext()
override {
return this->GetContextId(); }
310 virtual
void SetRootWindow(
void*);
316 virtual
void* GetRootWindow();
329 void SetWindowId(
void*) override;
335 virtual
void* GetWindowId();
336 void* GetGenericWindowId()
override {
return this->GetWindowId(); }
345 void SetParentId(
void* nsview) override;
353 virtual
void* GetParentId();
354 void* GetGenericParentId()
override {
return this->GetParentId(); }
383 void SetPixelFormat(
void* pixelFormat);
385 void* GetPixelFormat();
396 void PushContext() override;
397 void PopContext() override;
400 void Render() override;
406 std::stack<
void*> ContextStack;
408 void CreateGLContext();
410 void CreateAWindow() override;
411 void DestroyWindow() override;
419 void SetCocoaManager(
void* manager);
420 void* GetCocoaManager();
423 void SetCocoaServer(
void* server);
424 void* GetCocoaServer();
445 bool WantsBestResolution;
446 bool ConnectContextToNSView;
448 int DisplayIndex = 0;
Cocoa OpenGL rendering window.
void SetWindowInfo(const char *) override
Set this RenderWindow's window id to a pre-existing window.
void SetDisplayId(void *displayId) override
Set the index of the NSScreen on which the window should be created.
void SetParentInfo(const char *) override
See the documentation for SetParentId().
void SetSize(int a[2]) override
Set the size (width and height) of the rendering window in screen coordinates (in pixels).
void WindowRemap() override
Remap the window.
void * GetGenericDisplayId() override
These are window system independent methods that are used to help interface vtkWindow to native windo...
void SetFullScreen(vtkTypeBool) override
Change the window to fill the entire screen.
void SetCurrentCursor(int) override
Change the shape of the cursor.
void SetCursorPosition(int x, int y) override
Hide or Show the mouse cursor, it is nice to be able to hide the default cursor if you want VTK to di...
void SetStereoCapableWindow(vtkTypeBool capable) override
Prescribe that the window be created in a stereo-capable mode.
const char * ReportCapabilities() override
Get report of capabilities for the render window.
void SetConnectContextToNSView(bool connect)
Set to false if you want to prevent the NSOpenGLContext from being associated with the NSView.
vtkTypeBool GetEventPending() override
Check to see if an event is pending for this window.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
bool GetWantsBestResolution()
int * GetScreenSize() override
Get the current size of the screen in pixels.
void Frame() override
Finish the rendering process.
int * GetSize() override
Get the size (width and height) of the rendering window in screen coordinates (in pixels).
void Initialize() override
Initialize the window for rendering.
virtual void SetupPixelFormat(void *hDC, void *dwFlags, int debug, int bpp=16, int zbpp=16)
Initialize OpenGL for this window.
void SetWantsBestResolution(bool wantsBest)
Set to true if you want to force NSViews created by this object to have their wantsBestResolutionOpen...
void Finalize() override
Clean up device contexts, rendering contexts, etc.
void Start() override
Begin the rendering process.
void ShowCursor() override
Hide or Show the mouse cursor, it is nice to be able to hide the default cursor if you want VTK to di...
virtual vtkTypeBool GetWindowCreated()
Get the WindowCreated flag.
bool IsCurrent() override
Tells if this window is the current OpenGL context for the calling thread.
bool GetPlatformSupportsRenderWindowSharing() override
Does this platform support render window data sharing.
static vtkCocoaRenderWindow * New()
void SetPosition(int a[2]) override
Set the position (x and y) of the rendering window in screen coordinates (in pixels).
virtual vtkTypeBool GetViewCreated()
Get the ViewCreated flag.
void SetNextWindowId(void *) override
Dummy stubs for vtkWindow API.
void SetSize(int width, int height) override
Set the size (width and height) of the rendering window in screen coordinates (in pixels).
void SetForceMakeCurrent() override
If called, allow MakeCurrent() to skip cache-check when called.
bool GetConnectContextToNSView()
void HideCursor() override
Hide or Show the mouse cursor, it is nice to be able to hide the default cursor if you want VTK to di...
bool InitializeFromCurrentContext() override
Initialize the render window from the information associated with the currently activated OpenGL cont...
void MakeCurrent() override
Make this windows OpenGL context the current context.
void * GetGenericDrawable() override
These are window system independent methods that are used to help interface vtkWindow to native windo...
void UpdateContext()
Update this window's OpenGL context, e.g.
virtual void PrefFullScreen()
Set the preferred window size to full screen.
virtual void SetupPalette(void *hDC)
Initialize OpenGL for this window.
virtual void WindowConfigure()
Specify various window parameters.
void ReleaseCurrent() override
Release the current context.
vtkTypeBool IsDirect() override
Is this render window using hardware acceleration? 0-false, 1-true.
a simple class to control print indentation
#define VTK_SIZEHINT(...)
#define VTK_MARSHAL_EXCLUDE_REASON_NOT_SUPPORTED
#define VTK_MARSHALEXCLUDE(reason)