]> 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 dee821c1dea47ef911524c44760541bbe243c732..cd6df0c3b1653167fb5b2533b710ee7d3882fbb3 100644 (file)
 //
 // 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
 #define _FGCLOUDS_HXX
 
-#ifdef HAVE_CONFIG
-#  include <config.h>
-#endif
+#include <string>
 
-#include <simgear/compiler.h>
-#include <simgear/sound/soundmgr_openal.hxx>
-#include <Main/fg_props.hxx>
-
-#include STL_STRING
-
-SG_USING_STD(string);
-
-class SGNewCloud;
+// forward decls
+class SGPropertyNode;
 class SGCloudField;
-class FGMetar;
 
 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 std::string& name, double grid_z_rand, SGCloudField *layer);
+       void buildLayer(int iLayer, const std::string& name, 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;
-
-       float station_elevation_ft;
 
+       bool clouds_3d_enabled;
+    int index;
+  
+    bool add3DCloud(const SGPropertyNode *arg);
+    bool delete3DCloud(const SGPropertyNode *arg);
+    bool move3DCloud(const SGPropertyNode *arg);
+    
 public:
        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);
 
 };
 
-#endif // _FGCLOUDS_HXX
\ No newline at end of file
+#endif // _FGCLOUDS_HXX
+