# AIExecMode Class Reference

Class to switch current mode to Execute Mode. More...

`#include <ai_execmode.hpp>`

Inheritance diagram for AIExecMode:

## Public Member Functions
| AIExecMode ()
| Creating instance of this class switches the build mode to Execute.
| ~AIExecMode ()
| Destroying this instance reset the building mode to the mode it was in when the instance was created.
## Static Public Member Functions
static const char * | GetClassName ()
## Static Protected Member Functions
static bool | ModeProc (TileIndex tile, uint32 p1, uint32 p2, uint procc, CommandCost costs)
| The callback proc for Execute mode.
## Private Attributes
AIModeProc * | last_mode
AIObject * | last_instance

## Detailed Description

Class to switch current mode to Execute Mode.

If you create an instance of this class, the mode will be switched to Execute. The original mode is stored and recovered from when ever the instance is destroyed. In Execute mode all commands you do are executed for real.

Definition at line 17 of file ai_execmode.hpp.

## Constructor & Destructor Documentation

AIExecMode::AIExecMode | ( |  | ) |

Creating instance of this class switches the build mode to Execute.

Note:
  When the instance is destroyed, he restores the mode that was current when the instance was created!

Definition at line 18 of file ai_execmode.cpp.

References AIObject::GetDoCommandMode(), AIObject::GetDoCommandModeInstance(), ModeProc(), and AIObject::SetDoCommandMode().

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

- src/ai/api/ai_execmode.hpp
- src/ai/api/ai_execmode.cpp