# devices package

Package providing the “devices” infrastructure.

## `device` module

Module containing the `Device` base class as well as the `RuntimeDevice` implementation and some helper functions to access/set devices.

Exported members: `Device`, `RuntimeDevice`, `all_devices`, `device`, `get_device()`, `reinit_and_delete`, `reinit_devices`, `reset_device`, `seed()`, `set_device()`

Classes

`CurrentDeviceProxy`() | Method proxy for access to the currently active device

`Device`() | Base Device object.

`Dummy`() | Dummy object

`RuntimeDevice`() | The default device used in Brian, state variables are stored as numpy arrays in memory.

Functions

`auto_target`() | Automatically chose a code generation target (invoked when the codegen.target preference is set to `'auto'`.

`get_device`() | Gets the actve `Device` object

`reinit_and_delete`() | Calls `reinit_devices` and additionally deletes the files left behind by the standalone mode in the temporary directory.

`reinit_devices`() | Reinitialize all devices, call `Device.activate` again on the current device and reset the preferences.

`reset_device`([device]) | Reset to a previously used device.

`seed`([seed]) | Set the seed for the random number generator.

`set_device`(device[, build_on_run]) | Set the device used for simulations.

Objects

`active_device` | The currently active device (set with `set_device()`)

`device` | Proxy object to access methods of the current device

`runtime_device` | The default device used in Brian, state variables are stored as numpy arrays in memory.

## Subpackages

- cpp_standalone package
  - `GSLcodeobject` module
  - `codeobject` module
  - `device` module