ros2_control - rolling
control_toolbox
include
control_toolbox
sinusoid.hpp
1
// Copyright (c) 2009, Willow Garage, Inc.
2
// All rights reserved.
3
//
4
// Software License Agreement (BSD License 2.0)
5
//
6
// Redistribution and use in source and binary forms, with or without
7
// modification, are permitted provided that the following conditions
8
// are met:
9
//
10
// * Redistributions of source code must retain the above copyright
11
// notice, this list of conditions and the following disclaimer.
12
// * Redistributions in binary form must reproduce the above
13
// copyright notice, this list of conditions and the following
14
// disclaimer in the documentation and/or other materials provided
15
// with the distribution.
16
// * Neither the name of the Willow Garage nor the names of its
17
// contributors may be used to endorse or promote products derived
18
// from this software without specific prior written permission.
19
//
20
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
21
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
22
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
23
// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
24
// COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
25
// INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
26
// BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
27
// LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
28
// CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
29
// LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
30
// ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
31
// POSSIBILITY OF SUCH DAMAGE.
32
35
#ifndef CONTROL_TOOLBOX__SINUSOID_HPP_
36
#define CONTROL_TOOLBOX__SINUSOID_HPP_
37
38
namespace
control_toolbox
39
{
48
class
Sinusoid
49
{
50
public
:
54
Sinusoid
();
55
64
Sinusoid
(
double
offset,
double
amplitude,
double
frequency,
double
phase);
65
69
virtual
~Sinusoid
();
70
74
void
debug
();
75
84
double
update
(
double
time,
double
& qd,
double
& qdd);
85
86
private
:
87
double
offset_;
88
double
amplitude_;
89
double
frequency_;
90
double
phase_;
91
};
92
93
}
// namespace control_toolbox
94
95
#endif
// CONTROL_TOOLBOX__SINUSOID_HPP_
control_toolbox::Sinusoid
A basic sine class.
Definition:
sinusoid.hpp:49
control_toolbox::Sinusoid::debug
void debug()
Definition:
sinusoid.cpp:63
control_toolbox::Sinusoid::update
double update(double time, double &qd, double &qdd)
Gets the value and derivatives of the sinusoid at a given time.
Definition:
sinusoid.cpp:51
control_toolbox::Sinusoid::Sinusoid
Sinusoid()
Constructor.
Definition:
sinusoid.cpp:49
control_toolbox::Sinusoid::~Sinusoid
virtual ~Sinusoid()
Definition:
sinusoid.cpp:47
control_toolbox
Definition:
dither.hpp:46
Generated by
1.9.1