FSM

Inheritance:

Methods of FSM:

Methods of DirectObject:

__callEnterFunc
def __callEnterFunc(self, name, *args)

Undocumented function.

__callExitFunc
def __callExitFunc(self, name)

Undocumented function.

__del__
def __del__(self)

Undocumented function.

__init__
def __init__(self, name)

Undocumented function.

__repr__
def __repr__(self)

Undocumented function.

__setState
def __setState(self, newState, *args)

Undocumented function.

__str__
def __str__(self)

Print out something useful about the fsm

cleanup
def cleanup(self)

Undocumented function.

defaultEnter
def defaultEnter(self, *args)

This is the default function that is called if there is no enterState() method for a particular state name.

defaultExit
def defaultExit(self)

This is the default function that is called if there is no exitState() method for a particular state name.

defaultFilter
def defaultFilter(self, request, args)

This is the function that is called if there is no filterState() method for a particular state name.
This default filter function behaves in one of two modes:
(1) if self.defaultTransitions is None, allow any request whose name begins with a capital letter, which is assumed to be a direct request to a particular state. This is similar to the old ClassicFSM onUndefTransition=ALLOW, with no explicit state transitions listed.
(2) if self.defaultTransitions is not None, allow only those requests explicitly identified in this map. This is similar to the old ClassicFSM onUndefTransition=DISALLOW, with an explicit list of allowed state transitions.
Specialized FSM's may wish to redefine this default filter (for instance, to always return the request itself, thus allowing any transition.).

demand
def demand(self, request, *args)

Requests a state transition, by code that does not expect the request to be denied. If the request is denied, raises a RequestDenied exception.
Unlike request(), this method allows a new request to be made while the FSM is currently in transition. In this case, the request is queued up and will be executed when the current transition finishes. Multiple requests will queue up in sequence.

filterOff
def filterOff(self, request, args)

From the off state, we can always go directly to any other state.

forceTransition
def forceTransition(self, request, *args)

Changes unconditionally to the indicated state. This bypasses the filterState() function, and just calls exitState() followed by enterState().

getCurrentOrNextState
def getCurrentOrNextState(self)

Undocumented function.

getStateChangeEvent
def getStateChangeEvent(self)

Undocumented function.

isInTransition
def isInTransition(self)

Undocumented function.

request
def request(self, request, *args)

Requests a state transition (or other behavior). The request may be denied by the FSM's filter function. If it is denied, the filter function may either raise an exception (RequestDenied), or it may simply return None, without changing the FSM's state.
The request parameter should be a string. The request, along with any additional arguments, is passed to the current filterState() function. If filterState() returns a string, the FSM transitions to that state.
The return value is the same as the return value of filterState() (that is, None if the request does not provoke a state transition, otherwise it is a tuple containing the name of the state followed by any optional args.)
If the FSM is currently in transition (i.e. in the middle of executing an enterState or exitState function), an AlreadyInTransition exception is raised (but see demand(), which will queue these requests up and apply when the transition is complete).

requestNext
def requestNext(self, *args)

request the 'next' state in the predefined state array

requestPrev
def requestPrev(self, *args)

request the 'previous' state in the predefined state array

setBroadcastStateChanges
def setBroadcastStateChanges(self, doBroadcast)

Undocumented function.

setStateArray
def setStateArray(self, stateArray)

array of unique states to iterate through

__init__
def __init__(self)

Undocumented function.

accept
def accept(self, event, method, extraArgs=[])

Undocumented function.

acceptOnce
def acceptOnce(self, event, method, extraArgs=[])

Undocumented function.

classTree
def classTree(self)

Undocumented function.

getAllAccepting
def getAllAccepting(self)

Undocumented function.

ignore
def ignore(self, event)

Undocumented function.

ignoreAll
def ignoreAll(self)

Undocumented function.

isAccepting
def isAccepting(self, event)

Undocumented function.

isIgnoring
def isIgnoring(self, event)

Undocumented function.