Project

General

Profile

Statistics
| Revision:

root / branches / autonomous_recharging / code / projects / autonomous_recharging / charging_station / charging.h @ 98

History | View | Annotate | Download (1.54 KB)

1
/**
2
 * @file charging.h Charging
3
 *
4
 * @brief Charging station functions
5
 *
6
 * Contains functions for the charging station, controlling
7
 * bay management, homing beacons and BOMS.
8
 **/
9

    
10
/**
11
 * @defgroup charging Charging Station
12
 * 
13
 * @brief Charging Station Functionality
14
 *
15
 * Contains functions for the charging station,
16
 * controlling bay management, the homing beacons
17
 * and BOMS.
18
 *
19
 * @{
20
 **/
21

    
22
//possible robot states
23
#define STATE_NOT_CHARGING 1
24
#define STATE_SEEKING 2
25
#define STATE_DOCKED 3
26

    
27
/** @brief Initialize charging **/
28
void charging_init(void);
29

    
30
/** @brief Initialize an iterator through the robots **/
31
void charging_robot_iterator_init(void);
32
/** @brief Check if there is another robot to iterate through **/
33
int charging_robot_iterator_has_next(void);
34
/** @brief Get the next robot's id **/
35
int charging_robot_iterator_next(void);
36

    
37
/** @brief Get the verify count for a robot **/
38
int charging_get_verify_count(int robot);
39
/** @brief Set the verify count for a robot **/
40
void charging_set_verify_count(int robot, int count);
41

    
42
/** @brief Cancel charging for a robot **/
43
void charging_cancel(int robot);
44
/** @brief Begin seeking for a robot **/
45
void charging_begin_seeking(int robot);
46
/** @brief Dock a robot with the charging station **/
47
void charging_dock(int robot);
48

    
49
/** @brief Check if room is available to charge **/
50
int charging_is_space_available(void);
51
/** @brief Check if a robot is currently seeking **/
52
int charging_is_robot_seeking(void);
53
/** @brief Get the supposed state of a robot **/
54
int charging_get_robot_state(int robot);
55

    
56
/** @} **/
57