]> git.mxchange.org Git - flightgear.git/blobdiff - src/Network/props.hxx
Clean up a couple bugs in the multiengine handling of the net_fdm.hxx
[flightgear.git] / src / Network / props.hxx
index bd173bf0500d0bd051c802716ad00e0ac6a88b66..866baefbd19ae75fb2aa4b9c62cea315d5b59d97 100644 (file)
@@ -1,6 +1,8 @@
-// props.hxx -- FGFS property manager interaction class
+// \file props.hxx
+// Property server class.
 //
 // Written by Curtis Olson, started September 2000.
+// Modified by Bernie Bright, May 2002.
 //
 // Copyright (C) 2000  Curtis L. Olson - curt@flightgear.org
 //
 #ifndef _FG_PROPS_HXX
 #define _FG_PROPS_HXX
 
-
 #include <simgear/compiler.h>
-#include <simgear/misc/props.hxx>
-
 #include STL_STRING
+#include <vector>
 
-#include "protocol.hxx"
-
-FG_USING_STD(string);
-
-
-const static int max_cmd_len = 256;
+SG_USING_STD(string);
+SG_USING_STD(vector);
 
-class FGProps : public FGProtocol {
+#include <plib/netChannel.h>
 
-    char buf[max_cmd_len];
-    int length;
+#include "protocol.hxx"
 
-    // tree view of property list
-    string path;
+/**
+ * Property server class.
+ * This class provides a telnet-like server for remote access to
+ * FlightGear properties.
+ */
+class FGProps : public FGProtocol,
+               public netChannel
+{
+private:
+
+    /**
+     * Server port to listen on.
+     */
+    int port;
 
 public:
-
-    FGProps();
+    /**
+     * Create a new TCP server.
+     * 
+     * @param tokens Tokenized configuration parameters
+     */
+    FGProps( const vector<string>& tokens );
+
+    /**
+     * Destructor.
+     */
     ~FGProps();
 
-    // open hailing frequencies
+    /**
+     * Start the telnet server.
+     */
     bool open();
 
-    // process work for this port
+    /**
+     * Process network activity.
+     */
     bool process();
-    bool process_command( const char *cmd );
 
-    // close the channel
+    /**
+     * 
+     */
     bool close();
-};
 
+    /**
+     * Accept a new client connection.
+     */
+    void handleAccept();
+
+};
 
 #endif // _FG_PROPS_HXX
+