summaryrefslogtreecommitdiff
path: root/grc/data/grc_gnuradio/blocks/xmlrpc_server.xml
diff options
context:
space:
mode:
Diffstat (limited to 'grc/data/grc_gnuradio/blocks/xmlrpc_server.xml')
-rw-r--r--grc/data/grc_gnuradio/blocks/xmlrpc_server.xml39
1 files changed, 39 insertions, 0 deletions
diff --git a/grc/data/grc_gnuradio/blocks/xmlrpc_server.xml b/grc/data/grc_gnuradio/blocks/xmlrpc_server.xml
new file mode 100644
index 000000000..40e547efc
--- /dev/null
+++ b/grc/data/grc_gnuradio/blocks/xmlrpc_server.xml
@@ -0,0 +1,39 @@
+<?xml version="1.0"?>
+<!--
+###################################################
+##Simple XMLRPC Server
+###################################################
+ -->
+<block>
+ <name>XMLRPC Server</name>
+ <key>xmlrpc_server</key>
+ <import>import SimpleXMLRPCServer</import>
+ <import>import threading</import>
+ <make>SimpleXMLRPCServer.SimpleXMLRPCServer(($addr, $port), allow_none=True)
+self.$(id).register_instance(self)
+threading.Thread(target=self.$(id).serve_forever).start()</make>
+ <param>
+ <name>Address</name>
+ <key>addr</key>
+ <value>localhost</value>
+ <type>string</type>
+ </param>
+ <param>
+ <name>Port</name>
+ <key>port</key>
+ <value>8080</value>
+ <type>int</type>
+ </param>
+ <doc>
+This block will start an XMLRPC server. \
+The server provides access to the run, start, stop, wait functions of the flow graph. \
+The server also provides access to the variable callbacks in the flow graph. \
+Ex: If the variable is called freq, the function provided by the server will be called set_freq(new_freq).
+
+Example client in python:
+
+import xmlrpclib
+s = xmlrpclib.Server(&quot;http://localhost:8080&quot;)
+s.set_freq(5000)
+ </doc>
+</block>