summaryrefslogtreecommitdiff
path: root/docs/reference/html/GypsyControl.html
diff options
context:
space:
mode:
Diffstat (limited to 'docs/reference/html/GypsyControl.html')
-rw-r--r--docs/reference/html/GypsyControl.html140
1 files changed, 105 insertions, 35 deletions
diff --git a/docs/reference/html/GypsyControl.html b/docs/reference/html/GypsyControl.html
index 161eafe..1f97236 100644
--- a/docs/reference/html/GypsyControl.html
+++ b/docs/reference/html/GypsyControl.html
@@ -5,34 +5,41 @@
<title>GypsyControl</title>
<meta name="generator" content="DocBook XSL Stylesheets V1.72.0">
<link rel="start" href="index.html" title="Gypsy Reference Manual">
-<link rel="up" href="ch01.html" title="Gyspy">
-<link rel="prev" href="GypsyDevice.html" title="GypsyDevice">
-<link rel="next" href="GypsyAccuracy.html" title="GypsyAccuracy">
+<link rel="up" href="ch02.html" title="Gypsy-Daemon Control">
+<link rel="prev" href="ch02.html" title="Gypsy-Daemon Control">
+<link rel="next" href="ch03.html" title="GPS Data Objects">
<meta name="generator" content="GTK-Doc V1.8 (XML mode)">
<link rel="stylesheet" href="style.css" type="text/css">
-<link rel="chapter" href="ch01.html" title="Gyspy">
+<link rel="reference" href="rn01.html" title="Gypsy Overview">
+<link rel="reference" href="rn02.html" title="Tutorials">
+<link rel="chapter" href="ch01.html" title="Programming Gypsy With Python">
+<link rel="reference" href="gypsy-server-interfaces.html" title="Gypsy Server Interface">
+<link rel="reference" href="gypsy-client-interfaces.html" title="Gypsy Client Interface">
+<link rel="reference" href="rn05.html" title="LibGypsy API Reference">
+<link rel="chapter" href="ch02.html" title="Gypsy-Daemon Control">
+<link rel="chapter" href="ch03.html" title="GPS Data Objects">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
<tr valign="middle">
-<td><a accesskey="p" href="GypsyDevice.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="ch01.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="ch02.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
+<td><a accesskey="u" href="ch02.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
<th width="100%" align="center">Gypsy Reference Manual</th>
-<td><a accesskey="n" href="GypsyAccuracy.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
+<td><a accesskey="n" href="ch03.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
</tr>
-<tr><td colspan="5" class="shortcuts"><nobr><a href="#id2569074" class="shortcut">Top</a>
+<tr><td colspan="5" class="shortcuts"><nobr><a href="#id2593087" class="shortcut">Top</a>
&#160;|&#160;
- <a href="#id2571840" class="shortcut">Description</a>
+ <a href="#id2510682" class="shortcut">Description</a>
&#160;|&#160;
- <a href="#id2571816" class="shortcut">Object Hierarchy</a></nobr></td></tr>
+ <a href="#id2510658" class="shortcut">Object Hierarchy</a></nobr></td></tr>
</table>
<div class="refentry" lang="en">
<a name="GypsyControl"></a><div class="titlepage"></div>
<div class="refnamediv"><table width="100%"><tr>
<td valign="top">
<h2>
-<a name="id2569074"></a><span class="refentrytitle">GypsyControl</span>
+<a name="id2593087"></a><span class="refentrytitle">GypsyControl</span>
</h2>
<p>GypsyControl &#8212; Control object for gypsy-daemon</p>
</td>
@@ -57,7 +64,7 @@ char* <a href="GypsyControl.html#gypsy-control-create">gypsy_contr
</pre>
</div>
<div class="refsect1" lang="en">
-<a name="id2571816"></a><h2>Object Hierarchy</h2>
+<a name="id2510658"></a><h2>Object Hierarchy</h2>
<pre class="synopsis">
GObject
@@ -65,20 +72,82 @@ char* <a href="GypsyControl.html#gypsy-control-create">gypsy_contr
</pre>
</div>
<div class="refsect1" lang="en">
-<a name="id2571840"></a><h2>Description</h2>
+<a name="id2510682"></a><h2>Description</h2>
<p>
<a href="GypsyControl.html" title="GypsyControl"><span class="type">GypsyControl</span></a> is the object that controls the gypsy-daemon process.
-<a href="GypsyControl.html" title="GypsyControl"><span class="type">GypsyControl</span></a> is used to start and stop the daemon.</p>
+It is a singleton object, meaning that there will only be one instance of it
+per application. Once the object has been created (or referenced if it
+had already been created for the application) with
+<a href="GypsyControl.html#gypsy-control-get-default"><code class="function">gypsy_control_get_default()</code></a>, it can be used to tell gypsy-daemon what GPS
+device to connect to with <a href="GypsyControl.html#gypsy-control-create"><code class="function">gypsy_control_create()</code></a>. This call returns the
+D-Bus object path to the GPS object in gypsy-daemon. This object path is then used to
+create other objects, such as <a href="GypsyPosition.html" title="GypsyPosition"><span class="type">GypsyPosition</span></a>, or <a href="GypsyCourse.html" title="GypsyCourse"><span class="type">GypsyCourse</span></a>.
+</p>
+<p>
+As gypsy-daemon is able to connect to multiple GPS devices, the one
+<a href="GypsyControl.html" title="GypsyControl"><span class="type">GypsyControl</span></a> can be used to create them, returning a different path for each
+GPS device. Gypsy-daemon can connect to both serial port devices which have
+an entry in <code class="filename">/dev</code> and Bluetooth devices natively without
+the need to use rfcomm to set up a <code class="filename">/dev</code> entry. To do
+this you pass either the device path or the Bluetooth address of the device
+to <a href="GypsyControl.html#gypsy-control-create"><code class="function">gypsy_control_create()</code></a>.
+</p>
+<p>
+Once the program has finished with the GPS, the <a href="GypsyControl.html" title="GypsyControl"><span class="type">GypsyControl</span></a> object should
+by unreferenced with <code class="function">g_object_unref()</code>.
+</p>
+<p>
+</p>
+<div class="informalexample"><pre class="programlisting">
+. . .
+
+<a href="GypsyControl.html" title="GypsyControl">GypsyControl</a> *control;
+char *path_bt, *path_dev;
+GError *error = NULL;
+
+. . .
+
+control = gypsy_control_get_default ();
+/ * Use a Bluetooth device * /
+path_bt = gypsy_control_create (control, "aa:bb:cc:dd:ee", &amp;error);
+if (path_bt == NULL) {
+&#160;&#160;g_warning ("There was an error creating aa:bb:cc:dd:ee - %s", error-&gt;message);
+&#160;&#160;g_error_free (error);
+&#160;&#160;error = NULL;
+}
+
+/ * Use a serial port device * /
+path_dev = gypsy_control_create (control, "/dev/gps", &amp;error);
+if (path_dev == NULL) {
+&#160;&#160;g_warning ("There was an error creating /dev/gps - %s", error-&gt;message);
+&#160;&#160;g_error_free (error);
+&#160;&#160;error = NULL;
+}
+
+. . .
+
+/ * Use the paths here to create listener objects * /
+
+. . .
+
+g_free (path_bt);
+g_free (path_dev);
+
+. . .
+
+/ * The program has finished with Gypsy now, unref the object. * /
+g_object_unref (G_OBJECT (control));
+</pre></div>
<p>
</p>
</div>
<div class="refsect1" lang="en">
-<a name="id2597247"></a><h2>Details</h2>
+<a name="id2593022"></a><h2>Details</h2>
<div class="refsect2" lang="en">
-<a name="id2597258"></a><h3>
+<a name="id2591885"></a><h3>
<a name="GypsyControl-struct"></a>GypsyControl</h3>
-<a class="indexterm" name="id2597270"></a><pre class="programlisting">typedef struct _GypsyControl GypsyControl;</pre>
+<a class="indexterm" name="id2593152"></a><pre class="programlisting">typedef struct _GypsyControl GypsyControl;</pre>
<p>
There are no public fields in <a href="GypsyControl.html" title="GypsyControl"><span class="type">GypsyControl</span></a>.</p>
<p>
@@ -87,33 +156,33 @@ There are no public fields in <a href="GypsyControl.html" title="GypsyControl"><
</div>
<hr>
<div class="refsect2" lang="en">
-<a name="id2597296"></a><h3>
+<a name="id2581874"></a><h3>
<a name="GYPSY-CONTROL-DBUS-SERVICE:CAPS"></a>GYPSY_CONTROL_DBUS_SERVICE</h3>
-<a class="indexterm" name="id2597308"></a><pre class="programlisting">#define GYPSY_CONTROL_DBUS_SERVICE "org.freedesktop.Gypsy"
+<a class="indexterm" name="id2581885"></a><pre class="programlisting">#define GYPSY_CONTROL_DBUS_SERVICE "org.freedesktop.Gypsy"
</pre>
<p>
-A define containing the address of the control service</p>
+A define containing the service name of the control service</p>
<p>
</p>
</div>
<hr>
<div class="refsect2" lang="en">
-<a name="id2597328"></a><h3>
+<a name="id2581906"></a><h3>
<a name="GYPSY-CONTROL-DBUS-PATH:CAPS"></a>GYPSY_CONTROL_DBUS_PATH</h3>
-<a class="indexterm" name="id2597340"></a><pre class="programlisting">#define GYPSY_CONTROL_DBUS_PATH "/org/freedesktop/Gypsy"
+<a class="indexterm" name="id2581917"></a><pre class="programlisting">#define GYPSY_CONTROL_DBUS_PATH "/org/freedesktop/Gypsy"
</pre>
<p>
-A define containing the path to the Gypsy object</p>
+A define containing the object path of the Gypsy object</p>
<p>
</p>
</div>
<hr>
<div class="refsect2" lang="en">
-<a name="id2566717"></a><h3>
+<a name="id2581938"></a><h3>
<a name="GYPSY-CONTROL-DBUS-INTERFACE:CAPS"></a>GYPSY_CONTROL_DBUS_INTERFACE</h3>
-<a class="indexterm" name="id2566729"></a><pre class="programlisting">#define GYPSY_CONTROL_DBUS_INTERFACE "org.freedesktop.Gypsy.Server"
+<a class="indexterm" name="id2587396"></a><pre class="programlisting">#define GYPSY_CONTROL_DBUS_INTERFACE "org.freedesktop.Gypsy.Server"
</pre>
<p>
A define containing the name of the Control interface</p>
@@ -123,11 +192,11 @@ A define containing the name of the Control interface</p>
</div>
<hr>
<div class="refsect2" lang="en">
-<a name="id2566751"></a><h3>
+<a name="id2587417"></a><h3>
<a name="gypsy-control-get-default"></a>gypsy_control_get_default ()</h3>
-<a class="indexterm" name="id2566763"></a><pre class="programlisting"><a href="GypsyControl.html" title="GypsyControl">GypsyControl</a>* gypsy_control_get_default (void);</pre>
+<a class="indexterm" name="id2587429"></a><pre class="programlisting"><a href="GypsyControl.html" title="GypsyControl">GypsyControl</a>* gypsy_control_get_default (void);</pre>
<p>
-Retrieves the default <a href="GypsyControl.html" title="GypsyControl"><span class="type">GypsyControl</span></a> object</p>
+Retrieves the default <a href="GypsyControl.html" title="GypsyControl"><span class="type">GypsyControl</span></a> object.</p>
<p>
</p>
@@ -135,23 +204,24 @@ Retrieves the default <a href="GypsyControl.html" title="GypsyControl"><span cla
<col align="left" valign="top">
<tbody><tr>
<td><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></td>
-<td> A singleton <a href="GypsyControl.html" title="GypsyControl"><span class="type">GypsyControl</span></a>
+<td> A singleton <a href="GypsyControl.html" title="GypsyControl"><span class="type">GypsyControl</span></a>. Once the program has finished using
+the <a href="GypsyControl.html" title="GypsyControl"><span class="type">GypsyControl</span></a>, it should be unreferenced with <code class="function">g_object_unref()</code>.
</td>
</tr></tbody>
</table></div>
</div>
<hr>
<div class="refsect2" lang="en">
-<a name="id2566817"></a><h3>
+<a name="id2587501"></a><h3>
<a name="gypsy-control-create"></a>gypsy_control_create ()</h3>
-<a class="indexterm" name="id2566828"></a><pre class="programlisting">char* gypsy_control_create (<a href="GypsyControl.html" title="GypsyControl">GypsyControl</a> *control,
+<a class="indexterm" name="id2587512"></a><pre class="programlisting">char* gypsy_control_create (<a href="GypsyControl.html" title="GypsyControl">GypsyControl</a> *control,
const char *device_name,
GError **error);</pre>
<p>
-Creates a device on the server that refers to the gps device at <em class="parameter"><code>device_name</code></em>.
+Creates a object on the server that refers to the GPS device at <em class="parameter"><code>device_name</code></em>.
When this object is finalized, the remote object on the server will be
shutdown after which any calls to the object at the returned path
-are not guarenteed to work.</p>
+are not guaranteed to work.</p>
<p>
</p>
@@ -165,12 +235,12 @@ are not guarenteed to work.</p>
</tr>
<tr>
<td><span class="term"><em class="parameter"><code>device_name</code></em>&#160;:</span></td>
-<td> The path to the device file
+<td> The path to the device file, or Bluetooth address
</td>
</tr>
<tr>
<td><span class="term"><em class="parameter"><code>error</code></em>&#160;:</span></td>
-<td> A <span class="type">GError</span> to return errors in
+<td> A <span class="type">GError</span> to return errors in, or <code class="literal">NULL</code>
</td>
</tr>
<tr>