FlightGear next
CurrentWeatherATISInformationProvider.hxx
Go to the documentation of this file.
1/*
2Provide Data for the ATIS Encoder from metarproperties
3Copyright (C) 2014 Torsten Dreyer
4
5This program is free software; you can redistribute it and/or
6modify it under the terms of the GNU General Public License
7as published by the Free Software Foundation; either version 2
8of the License, or (at your option) any later version.
9
10This program is distributed in the hope that it will be useful,
11but WITHOUT ANY WARRANTY; without even the implied warranty of
12MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13GNU General Public License for more details.
14
15You should have received a copy of the GNU General Public License
16along with this program; if not, write to the Free Software
17Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
18*/
19
20#ifndef __CURRENTWEATHER_ATIS_ENCODER_HXX
21#define __CURRENTWEATHER_ATIS_ENCODER_HXX
22
23/* ATIS encoder from current weather */
24
25#include <string>
26#include "ATISEncoder.hxx"
27
29{
30public:
31 explicit CurrentWeatherATISInformationProvider( const std::string & airportId );
33
34protected:
35 virtual bool isValid() const override;
36 virtual std::string airportId() const override;
37 virtual long getTime() const override;
38 virtual int getWindDeg() const override;
39 virtual int getWindMinDeg() const override { return getWindDeg(); }
40 virtual int getWindMaxDeg() const override { return getWindDeg(); }
41 virtual int getWindSpeedKt() const override;
42 virtual int getGustsKt() const override;
43 virtual int getQnh() const override;
44 virtual double getQnhInHg() const override;
45 virtual bool isCavok() const override;
46 virtual int getVisibilityMeters() const override;
47 virtual std::string getPhenomena() const override;
48 virtual CloudEntries getClouds();
49 virtual int getTemperatureDeg() const override;
50 virtual int getDewpointDeg() const override;
51 virtual std::string getTrend() const override;
52
53private:
54 std::string _airportId;
55 SGPropertyNode_ptr _environment;
56
57};
58
59#endif
std::map< int, std::string > CloudEntries