# ThermostatTrait.ScheduleTransitionStruct

# ThermostatTrait.ScheduleTransitionStruct


```
class ThermostatTrait.ScheduleTransitionStruct : ClusterStruct
```

<br />

*** ** * ** ***

A schedule transition.

## Summary

| ### Nested types |
|---|
| `@https://developers.home.google.com/reference/kotlin/com/google/home/annotation/HomeExperimentalGenericApi enum https://developers.home.google.com/reference/kotlin/com/google/home/matter/standard/ThermostatTrait.ScheduleTransitionStruct.StructFields : https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-enum/index.html, https://developers.home.google.com/reference/kotlin/com/google/home/Field` Descriptor enum for this struct's fields. |

| ### Public constructors |
|---|
| `https://developers.home.google.com/reference/kotlin/com/google/home/matter/standard/ThermostatTrait.ScheduleTransitionStruct#ScheduleTransitionStruct(com.google.home.matter.standard.ThermostatTrait.ScheduleDayOfWeekBitmap,kotlin.UShort,com.google.home.matter.serialization.OptionalValue,com.google.home.matter.serialization.OptionalValue,com.google.home.matter.serialization.OptionalValue,com.google.home.matter.serialization.OptionalValue)( dayOfWeek: https://developers.home.google.com/reference/kotlin/com/google/home/matter/standard/ThermostatTrait.ScheduleDayOfWeekBitmap, transitionTime: https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-u-short/index.html, presetHandle: https://developers.home.google.com/reference/kotlin/com/google/home/matter/serialization/OptionalValue<https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-byte-array/index.html>, systemMode: https://developers.home.google.com/reference/kotlin/com/google/home/matter/serialization/OptionalValue<https://developers.home.google.com/reference/kotlin/com/google/home/matter/standard/ThermostatTrait.SystemModeEnum>, coolingSetpoint: https://developers.home.google.com/reference/kotlin/com/google/home/matter/serialization/OptionalValue<https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-short/index.html>, heatingSetpoint: https://developers.home.google.com/reference/kotlin/com/google/home/matter/serialization/OptionalValue<https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-short/index.html> )` Creates the ScheduleTransitionStruct class. |

| ### Public functions |
|---|---|
| `open https://developers.home.google.com/reference/kotlin/com/google/home/StructDescriptor` | `@https://developers.home.google.com/reference/kotlin/com/google/home/annotation/HomeExperimentalGenericApi https://developers.home.google.com/reference/kotlin/com/google/home/matter/standard/ThermostatTrait.ScheduleTransitionStruct#getDescriptor()()` Returns the descriptor for the struct. |
| `open https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html?` | `@https://developers.home.google.com/reference/kotlin/com/google/home/annotation/HomeExperimentalGenericApi https://developers.home.google.com/reference/kotlin/com/google/home/matter/standard/ThermostatTrait.ScheduleTransitionStruct#getFieldValueById(kotlin.UInt)(tagId: https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-u-int/index.html)` Returns the value of the field for the given tag ID. |

| ### Public properties |
|---|---|
| `https://developers.home.google.com/reference/kotlin/com/google/home/matter/serialization/OptionalValue<https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-short/index.html>` | `https://developers.home.google.com/reference/kotlin/com/google/home/matter/standard/ThermostatTrait.ScheduleTransitionStruct#coolingSetpoint()` The cooling setpoint for the transition. |
| `https://developers.home.google.com/reference/kotlin/com/google/home/matter/standard/ThermostatTrait.ScheduleDayOfWeekBitmap` | `https://developers.home.google.com/reference/kotlin/com/google/home/matter/standard/ThermostatTrait.ScheduleTransitionStruct#dayOfWeek()` A bitmask of days of the week that the transition applies to. |
| `https://developers.home.google.com/reference/kotlin/com/google/home/matter/serialization/OptionalValue<https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-short/index.html>` | `https://developers.home.google.com/reference/kotlin/com/google/home/matter/standard/ThermostatTrait.ScheduleTransitionStruct#heatingSetpoint()` The cooling setpoint for the transition. |
| `https://developers.home.google.com/reference/kotlin/com/google/home/matter/serialization/OptionalValue<https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-byte-array/index.html>` | `https://developers.home.google.com/reference/kotlin/com/google/home/matter/standard/ThermostatTrait.ScheduleTransitionStruct#presetHandle()` The preset used at the transition time. |
| `https://developers.home.google.com/reference/kotlin/com/google/home/matter/serialization/OptionalValue<https://developers.home.google.com/reference/kotlin/com/google/home/matter/standard/ThermostatTrait.SystemModeEnum>` | `https://developers.home.google.com/reference/kotlin/com/google/home/matter/standard/ThermostatTrait.ScheduleTransitionStruct#systemMode()` The default mode to which the thermostat will switch for this transition, overriding the default for the schedule. |
| `https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-u-short/index.html` | `https://developers.home.google.com/reference/kotlin/com/google/home/matter/standard/ThermostatTrait.ScheduleTransitionStruct#transitionTime()` The time of day at which the transition becomes active, in terms of minutes within the day. |

## Public constructors

### ScheduleTransitionStruct

```
ScheduleTransitionStruct(
    dayOfWeek: ThermostatTrait.ScheduleDayOfWeekBitmap = ScheduleDayOfWeekBitmap(),
    transitionTime: UShort,
    presetHandle: OptionalValue<ByteArray> = OptionalValue.absent(),
    systemMode: OptionalValue<ThermostatTrait.SystemModeEnum> = OptionalValue.absent(),
    coolingSetpoint: OptionalValue<Short> = OptionalValue.absent(),
    heatingSetpoint: OptionalValue<Short> = OptionalValue.absent()
)
```

Creates the ScheduleTransitionStruct class.

## Public functions

### getDescriptor

```
@HomeExperimentalGenericApi
open fun getDescriptor(): StructDescriptor
```

Returns the descriptor for the struct.

### getFieldValueById

```
@HomeExperimentalGenericApi
open fun getFieldValueById(tagId: UInt): Any?
```

Returns the value of the field for the given tag ID.

## Public properties

### coolingSetpoint

```
val coolingSetpoint: OptionalValue<Short>
```

The cooling setpoint for the transition.

### dayOfWeek

```
val dayOfWeek: ThermostatTrait.ScheduleDayOfWeekBitmap
```

A bitmask of days of the week that the transition applies to.

### heatingSetpoint

```
val heatingSetpoint: OptionalValue<Short>
```

The cooling setpoint for the transition.

### presetHandle

```
val presetHandle: OptionalValue<ByteArray>
```

The preset used at the transition time.

### systemMode

```
val systemMode: OptionalValue<ThermostatTrait.SystemModeEnum>
```

The default mode to which the thermostat will switch for this transition, overriding the default for the schedule.

### transitionTime

```
val transitionTime: UShort
```

The time of day at which the transition becomes active, in terms of minutes within the day.