This document contains function prototypes and typedefs for a hierarchical state machine template used for target tracking. It defines an enumeration for the different states of target tracking, including waiting, rotating, driving, and fast ramping. It also prototypes public functions for running and starting the state machine, querying the current state, initializing control, checking if the target is reached or in sight, and setting the target coordinates.
Download as RTF, PDF, TXT or read online on Scribd
0 ratings0% found this document useful (0 votes)
139 views
Targettracking H
This document contains function prototypes and typedefs for a hierarchical state machine template used for target tracking. It defines an enumeration for the different states of target tracking, including waiting, rotating, driving, and fast ramping. It also prototypes public functions for running and starting the state machine, querying the current state, initializing control, checking if the target is reached or in sight, and setting the target coordinates.
Template header file for Hierarchical Sate Machines AKA StateCharts
02/08/12 adjsutments for use with the Events and Services Framework Gen2 3/17/09 Fixed prototpyes to use Event_t ****************************************************************************/ #ifndef HSMTemplate_H #define HSMTemplate_H // typedefs for the states // State definitions for use with the query function typedef enum { WaitTargetTracking, RotateToTarget, DriveToTarget, FastOntoRamp } TargetTrackingState_t ; // Public Function Prototypes ES_Event RunTargetTracking( ES_Event CurrentEvent ); void StartTargetTracking ( ES_Event CurrentEvent ); TargetTrackingState_t QueryTargetTrackingState ( void ); void InitTargetTrackingControl(void); bool TargetReached(void); bool TargetInSight(void); void SetTarget(double x, double y); #endif /*SHMTemplate_H */