summaryrefslogtreecommitdiff
path: root/Examples/python/simple/index.html
diff options
context:
space:
mode:
authorDave Beazley <dave-swig@dabeaz.com>2000-06-17 21:41:01 +0000
committerDave Beazley <dave-swig@dabeaz.com>2000-06-17 21:41:01 +0000
commitb3e124ac210aa9058d78bca30cd9253448e488a6 (patch)
tree25ec444fb68f4ce8a8af3a45033892361aea4142 /Examples/python/simple/index.html
parent905fb9b3b66af8ea2141d47711bbd530b75c6bb9 (diff)
downloadswig-b3e124ac210aa9058d78bca30cd9253448e488a6.tar.gz
Updated some examples
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@490 626c5289-ae23-0410-ae9c-e8d60b6d4f22
Diffstat (limited to 'Examples/python/simple/index.html')
-rw-r--r--Examples/python/simple/index.html99
1 files changed, 99 insertions, 0 deletions
diff --git a/Examples/python/simple/index.html b/Examples/python/simple/index.html
new file mode 100644
index 000000000..9638708cc
--- /dev/null
+++ b/Examples/python/simple/index.html
@@ -0,0 +1,99 @@
+<html>
+<head>
+<title>SWIG:Examples:python:simple</title>
+</head>
+
+<body bgcolor="#ffffff">
+
+
+<tt>SWIG/Examples/python/simple/</tt>
+<hr>
+
+<H2>Simple Python Example</H2>
+
+<tt>$Header$</tt><br>
+
+<p>
+This example illustrates how you can hook Python to a very simple C program containing
+a function and a global variable.
+
+<h2>The C Code</h2>
+
+Suppose you have the following C code:
+
+<blockquote>
+<pre>
+/* File : example.c */
+
+/* A global variable */
+double Foo = 3.0;
+
+/* Compute the greatest common divisor of positive integers */
+int gcd(int x, int y) {
+ int g;
+ g = y;
+ while (x > 0) {
+ g = x;
+ x = y % x;
+ y = g;
+ }
+ return g;
+}
+</pre>
+</blockquote>
+
+<h2>The SWIG interface</h2>
+
+Here is a simple SWIG interface file:
+
+<blockquote>
+<pre>
+/* File: example.i */
+%module example
+
+extern int gcd(int x, int y);
+extern double Foo;
+</pre>
+</blockquote>
+
+<h2>Compilation</h2>
+
+<ol>
+<li><tt>swig -python <a href="example.i">example.i</a></tt>
+<p>
+<li>Compile <tt><a href="example_wrap.c">example_wrap.c</a></tt> and <tt><a href="example.c">example.c</a></tt>
+to create the extension <tt>examplemodule.so</tt>.
+</ol>
+
+<h2>Using the extension</h2>
+
+Click <a href="example.py">here</a> to see a script that calls our C functions from Python.
+
+<h2>Key points</h2>
+
+<ul>
+<li>Use the <tt>import</tt> statement to load your extension module from Python. For example:
+<blockquote>
+<pre>
+import example
+</pre>
+</blockquote>
+
+<li>C functions work just like Python functions. For example:
+<blockquote>
+<pre>
+g = example.gcd(42,105)
+</pre>
+</blockquote>
+
+<li>C global variables are accessed through a special variable called 'cvar'. For example:
+<blockquote>
+<pre>
+a = example.cvar.Foo
+</pre>
+</blockquote>
+</ul>
+
+<hr>
+</body>
+</html>