//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
-// Foundation, 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA
+// Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
//
//
#ifndef _FGCLOUDS_HXX
#include <simgear/sound/soundmgr_openal.hxx>
#include <Main/fg_props.hxx>
-#include STL_STRING
+#include <string>
-SG_USING_STD(string);
+using std::string;
-class SGNewCloud;
+class SGSampleGroup;
class SGCloudField;
+class SGNewCloud;
class FGMetar;
-class FGEnvironmentCtrl;
+//class FGEnvironmentCtrl;
class FGClouds {
private:
- SGNewCloud *buildCloud(SGPropertyNode *cloud_def_root, string name);
- void buildLayer(SGCloudField *layer, string name, double alt, double coverage);
-
- void buildMETAR(void);
-
- void buildScenario( string scenario );
+ double buildCloud(SGPropertyNode *cloud_def_root, SGPropertyNode *box_def_root, const string& name, double grid_z_rand, SGCloudField *layer);
+ void buildLayer(int iLayer, const string& name, double alt, double coverage);
- void setLayer( int iLayer, float alt_m, string coverage, string layer_type );
-
- void update_metar_properties( FGMetar *m );
-
- void FGClouds::update_env_config ();
+ void buildCloudLayers(void);
int update_event;
SGSoundSample *snd_lightning;
- FGEnvironmentCtrl * _controller;
- float station_elevation_ft;
+ bool clouds_3d_enabled;
public:
- FGClouds(FGEnvironmentCtrl * controller);
+ FGClouds();
~FGClouds();
- void build(void);
-
void init(void);
int get_update_event(void) const;
void set_update_event(int count);
-
+ bool get_3dClouds() const;
+ void set_3dClouds(bool enable);
};
#endif // _FGCLOUDS_HXX