Comments (6)
I was going to use this library for doing fsm for like thousands of AI bots... this no longer seems viable if I there's not a way to instantiate a Fsm object for each bot. (Novice c++ learner so not positive if there's a workaround).
from tinyfsm.
hm nvermind i'll just be using https://www.boost.org/doc/libs/1_64_0/libs/msm since it matches more closely what I was needing in terms of functionality.
from tinyfsm.
As you state correctly, Fsm and states are all static instances of template types. This means that it's not possible to have more than one instance for as specific Fsm.
It might be possible with some template metaprogramming magic, and I remember doing some experiments with this, but it became pretty complicated, so I dropped it (as one main goal of tinyfsm is to keep it simple).
from tinyfsm.
Here's how you can have multiple state machines of the same type, declaring a template state machine: examples/api/multiple_switch.cpp.
from tinyfsm.
Same problem. I wanted to use this library for a websocket server - websockets as state machines.
I came across Boost.SML.
from tinyfsm.
@digint Can I ask why is it this way, instead of FSM being class that you can create multiple instances of?
from tinyfsm.
Related Issues (20)
- Passing data into the State machine. HOT 2
- Events double dispatching support HOT 3
- Should FSM_INITIAL_STATE call entry? HOT 1
- Is it possible to query the current state of the State Machine? HOT 4
- How do you pass a SM to a function? HOT 1
- non virtual destructor HOT 3
- State update loop HOT 4
- Linking error HOT 3
- Not able to compile with IAR ARM v8.20.2 HOT 2
- size on Mac doesn't support -B flag HOT 1
- calling dispatch() before start() throws unhandled exception with read access violation HOT 2
- any plan for latest tag release ? HOT 4
- Doesn't compile when debug information is enabled. HOT 2
- How to separate state classes from the state machine class?
- Is it possible to set initial state (at runtime) to something which is different from what was passed in FSM_INITIAL_STATE? HOT 1
- is it possible to instantiate multiple Elevators classes, using the same elevator.hpp and .cpp? HOT 3
- connecting IO class with Tiny FSM HOT 2
- Testing tinyFSM state machines with VectorCAST?
- Calling dispatch() and/or transit() from action function HOT 3
- Handle multiple FSMs HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from tinyfsm.