92 packages tagged with “fsm”
State Machine Framework
Finite-state machine (FSM) pattern implementation
Very simple and easy testable (TDD) hierarchical state machine. Only 3 simple steps needed. 1) Define triggers (enum) 2) Create states (IState) 3) Implement configurator (IBascoConfigurator)
biz.dfch.CS.StateMachine ======================== A simple C# based State Machine that can be configured via State Transitions based on an idea by [Juliet](http://stackoverflow.com/users/40516/juliet) "[Simple state machine example in C#?](http://stackoverflow.com/questions/5923767/simple-state-machine-example-in-c)" # DESCRIPTION The project contains an extendable StateMachine that defines a few simple states and two conditions ("Continue", "Cancel") that can be used to advance (transition) through that state machine. When instatiating the StateMachine with the default constructor the following states, conditions and transitions will be set up per default ## States * Running * InternalErrorState * Completed * Cancelled * Disposed ## Conditions * Continue * Cancel ## Transitions Source state | Condition | Target state :-----|:-----|:------ Created | Continue | Running Created | Cancel | InternalErrorState Running | Continue | Completed Running | Cancel | Cancelled Completed | Continue | Disposed Completed | Cancel | InternalErrorState Cancelled | Continue | Disposed Cancelled | Cancel | InternalErrorState InternalErrorState | Continue | Disposed ## Basic functionalities 1. The [`Continue`](./biz.dfch.CS.StateMachine/StateMachine.cs#L94) condition makes a transition from an arbitrary state to the next state as the "good case" 1. The [`Cancel`](./biz.dfch.CS.StateMachine/StateMachine.cs#L02) condition makes a transition from an arbitrary state to the next state as the "bad case" 1. Furthermore there is the [`GetNext`](./biz.dfch.CS.StateMachine/StateMachine.cs#L306) method to transit to the next state based on a given condition. There are as well methods for exporting and importing the configuration along with the states: * [`GetStringRepresentation()`](https://github.com/dfensgmbh/biz.dfch.CS.StateMachine/blob/master/biz.dfch.CS.StateMachine/StateMachine.cs#L345) * [`SetupStateMachine(String configuration, String currentState = null, String previousState = null)`](https://github.com/dfensgmbh/biz.dfch.CS.StateMachine/blob/master/biz.dfch.CS.StateMachine/StateMachine.cs#L135)
Initial prototype of a very simple finite state machine.
Finite-state machine (FSM) with a fluent interface and mediators compatibility
Fluent Finite State Machine library for CLR
A simple Finite State Machine library.
IegTools.Sequencer provides a fluent interface for creating easy-to-read and extensible sequences, eliminating the need for lengthy if-else statements. Predecessor of FluentSeq - transaction-based architecture
A Short, Simple, and Straightforward State (S4) Machine Library for .NET
Stateless FSM machine compiled for .net 3.5, valid for using it with Monodevelop and Unity projects.
A state machine library that makes implementing state transitions more fun. Now with async execution.
Extends the S4M state machine library to support Rx.NET and makes its state machines composable at runtime.
Efficient Tiny State Machine using object callbacks.
A simple "stateless" finite-state machine library for .NET.
A set of extensions for the S4M.Core .NET library that add message timing and scheduling to S4M's state machines.
CityLizard Framework allows developers to design strongly typed XML and HTML using .NET languages, such as C#, VB, F#, Nemerle. The project inspired by LINQ to XSD and Sharp DOM.
Base for an ASP.NET Model Control View design pattern with session persistence and optionally SMC, the State Machine Compiler
Chequered is a pattern library.