]> git.mxchange.org Git - simgear.git/blobdiff - simgear/hla/HLAFederate.hxx
Move the decision which rti to use into HLAFederate.
[simgear.git] / simgear / hla / HLAFederate.hxx
index 7376540e4bbe9f26909c716ff26510daa8a8f6a5..5af83396fe6c75cd0eb5ccbcb4a1daa56026063f 100644 (file)
@@ -32,11 +32,22 @@ class RTIFederate;
 
 class HLAFederate : public SGWeakReferenced {
 public:
+    enum Version {
+        RTI13,
+        RTI1516,
+        RTI1516E
+    };
+
+    HLAFederate();
     virtual ~HLAFederate();
 
+    /// connect to an rti
+    bool connect(Version version, const std::list<std::string>& stringList);
+    bool disconnect();
+
     /// Get the name of the joined federate/federation
-    const std::string& getFederateType() const;
-    const std::string& getFederationName() const;
+    std::string getFederateType() const;
+    std::string getFederationName() const;
 
     /// Create a federation execution
     /// Semantically this methods should be static,
@@ -94,9 +105,6 @@ public:
     HLAInteractionClass* getInteractionClass(const std::string& name);
     const HLAInteractionClass* getInteractionClass(const std::string& name) const;
 
-protected:
-    HLAFederate(const SGSharedPtr<RTIFederate>& rtiFederate);
-
 private:
     SGSharedPtr<RTIFederate> _rtiFederate;