OpenTTD Source  1.11.0-beta2
VideoDriver_CocoaQuartz Class Reference
Inheritance diagram for VideoDriver_CocoaQuartz:
VideoDriver_Cocoa VideoDriver Driver

Public Member Functions

const char * Start (const StringList &param) override
 Start this driver. More...
 
void Stop () override
 Stop this driver.
 
const char * GetName () const override
 Return driver name.
 
void AllocateBackingStore (bool force=false) override
 
- Public Member Functions inherited from VideoDriver_Cocoa
void MainLoop () override
 Perform the actual drawing.
 
void MakeDirty (int left, int top, int width, int height) override
 Mark a particular area dirty. More...
 
bool AfterBlitterChange () override
 Callback invoked after the blitter was changed. More...
 
bool ChangeResolution (int w, int h) override
 Change the resolution of the window. More...
 
bool ToggleFullscreen (bool fullscreen) override
 Change the full screen setting. More...
 
void EditBoxLostFocus () override
 An edit box lost the input focus. More...
 
void MainLoopReal ()
 
- Public Member Functions inherited from VideoDriver
virtual void AcquireBlitterLock ()
 Acquire any lock(s) required to be held when changing blitters. More...
 
virtual void ReleaseBlitterLock ()
 Release any lock(s) required to be held when changing blitters. More...
 
virtual bool ClaimMousePointer ()
 
virtual bool UseSystemCursor ()
 Get whether the mouse cursor is drawn by the video driver. More...
 
virtual void ClearSystemSprites ()
 Clear all cached sprites.
 
virtual bool HasGUI () const
 Whether the driver has a graphical user interface with the end user. More...
 
virtual bool HasEfficient8Bpp () const
 Has this video driver an efficient code path for palette animated 8-bpp sprites? More...
 
virtual bool HasAnimBuffer ()
 Does this video driver support a separate animation buffer in addition to the colour buffer? More...
 
virtual uint8 * GetAnimBuffer ()
 Get a pointer to the animation buffer of the video back-end. More...
 
virtual void EditBoxGainedFocus ()
 An edit box gained the input focus.
 
virtual ZoomLevel GetSuggestedUIZoom ()
 Get a suggested default GUI zoom taking screen DPI into account.
 

Data Fields

CGContextRef cgcontext
 Context reference for Quartz subdriver.
 
- Data Fields inherited from VideoDriver_Cocoa
bool setup
 Window is currently being created.
 
OTTD_CocoaWindowwindow
 Pointer to window object.
 
OTTD_CocoaViewcocoaview
 Pointer to view object.
 
CGColorSpaceRef color_space
 Window color space.
 
OTTD_CocoaWindowDelegatedelegate
 Window delegate object.
 

Protected Member Functions

void Paint () override
 Paint the window.
 
void CheckPaletteAnim () override
 Process any pending palette animation.
 
NSView * AllocateDrawView () override
 
void * GetVideoPointer () override
 Get a pointer to the video buffer.
 
- Protected Member Functions inherited from VideoDriver_Cocoa
Dimension GetScreenSize () const override
 Get the resolution of the main screen.
 
float GetDPIScale () override
 Get DPI scaling factor of the screen OTTD is displayed on. More...
 
void InputLoop () override
 Handle input logic, is CTRL pressed, should we fast-forward, etc.
 
bool LockVideoBuffer () override
 Make sure the video buffer is ready for drawing. More...
 
void UnlockVideoBuffer () override
 Unlock a previously locked video buffer.
 
bool PollEvent () override
 Process a single system event. More...
 
void GameSizeChanged ()
 
const char * Initialize ()
 
void UpdateVideoModes ()
 
bool MakeWindow (int width, int height)
 
virtual void ReleaseVideoPointer ()
 Hand video buffer back to the drawing backend.
 
- Protected Member Functions inherited from VideoDriver
void UpdateAutoResolution ()
 Apply resolution auto-detection and clamp to sensible defaults.
 
virtual void PaintThread ()
 Thread function for threaded drawing.
 
bool Tick ()
 Run the game for a single tick, processing boththe game-tick and draw-tick. More...
 
void SleepTillNextTick ()
 Sleep till the next tick is about to happen.
 
std::chrono::steady_clock::duration GetGameInterval ()
 
std::chrono::steady_clock::duration GetDrawInterval ()
 

Private Member Functions

void BlitIndexedToView32 (int left, int top, int right, int bottom)
 
void UpdatePalette (uint first_color, uint num_colors)
 

Private Attributes

int buffer_depth
 Colour depth of used frame buffer.
 
void * pixel_buffer
 used for direct pixel access
 
void * window_buffer
 Colour translation from palette to screen.
 
int window_width
 Current window width in pixel.
 
int window_height
 Current window height in pixel.
 
int window_pitch
 
uint32 palette [256]
 Colour Palette.
 

Additional Inherited Members

- Public Types inherited from Driver
enum  Type {
  DT_BEGIN = 0, DT_MUSIC = 0, DT_SOUND, DT_VIDEO,
  DT_END
}
 The type of driver. More...
 
- Static Public Member Functions inherited from VideoDriver
static VideoDriverGetInstance ()
 Get the currently active instance of the video driver.
 
- Protected Attributes inherited from VideoDriver_Cocoa
Rect dirty_rect
 Region of the screen that needs redrawing.
 
bool buffer_locked
 Video buffer was locked by the main thread.
 
- Protected Attributes inherited from VideoDriver
const uint ALLOWED_DRIFT = 5
 How many times videodriver can miss deadlines without it being overly compensated.
 
std::chrono::steady_clock::time_point next_game_tick
 
std::chrono::steady_clock::time_point next_draw_tick
 
bool fast_forward_key_pressed
 The fast-forward key is being pressed.
 
bool fast_forward_via_key
 The fast-forward was enabled by key press.
 

Detailed Description

Definition at line 86 of file cocoa_v.h.

Member Function Documentation

◆ Start()

const char* VideoDriver_CocoaQuartz::Start ( const StringList parm)
overridevirtual

Start this driver.

Parameters
parmParameters passed to the driver.
Returns
nullptr if everything went okay, otherwise an error message.

Implements Driver.


The documentation for this class was generated from the following file: