Fang-Robotics-MCB
Fang Robotics Team Codebase
Loading...
Searching...
No Matches
linear_interpolation_predictor.hpp
Go to the documentation of this file.
1/*****************************************************************************/
2/********** !!! WARNING: CODE GENERATED BY TAPROOT. DO NOT EDIT !!! **********/
3/*****************************************************************************/
4
5/*
6 * Copyright (c) 2020-2021 Advanced Robotics at the University of Washington <robomstr@uw.edu>
7 *
8 * This file is part of Taproot.
9 *
10 * Taproot 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 3 of the License, or
13 * (at your option) any later version.
14 *
15 * Taproot 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 General Public License for more details.
19 *
20 * You should have received a copy of the GNU General Public License
21 * along with Taproot. If not, see <https://www.gnu.org/licenses/>.
22 */
23
24#ifndef TAPROOT_LINEAR_INTERPOLATION_PREDICTOR_HPP_
25#define TAPROOT_LINEAR_INTERPOLATION_PREDICTOR_HPP_
26
27#include <cstdint>
28
29namespace tap::algorithms
30{
52{
53public:
55
66 void update(float newValue, uint32_t currTime);
67
80 inline float getInterpolatedValue(uint32_t currTime)
81 {
82 return slope * static_cast<float>(currTime - lastUpdateCallTime) + previousValue;
83 }
84
95 void reset(float initialValue, uint32_t initialTime);
96
97private:
98 uint32_t lastUpdateCallTime;
99 float previousValue;
100 float slope;
101}; // class LinearInterpolationPredictor
102
103} // namespace tap::algorithms
104
105#endif // TAPROOT_LINEAR_INTERPOLATION_PREDICTOR_HPP_
Definition linear_interpolation_predictor.hpp:52
void update(float newValue, uint32_t currTime)
Definition linear_interpolation_predictor.cpp:35
float getInterpolatedValue(uint32_t currTime)
Definition linear_interpolation_predictor.hpp:80
void reset(float initialValue, uint32_t initialTime)
Definition linear_interpolation_predictor.cpp:47
LinearInterpolationPredictor()
Definition linear_interpolation_predictor.cpp:28
Definition ballistics.cpp:29