-
Notifications
You must be signed in to change notification settings - Fork 70
/
Copy pathTemperature.i
88 lines (84 loc) · 3.57 KB
/
Temperature.i
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
/*
* Copyright (C) 2021 Open Source Robotics Foundation
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*
*/
%module temperature
%{
#include <gz/math/Temperature.hh>
%}
%include "std_string.i"
namespace ignition
{
namespace math
{
class Temperature
{
%rename("%(undercase)s", %$isfunction, %$ismember, %$not %$isconstructor) "";
public: Temperature();
public: Temperature(const double _temp);
public: Temperature(const Temperature &_temp);
public: virtual ~Temperature();
public: static double KelvinToCelsius(const double _temp);
public: static double KelvinToFahrenheit(const double _temp);
public: static double CelsiusToFahrenheit(const double _temp);
public: static double CelsiusToKelvin(const double _temp);
public: static double FahrenheitToCelsius(const double _temp);
public: static double FahrenheitToKelvin(const double _temp);
public: void SetKelvin(const double _temp);
public: void SetCelsius(const double _temp);
public: void SetFahrenheit(const double _temp);
public: double Kelvin() const;
public: double Celsius() const;
public: double Fahrenheit() const;
public: double operator()() const;
public: Temperature operator+(const double _temp);
public: Temperature operator+(const Temperature &_temp);
public: const Temperature &operator+=(const double _temp);
public: const Temperature &operator+=(const Temperature &_temp);
public: Temperature operator-(const double _temp);
public: Temperature operator-(const Temperature &_temp);
public: const Temperature &operator-=(const double _temp);
public: const Temperature &operator-=(const Temperature &_temp);
public: Temperature operator*(const double _temp);
public: Temperature operator*(const Temperature &_temp);
public: const Temperature &operator*=(const double _temp);
public: const Temperature &operator*=(const Temperature &_temp);
public: Temperature operator/(const double _temp);
public: Temperature operator/(const Temperature &_temp);
public: const Temperature &operator/=(const double _temp);
public: const Temperature &operator/=(const Temperature &_temp);
public: bool operator==(const Temperature &_temp) const;
public: bool operator==(const double _temp) const;
public: bool operator!=(const Temperature &_temp) const;
public: bool operator!=(const double _temp) const;
public: bool operator<(const Temperature &_temp) const;
public: bool operator<(const double _temp) const;
public: bool operator<=(const Temperature &_temp) const;
public: bool operator<=(const double _temp) const;
public: bool operator>(const Temperature &_temp) const;
public: bool operator>(const double _temp) const;
public: bool operator>=(const Temperature &_temp) const;
public: bool operator>=(const double _temp) const;
};
%extend Temperature
{
std::string __str__() const {
std::ostringstream out;
out << *$self;
return out.str();
}
}
}
}