FlightGear next
jsinput.h
Go to the documentation of this file.
1// jsinput.h -- wait for and identify input from joystick
2//
3// Written by Tony Peden, started May 2001
4//
5// Copyright (C) 2001 Tony Peden (apeden@earthlink.net)
6//
7// This program is free software; you can redistribute it and/or
8// modify it under the terms of the GNU General Public License as
9// published by the Free Software Foundation; either version 2 of the
10// License, or (at your option) any later version.
11//
12// This program is distributed in the hope that it will be useful, but
13// WITHOUT ANY WARRANTY; without even the implied warranty of
14// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15// General Public License for more details.
16//
17// You should have received a copy of the GNU General Public License
18// along with this program; if not, write to the Free Software
19// Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
20
21
22
23#ifndef _JSINPUT_H
24#define _JSINPUT_H
25
26#include <cmath> // for fabs
27
28#include "jssuper.h"
29
30class jsInput {
31 private:
32 jsSuper *jss;
33 bool pretty_display;
34 float axes[_JS_MAX_AXES];
35 float axes_iv[MAX_JOYSTICKS][_JS_MAX_AXES];
36 int button_iv[MAX_JOYSTICKS];
37
38 int joystick,axis,button;
39 bool axis_positive;
40
41 float axis_threshold;
42
43 public:
44 jsInput(jsSuper *jss);
45 ~jsInput(void);
46
47 inline void displayValues(bool bb) { pretty_display=bb; }
48
49 int getInput(void);
50 void findDeadBand(void);
51
52 inline int getInputJoystick(void) { return joystick; }
53 inline int getInputAxis(void) { return axis; }
54 inline int getInputButton(void) { return button; }
55 inline bool getInputAxisPositive(void) { return axis_positive; }
56
57 inline float getReturnThreshold(void) { return axis_threshold; }
58 inline void setReturnThreshold(float ff)
59 { if(fabs(ff) <= 1.0) axis_threshold=ff; }
60};
61
62
63#endif
jsInput(jsSuper *jss)
Definition jsinput.cxx:33
void setReturnThreshold(float ff)
Definition jsinput.h:58
int getInputJoystick(void)
Definition jsinput.h:52
int getInputButton(void)
Definition jsinput.h:54
~jsInput(void)
Definition jsinput.cxx:40
int getInputAxis(void)
Definition jsinput.h:53
bool getInputAxisPositive(void)
Definition jsinput.h:55
float getReturnThreshold(void)
Definition jsinput.h:57
int getInput(void)
Definition jsinput.cxx:42
void findDeadBand(void)
Definition jsinput.cxx:128
void displayValues(bool bb)
Definition jsinput.h:47
#define MAX_JOYSTICKS
Definition jssuper.h:28