OpenCPN Partial API docs
Loading...
Searching...
No Matches
meteo_points.h
Go to the documentation of this file.
1
/***************************************************************************
2
* Copyright (C) 2023 Håkan Svensson *
3
* Copyright (C) 2023 Alec Leamas *
4
* *
5
* This program is free software; you can redistribute it and/or modify *
6
* it under the terms of the GNU General Public License as published by *
7
* the Free Software Foundation; either version 2 of the License, or *
8
* (at your option) any later version. *
9
* *
10
* This program is distributed in the hope that it will be useful, *
11
* but WITHOUT ANY WARRANTY; without even the implied warranty of *
12
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
13
* GNU General Public License for more details. *
14
* *
15
* You should have received a copy of the GNU General Public License *
16
* along with this program; if not, see <https://www.gnu.org/licenses/>. *
17
**************************************************************************/
18
28
#ifndef _METEO_POINTS_H__
29
#define _METEO_POINTS_H__
30
31
struct
AisMeteoData
{
32
// Ais8_001_31, Ais8_367_33 Meteo data
33
int
original_mmsi;
34
int
stationID;
// SignalK ID
35
int
month;
// UTC 0
36
int
day;
// UTC 0
37
int
hour;
// UTC 24
38
int
minute;
// UTC 60
39
int
pos_acc;
// low = 0 GNSS
40
int
wind_kn;
// NAN=127
41
int
wind_gust_kn;
// kn NAN=127/122
42
int
wind_dir;
// NAN=360
43
int
wind_gust_dir;
// NAN=360
44
double
air_temp;
// C NAN = -102.4
45
int
rel_humid;
// % NAN = 101
46
double
dew_point;
// NAN = 501(50.1)
47
int
airpress;
// value+799 hPa NAN = 511(1310)
48
int
airpress_tend;
// NAN = 3
49
double
hor_vis;
// NAN = 127(12.7)
50
bool
hor_vis_GT;
// Greater than
51
double
water_lev_dev;
// Water level deviation (incl.tide) NAN = 30
52
double
water_level;
// Water level NAN = -32,768
53
int
water_lev_trend;
// NAN = 3
54
double
current;
// kn NAN = 255(25.5)
55
int
curr_dir;
// NAN = 360
56
double
wave_height;
// m NAN=255(24.5)
57
int
wave_period;
// s NAN = 63
58
int
wave_dir;
// NAN = 360
59
double
swell_height;
// m NAN = 255 (25.5)
60
int
swell_per;
// s NAN = 63
61
int
swell_dir;
// NAN=360
62
int
seastate;
// Bf NAN=13
63
double
water_temp;
// C NAN = 501(50.1)
64
int
precipitation;
// type NAN=7
65
double
salinity;
// ‰ NAN=510(50.0)
66
int
ice;
// NAN=3
67
int
vertical_ref;
// NAN=14
68
};
69
73
class
AisMeteoPoint
{
74
public
:
75
const
int
mmsi;
76
const
wxString lat;
77
const
wxString lon;
78
const
int
siteID;
79
const
int
orig_mmsi;
80
AisMeteoPoint
(
int
mmsi,
const
wxString& lat,
const
wxString& lon,
int
siteID,
81
int
orig_mmsi)
82
: mmsi(mmsi), lat(lat), lon(lon), siteID(siteID), orig_mmsi(orig_mmsi) {}
83
};
84
93
class
AisMeteoPoints
{
94
public
:
95
static
AisMeteoPoints
& GetInstance() {
96
static
AisMeteoPoints
me;
97
return
me;
98
}
99
std::vector<AisMeteoPoint>& GetPoints() {
return
points; }
100
101
void
operator=(
const
AisMeteoPoints
&) =
delete
;
102
AisMeteoPoints
(
AisMeteoPoints
& other) =
delete
;
103
104
private
:
105
AisMeteoPoints
() =
default
;
106
std::vector<AisMeteoPoint> points;
107
};
108
109
#endif
AisMeteoPoint
Add a new point to the list of Meteo stations.
Definition
meteo_points.h:73
AisMeteoPoints
List of Meteo stations, a singleton.
Definition
meteo_points.h:93
AisMeteoData
Definition
meteo_points.h:31
model
include
model
meteo_points.h
Generated on Thu Oct 9 2025 02:28:14 for OpenCPN Partial API docs by
1.9.8