1 // Class encapulating the metar report information
3 // Individual METAR reports are found in this directory:
4 // ftp://weather.noaa.gov/data/observations/metar/stations
13 #include <simgear/math/point3d.hxx>
14 #include <simgear/math/polar3d.hxx>
18 // Typedefs, enumerations
22 void *m_DecodedReport;
23 // A void pointer which is cast to the correct type in the cpp file.
24 // I don't want the ugly metar structure and header files dragged into
25 // every report user program file.
26 // Probably should be a smart pointer if copy constructor and assignment
41 // Directions in degrees
44 // Temperature in centigrade
50 // Add cloud more cloud info...
51 // Cloud code characters...
59 int TornadicDirection();
60 int TornadicMovementDirection();
62 int ThunderStormDirection();
63 int ThunderStormMovementDirection();
68 int LightningDirection();
69 bool OccationalLightning();
70 bool FrequentLightning();
71 bool ContinuousLightning();
74 return OccationalLightning() || FrequentLightning() || ContinuousLightning();
77 bool CloudToGroundLightning();
78 bool InterCloudLightning();
79 bool CloudToCloudLightning();
80 bool CloudToAirLightning();
82 bool DistantLightning();
83 bool AirportLightning();
84 bool OverheadLightning();
85 bool VicinityLightning();
88 int DewpointTemperature();
90 int VerticalVisibility();
92 int EstimatedCeiling();
93 int VariableSkyLayerHeight();
95 int SnowDepthInches();
101 const CMetarReport &rNewObj );
102 // Copy constructor. Not implemented.
104 CMetarReport &operator =(
105 const CMetarReport &rObj );
106 // Assignment operator. Not implemented.
109 std::ostream& operator << ( std::ostream&, CMetarReport& );