SMACC – State Machine Asynchronous C++
An Event-Driven, Asynchronous, Behavioral State Machine Library for real-time ROS (Robotic Operating System) applications written in C++
Menu
Skip to content
About
Contributors
License
Contact Us
Theory
Target Robot Platforms
Behavioral vs Protocol State Machines
The Synthesis of SMACC
Comparisons
Statechart vs MSM
SMACC vs Behavior trees
Coroutines
Concepts
Intro to Substate Objects
Orthogonals
Event Model
Clients
Client Behaviors
Hierarchical States
Threading Model
Exceptions
Tutorials
Getting Started
Naming Convention
SMACC States
Transitions
Order of Function Calls
State Reactors
Using ROS Parameters to define State Behavior
Resources
Boost Statechart Basics
Async State Machines
Boost Statechart Advanced
actionlib
Finer Points
Rules for Good SMACC Programming
History State Declaration Order
On creating clients
SMACC Viewer
SMACC Viewer
SMACC RViz Plugin
GitHub
GitHub Repo
Robots
Gallery
YouTube
Active Topics
To Do
The Next Big Push
MoveIt
LTTng
Custom Allocation
ROS 2
Real-time Roadmap
SMACC Automated Run-time Testing
Operation DB-AI
New Clients
MoveEyes/MoveEyesZ
Head Client
Perception Client
Fixed-Wing UAV
Rotorwing UAV – Ardupilot
Legged Robots
Inactive Topics
ROS Answers
News
ROS Discourse – SMACC Announcement
ROS Developers Podcast #74
ROS Discourse – MGI Announcement
Exceptions
ROS roscpp Exception Handling
http://wiki.ros.org/roscpp/Overview/Exceptions