Comment on page
Feature Macros
Several advanced HFSM2 features are disabled by default to improve build times for the average case, and are explicitly enabled using feature macros:
Macro | Feature | API |
HFSM2_ENABLE_ALL | All
Advanced Features | See below |
HFSM2_ENABLE_UTILITY_THEORY | Utility
Theory
Transitions | Config::RankT<>
Config::UtilityT<>
Config::RandomT<> void *Root::utilize() void *Root::randomize() void FullControl::utilize() void FullControl::randomize() void Plan::utilize() void Plan::randomize() void LoggerInterface::recordUtilityResolution() void LoggerInterface::recordRandomResolution() |
HFSM2_ENABLE_PLANS | Plans | struct Plan
struct ConstPlan
void State::planSucceeded()
void State::planFailed()
ConstPlan Control::plan()
Plan PlanControl::plan()
void FullControl::succeed()
void FullControl::fail()
void LoggerInterface::recordTaskStatus()
void LoggerInterface::recordPlanStatus() |
HFSM2_ENABLE_SERIALIZATION | Serialization | struct SerialBuffer void *Root::load() void *Root::load() |
HFSM2_ENABLE_TRANSITION_HISTORY | Transition History | struct Transition struct TransitionHistory TransitionHistory *Root::transitionHistory() void *Root::replayTransition() void *Root::replayTransitions() |
HFSM2_ENABLE_STRUCTURE_REPORT | Structure Report | struct StructureEntry struct Structure Structure *Root::structure() struct ActivityHistory ActivityHistory *Root::activityHistory() |
HFSM2_ENABLE_VERBOSE_DEBUG_LOG and / orHFSM2_ENABLE_LOG_INTERFACE | Logging | void *Root::attachLogger()
struct LoggerInterface
void LoggerInterface::recordMethod()
void LoggerInterface::recordTransition()
void LoggerInterface::recordTaskStatus()
void LoggerInterface::recordPlanStatus()
void LoggerInterface::recordCancelledPending() void LoggerInterface::recordUtilityResolution() void LoggerInterface::recordRandomResolution() |
Last modified 3yr ago