PX4 Firmware
PX4 Autopilot Software http://px4.io
input_test.h
Go to the documentation of this file.
1
/****************************************************************************
2
*
3
* Copyright (c) 2016-2017 PX4 Development Team. All rights reserved.
4
*
5
* Redistribution and use in source and binary forms, with or without
6
* modification, are permitted provided that the following conditions
7
* are met:
8
*
9
* 1. Redistributions of source code must retain the above copyright
10
* notice, this list of conditions and the following disclaimer.
11
* 2. Redistributions in binary form must reproduce the above copyright
12
* notice, this list of conditions and the following disclaimer in
13
* the documentation and/or other materials provided with the
14
* distribution.
15
* 3. Neither the name PX4 nor the names of its contributors may be
16
* used to endorse or promote products derived from this software
17
* without specific prior written permission.
18
*
19
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
20
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
21
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
22
* FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
23
* COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
24
* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
25
* BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
26
* OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
27
* AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
28
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
29
* ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
30
* POSSIBILITY OF SUCH DAMAGE.
31
*
32
****************************************************************************/
33
34
/**
35
* @file input_test.h
36
* @author Beat Küng <beat-kueng@gmx.net>
37
*
38
*/
39
40
#pragma once
41
42
#include "
input.h
"
43
44
namespace
vmount
45
{
46
47
/**
48
** class InputTest
49
* Send a single control command, configured via constructor arguments
50
*/
51
class
InputTest
:
public
InputBase
52
{
53
public
:
54
55
/**
56
* set to a fixed angle
57
*/
58
InputTest
(
float
roll_deg,
float
pitch_deg,
float
yaw_deg);
59
virtual
~InputTest
() {}
60
61
/** check whether the test finished, and thus the main thread can quit */
62
bool
finished
();
63
64
virtual
int
update
(
unsigned
int
timeout_ms
,
ControlData
**control_data,
bool
already_active);
65
66
protected
:
67
virtual
int
update_impl
(
unsigned
int
timeout_ms,
ControlData
**control_data,
bool
already_active) {
return
0; }
//not needed
68
69
virtual
int
initialize
();
70
71
virtual
void
print_status
();
72
73
private
:
74
float
_angles
[3];
/**< desired angles in [deg] */
75
};
76
77
78
}
/* namespace vmount */
vmount::InputTest::InputTest
InputTest(float roll_deg, float pitch_deg, float yaw_deg)
set to a fixed angle
Definition:
input_test.cpp:50
input.h
timeout_ms
static int timeout_ms
Definition:
hott_telemetry.cpp:73
vmount::InputTest::update_impl
virtual int update_impl(unsigned int timeout_ms, ControlData **control_data, bool already_active)
Definition:
input_test.h:67
vmount
Definition:
common.h:45
vmount::InputTest::_angles
float _angles[3]
desired angles in [deg]
Definition:
input_test.h:74
vmount::InputTest
class InputTest Send a single control command, configured via constructor arguments ...
Definition:
input_test.h:51
vmount::InputBase
class InputBase Base class for all driver input classes
Definition:
input.h:52
vmount::ControlData
This defines the common API between an input and an output of the vmount driver.
Definition:
common.h:55
vmount::InputTest::initialize
virtual int initialize()
Definition:
input_test.cpp:80
vmount::InputTest::~InputTest
virtual ~InputTest()
Definition:
input_test.h:59
vmount::InputTest::update
virtual int update(unsigned int timeout_ms, ControlData **control_data, bool already_active)
Wait for an input update, with a timeout.
Definition:
input_test.cpp:62
vmount::InputTest::print_status
virtual void print_status()
report status to stdout
Definition:
input_test.cpp:85
vmount::InputTest::finished
bool finished()
check whether the test finished, and thus the main thread can quit
Definition:
input_test.cpp:57
src
modules
vmount
input_test.h
Generated by
1.8.13