Search Results for

Show / Hide Table of Contents

# Interface IMainLoopDriver

Public interface to create your own platform specific main loop driver.

###### Namespace: Terminal.Gui

###### Assembly: Terminal.Gui.dll

##### Syntax

    public interface IMainLoopDriver

### Methods

#### EventsPending(Boolean)

Must report whether there are any events pending, or even block waiting for events.

##### Declaration

    bool EventsPending(bool wait)

##### Parameters

Type | Name | Description
--- | --- | ---
System.Boolean | wait | If set to `true` wait until an event is available, otherwise return immediately.

##### Returns

Type | Description
--- | ---
System.Boolean | `true`, if there were pending events, `false` otherwise.

#### MainIteration()

The iteration function.

##### Declaration

    void MainIteration()

#### Setup(MainLoop)

Initializes the main loop driver, gets the calling main loop for the initialization.

##### Declaration

    void Setup(MainLoop mainLoop)

##### Parameters

Type | Name | Description
--- | --- | ---
MainLoop | mainLoop | Main loop.

#### Wakeup()

Wakes up the mainloop that might be waiting on input, must be thread safe.

##### Declaration

    void Wakeup()