Sophie

Sophie

distrib > Fedora > 15 > i386 > by-pkgid > ab972abb34adf97ebe2e94ab6b5a0050 > files > 83

HippoDraw-1.21.1-14.fc15.i686.rpm

<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>HippoDraw Documenation</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
<link href="tabs.css" rel="stylesheet" type="text/css">
<link rel="shortcut icon" href="lib/hippoApp.ico">
</head><body>
<!-- Generated by Doxygen 1.7.3 -->
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li class="current"><a href="pages.html"><span>Related&#160;Pages</span></a></li>
    </ul>
  </div>
</div>
<div class="header">
  <div class="headertitle">
<h1>Python extension modules </h1>  </div>
</div>
<div class="contents">
<div class="textblock"><p>The <b>HippoDraw</b> library can be used with the <a href="http://www.python.org">Python </a>programming language.</p>
<p>To do that, a Python extension module is built so that the C++ classes appear as Python classes. Two different extension modules can be built and they have a different interface. The first is <a class="el" href="python_interact.html">Python extension module tutorial</a> designed to for interactive use or from a Python script This is the <em>hippo</em> Python extension module. With it, <b>HippoDraw</b> can be manipulated interactively or via scripts written in Python. The second, is <a class="el" href="python_appli.html">Python extension module: sihippo</a> designed for use with <a href="http://www.riverbankcomputing.co.uk/pyqt/index.php">PyQt</a>. It is the <em>sihippo</em> Python extension module. The two uses are quite different and thus the interface is different.</p>
<p>For interactive use of <b>HippoDraw</b>, the <a href="http://www.boost.org/libs/python/doc/index.html">Boost.Python </a> package is used to build the extension module. Version 2 of Boost.Python is required. It is distributed as part of the <a href="http://www.boost.org">Boost </a> distribution since version 1.29.0. This version is simpler and has less problems with common C++ compilers then version 1. The source code for building the Python extension module with Boost.Python is in the <code>python</code> subdirectory.</p>
<p>To write applications using <a href="http://www.trolltech.com/products/qt/index.html">Qt </a> with Python, the <a href="http://www.riverbankcomputing.co.uk/pyqt/index.php">PyQt </a> package can be used. PyQt uses the <a href="http://www.riverbankcomputing.co.uk/sip/index.php">SIP </a> package to build the Python extension module. Before SIP version 4, SIP and Boost.Python appeared to be incompatible (see the discussion in <a href="http://mats.gmd.de/mailman/listinfo/pykde">PyKDE </a> and <a href="http://mail.python.org/mailman/listinfo/c++-sig">Python C++-sig </a> mailing list archives). This maybe fixed with version 4, but it has not been tested. Thus, <b>HippoDraw</b> has an Python extension module built with SIP as well. All the sip interface sources are in the <code>sip</code> subdirectory.</p>
<p>Note that the Python extension modules built with Boost.Python seem to be compatible with ones build with <a href="http://www.swig.org">SWIG </a>. As there are many more Python extension modules built with SWIG or Boost.Python than with SIP, the Boost.Python built module for <b>HippoDraw</b> is always built, while the SIP one is optional. </p>
</div></div>
<hr size="1"><address style="align: right;"><small>
Generated for HippoDraw by <a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border=0>
</a> </small></address>
</body>
</html>