]> git.mxchange.org Git - flightgear.git/blobdiff - src/Systems/vacuum.hxx
Merge branch 'next' of gitorious.org:fg/flightgear into next
[flightgear.git] / src / Systems / vacuum.hxx
index 3087c46339236301ce3265264468605188847711..fd69135963801ccba8c4f69035e78a5abb780c83 100644 (file)
 # error This library requires C++
 #endif
 
+#include <simgear/math/sg_types.hxx>
 #include <simgear/props/props.hxx>
-
-#include <Main/fgfs.hxx>
+#include <simgear/structure/subsystem_mgr.hxx>
 
 
 /**
  * Model a vacuum-pump system.
  *
- * This first, simple draft is hard-wired to engine #1.
+ * Multiple pumps (i.e. for a multiengine aircraft) can be specified.
  *
  * Input properties:
  *
- * /engines/engine[0]/rpm
+ * "rpm1"
+ * "rpm2"
+ * "..."
  * /environment/pressure-inhg
- * /systems/vacuum[0]/serviceable
+ * /systems/"name"/serviceable
  *
  * Output properties:
  *
- * /systems/vacuum[n]/suction-inhg
+ * /systems/"name"/suction-inhg
  */
-class VacuumSystem : public FGSubsystem
+class VacuumSystem : public SGSubsystem
 {
 
 public:
 
+    VacuumSystem( SGPropertyNode *node );
     VacuumSystem( int i );
     virtual ~VacuumSystem ();
 
@@ -46,9 +49,12 @@ public:
 
 private:
 
-    int num;
+    string _name;
+    int _num;
+    string_list _rpms;
+    double _scale;
     SGPropertyNode_ptr _serviceable_node;
-    SGPropertyNode_ptr _rpm_node;
+    vector<SGPropertyNode_ptr> _rpm_nodes;
     SGPropertyNode_ptr _pressure_node;
     SGPropertyNode_ptr _suction_node;