Fawkes API Fawkes Development Version
forward_drive_mode.h
1
2/***************************************************************************
3 * forward_drive_mode.h - Implementation of drive-mode "forward"
4 *
5 * Created: Fri Oct 18 15:16:23 2013
6 * Copyright 2002 Stefan Jacobs
7 * 2013-2014 Bahram Maleki-Fard
8 ****************************************************************************/
9
10/* This program is free software; you can redistribute it and/or modify
11 * it under the terms of the GNU General Public License as published by
12 * the Free Software Foundation; either version 2 of the License, or
13 * (at your option) any later version.
14 *
15 * This program is distributed in the hope that it will be useful,
16 * but WITHOUT ANY WARRANTY; without even the implied warranty of
17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18 * GNU Library General Public License for more details.
19 *
20 * Read the full text in the LICENSE.GPL file in the doc directory.
21 */
22
23#ifndef _PLUGINS_COLLI_FORWARD_DRIVE_MODE_H_
24#define _PLUGINS_COLLI_FORWARD_DRIVE_MODE_H_
25
26#include "abstract_drive_mode.h"
27
28namespace fawkes {
29
31{
32public:
33 ForwardDriveModule(Logger *logger, Configuration *config);
35
36 virtual void update();
37
38private:
39 float forward_curvature(float dist_to_target,
40 float dist_to_trajec,
41 float alpha,
42 float cur_trans,
43 float cur_rot);
44
45 float forward_translation(float dist_to_target,
46 float dist_to_front,
47 float alpha,
48 float cur_trans,
49 float cur_rot,
50 float des_rot);
51};
52
53} // namespace fawkes
54
55#endif
This is the base class which calculates drive modes.
Interface for configuration handling.
Definition: config.h:68
This is the Forward drive-module, for forward only movements.
ForwardDriveModule(Logger *logger, Configuration *config)
Constructor.
virtual void update()
Calculate here your desired settings.
Interface for logging.
Definition: logger.h:42
Fawkes library namespace.