DESERT 4.0.0
uwdriftposition.h
Go to the documentation of this file.
1//
2// Copyright (c) 2017 Regents of the SIGNET lab, University of Padova.
3// 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// 1. Redistributions of source code must retain the above copyright
9// notice, this list of conditions and the following disclaimer.
10// 2. Redistributions in binary form must reproduce the above copyright
11// notice, this list of conditions and the following disclaimer in the
12// documentation and/or other materials provided with the distribution.
13// 3. Neither the name of the University of Padova (SIGNET lab) nor the
14// names of its contributors may be used to endorse or promote products
15// derived from this software without specific prior written permission.
16//
17// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
18// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
19// TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
20// PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
21// CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
22// EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
23// PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
24// OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
25// WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
26// OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
27// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
28//
29
39#ifndef _UWDRIFTPOSITION_
40#define _UWDRIFTPOSITION_
41
42#include "node-core.h"
43
44#include <cmath>
45#include <cstdlib>
46#include <ctime>
47#include <iostream>
48
52class UwDriftPosition : public Position
53{
54
55public:
60
64 virtual ~UwDriftPosition();
65
76 virtual int command(int, const char *const *);
77
78protected:
79 double xFieldWidth_;
81 double yFieldWidth_;
83 double zFieldWidth_;
85 int boundx_;
86 int boundy_;
87 int boundz_;
91 double alpha_;
94 double deltax_;
96 double deltay_;
98 double deltaz_;
103 double updateTime_;
106 int debug_;
113 virtual void update(const double &);
114
122 virtual double getX();
123
131 virtual double getY();
132
140 virtual double getZ();
141
146 virtual short getSign() const;
147
148private:
152};
153
154#endif // _UWDRIFTPOSITION_
Definition uwdriftposition.h:53
double deltax_
Definition uwdriftposition.h:94
virtual int command(int, const char *const *)
Definition uwdriftposition.cpp:112
double old_speed_z_
Definition uwdriftposition.h:151
double starting_speed_x_
Definition uwdriftposition.h:100
double zFieldWidth_
Definition uwdriftposition.h:83
double xFieldWidth_
Definition uwdriftposition.h:79
virtual ~UwDriftPosition()
Definition uwdriftposition.cpp:107
double old_speed_x_
Definition uwdriftposition.h:149
double speed_horizontal_
Definition uwdriftposition.h:88
int debug_
Definition uwdriftposition.h:106
double old_speed_y_
Definition uwdriftposition.h:150
double starting_speed_z_
Definition uwdriftposition.h:102
virtual void update(const double &)
Definition uwdriftposition.cpp:118
double yFieldWidth_
Definition uwdriftposition.h:81
virtual double getZ()
Definition uwdriftposition.cpp:263
double deltay_
Definition uwdriftposition.h:96
virtual double getX()
Definition uwdriftposition.cpp:245
virtual short getSign() const
Definition uwdriftposition.cpp:234
double speed_longitudinal_
Definition uwdriftposition.h:89
double speed_vertical_
Definition uwdriftposition.h:90
double starting_speed_y_
Definition uwdriftposition.h:101
int boundy_
Definition uwdriftposition.h:86
double nextUpdateTime_
Definition uwdriftposition.h:104
double updateTime_
Definition uwdriftposition.h:103
int boundx_
Definition uwdriftposition.h:85
UwDriftPosition()
Definition uwdriftposition.cpp:63
double alpha_
Definition uwdriftposition.h:91
virtual double getY()
Definition uwdriftposition.cpp:254
double deltaz_
Definition uwdriftposition.h:98
int boundz_
Definition uwdriftposition.h:87