/****************************************************************************
 Header file for ToDispenser state machine
 ****************************************************************************/

#ifndef SMToDispenser_H
#define SMToDispenser_H

// Event Definitions
#include "SMEvents.h"

// typedefs for the states
typedef enum {
	To_Aligning,
	To_Tracking,
	To_Reversing,
	To_BlindTurn,
	To_Orienting,
	To_LineFinding
} ToState_t ;


// Public Function Prototypes

//State machine functions
Event_t RunToDispenserSM( Event_t CurrentEvent );
void StartToDispenserSM ( Event_t CurrentEvent );
ToState_t QueryToDispenserSM ( void );

//Other functions
/****************************************************************************
 Function
 QueryAtDispenserFlag

 Returns
 1 if at dispenser, 0 otherwise

 Description
 checks to see if we have arrived at a dispenser.
 ****************************************************************************/
unsigned char QueryAtDispenserFlag (void);

#endif /*SMToDispenser_H */