---
title: "PlayHead"
description: "API documentation for PlayHead"
url: https://developer.disguise.one/python-api/docs/playhead/
---

# PlayHead

See also: [Transports Guide](/plugins/guides/transports)

Base class (inherits properties and methods): _[Resource](/python-api/docs/resource#resource)_

Subclasses: _[LayerStackPlayHead](/python-api/docs/layerstackplayhead#layerstackplayhead)_, _[TrackPlayHead](/python-api/docs/trackplayhead#trackplayhead)_

## Properties

#### **holding** : _bool_ _(Read-Only)_

#### **loopSectionMode** : _bool_ _(Read-Only)_

#### **playJustTriggered** : _bool_ _(Read-Only)_

#### **playMode** : _[PlayMode](/python-api/docs/playmode#playmode)_ _(Read-Only)_

#### **playing** : _bool_ _(Read-Only)_

#### **sectionPlayMode** : _bool_ _(Read-Only)_

#### **stopped** : _bool_ _(Read-Only)_

#### **tCurrent** : _float_ _(Read-Only)_

#### **tRender** : _float_ _(Read-Only)_

#### **tRunForever** : _float_ _(Read-Only)_

#### **tRunning** : _float_ _(Read-Only)_

## Methods

#### **getModuleForLayer**(self, layer: _[Layer](/python-api/docs/layer#layer)_) -> _[Module](/python-api/docs/module#module)_

#### **writeLayerFromTimeline**(self, layer: _[Layer](/python-api/docs/layer#layer)_)

Write the layer’s field sequences into its Module at the current tRender.

Called by the GUI when an editor needs the Module to reflect the latest timeline values.  
For active layers the render path already does this every frame, so the GUI only needs  
to call this for layers excluded from the active set (disabled, parent-disabled).

**Parameters**:

-   layer The layer whose Module should be populated from its field sequences.
