summaryrefslogtreecommitdiff
path: root/digital/asserv/src/asserv/models.host.h
diff options
context:
space:
mode:
authorNicolas Schodet2011-05-17 01:58:19 +0200
committerNicolas Schodet2011-05-17 01:58:19 +0200
commit9d26b60d08f937ba49962ebfeaa3664f5527bf1a (patch)
tree1dfdf73eb6ba5cb84eb5a5e556f0ac57ad8f7e5a /digital/asserv/src/asserv/models.host.h
parent201aa07cbd28c6be8c4003f126b1ae258f859c68 (diff)
digital/asserv: add robospierre model
Diffstat (limited to 'digital/asserv/src/asserv/models.host.h')
-rw-r--r--digital/asserv/src/asserv/models.host.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/digital/asserv/src/asserv/models.host.h b/digital/asserv/src/asserv/models.host.h
index 403e9cd9..d8f1dcb8 100644
--- a/digital/asserv/src/asserv/models.host.h
+++ b/digital/asserv/src/asserv/models.host.h
@@ -27,6 +27,8 @@
#define ECHANT_PERIOD (1.0 / (14745600.0 / 256 / 256))
+#define CORNERS_NB 4
+
/** Define a robot and its peripherals.
* Encoder characteristics are defined at gearbox output. */
struct robot_t
@@ -55,6 +57,11 @@ struct robot_t
int aux_encoder_steps[AC_ASSERV_AUX_NB];
/** Sensor update function. */
void (*sensor_update) (void);
+ /** Table test function, return false if given robot point is not in
+ * table. */
+ int (*table_test) (double p_x, double p_y);
+ /** Robot corners, from front left, then clockwise. */
+ double corners[CORNERS_NB][2];
};
/** Get a pointer to a model by name, or return 0. */