]> git.mxchange.org Git - flightgear.git/blobdiff - src/Environment/fgclouds.hxx
Added support for shared JSBSim engine and system configurations in fgdata.
[flightgear.git] / src / Environment / fgclouds.hxx
index dff1f8fd0cc6a0ffd4959644d1c8755e1661efa4..cd6df0c3b1653167fb5b2533b710ee7d3882fbb3 100644 (file)
 #ifndef _FGCLOUDS_HXX
 #define _FGCLOUDS_HXX
 
-#ifdef HAVE_CONFIG
-#  include <config.h>
-#endif
-
-#include <simgear/compiler.h>
-#include <simgear/sound/soundmgr_openal.hxx>
-#include <Main/fg_props.hxx>
-
 #include <string>
 
-using std::string;
-
-class SGNewCloud;
+// forward decls
+class SGPropertyNode;
 class SGCloudField;
-class FGMetar;
-class FGEnvironmentCtrl;
 
 class FGClouds {
 
 private:
-void buildCloud(SGPropertyNode *cloud_def_root, SGPropertyNode *box_def_root, const string& name, sgVec3 pos, SGCloudField *layer);
-       void buildLayer(int iLayer, const string& name, double alt, double coverage);
+       double buildCloud(SGPropertyNode *cloud_def_root, SGPropertyNode *box_def_root,
+                      const std::string& name, double grid_z_rand, SGCloudField *layer);
+       void buildLayer(int iLayer, const std::string& name, double coverage);
 
        void buildCloudLayers(void);
 
-       void buildScenario( const string& scenario );
-
-       void setLayer( int iLayer, float alt_m, const string& coverage, const string& layer_type );
-
-       void update_metar_properties( const FGMetar *m );
-
-       void update_env_config ();
-
        int update_event;
-       SGSoundSample *snd_lightning;
-       FGEnvironmentCtrl * _controller;
-       float station_elevation_ft;
-        bool clouds_3d_enabled;
-        bool rebuild_required;
-        string last_scenario;
-        SGPropertyNode *last_env_config, *last_env_clouds;
 
+       bool clouds_3d_enabled;
+    int index;
+  
+    bool add3DCloud(const SGPropertyNode *arg);
+    bool delete3DCloud(const SGPropertyNode *arg);
+    bool move3DCloud(const SGPropertyNode *arg);
+    
 public:
-       FGClouds(FGEnvironmentCtrl * controller);
+       FGClouds();
        ~FGClouds();
 
-       void build(void);
-
-       void init(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);
+       bool get_3dClouds() const;
+       void set_3dClouds(bool enable);
+
 };
 
 #endif // _FGCLOUDS_HXX
+