BpodSystem.StateMachineInfo

Description

A struct containing human-readable information about the currently connected state machine hardware.

Different state machine devices will populate this struct differently, resulting in different possible events and outputs.

It has the following fields:

  • nEvents: the total number of unique events monitored from input channels

  • EventNames: A character string naming each event

    • Each event is a state of an input channel

    • Use these with the AddState() function when writing state machines.

  • InputChannelNames: A character string naming each input channel

    • Each channel is capable of generating multiple states

    • Use these with the SetCondition() function

  • nOutputChannels: the total number of unique output channels

  • OutputChannelNames: A character string naming each output channel

    • Use these with the AddState() and SetGlobalTimer() functions

  • MaxStates: The maximum number of states supported by the connected state machine

Example

>> BpodSystem.StateMachineInfo.OutputChannelNames

ans =

Columns 1 through 7

'Serial1' 'Serial2' 'Serial3' 'SoftCode' 'ValveState' 'BNC1' 'BNC2'

Columns 8 through 15

'Wire1' 'Wire2' 'Wire3' 'PWM1' 'PWM2' 'PWM3' 'PWM4' 'PWM5'

Columns 16 through 20

'PWM6' 'PWM7' 'PWM8' 'GlobalTimerTrig' 'GlobalTimerCancel'

Column 21

'GlobalCounterReset'