Files
openbabel/scripts/openbabel-java.i
Geoffrey Hutchison 889fba2d20 * scripts/java/OBTest.java: Bring back test program.
* scripts/openbabel-java.i, scripts/openbabel-perl.i,
        scripts/openbabel-ruby.i: Fix script bindings. Now compile
        cleanly. Perl still needs work to pass tests.

        * include/openbabel/math/spacegroup.h, include/openbabel/plugin.h:
        Minor updates for SWIG compatibility.
2008-05-16 21:07:13 +00:00

151 lines
3.8 KiB
OpenEdge ABL

%module openbabel
%{
// used to set import/export for Cygwin DLLs
#ifdef WIN32
#define USING_OBDLL
#endif
#include <openbabel/obutil.h>
#include <openbabel/rand.h>
#include <openbabel/math/vector3.h>
#include <openbabel/math/matrix3x3.h>
#include <openbabel/math/transform3d.h>
#include <openbabel/math/spacegroup.h>
#include <openbabel/generic.h>
#include <openbabel/griddata.h>
#include <openbabel/base.h>
#include <openbabel/mol.h>
#include <openbabel/atom.h>
#include <openbabel/bond.h>
#include <openbabel/residue.h>
#include <openbabel/internalcoord.h>
#include <openbabel/ring.h>
#include <openbabel/obconversion.h>
#include <openbabel/oberror.h>
#include <openbabel/plugin.h>
#include <openbabel/fingerprint.h>
#include <openbabel/descriptor.h>
#include <openbabel/format.h>
#include <openbabel/forcefield.h>
#include <openbabel/op.h>
#include <openbabel/data.h>
#include <openbabel/parsmart.h>
%}
%include "std_map.i"
%include "std_vector.i"
%include "std_string.i"
namespace std {
%template (vectorInt) vector<int>;
%template (vectorUnsignedInt) vector<unsigned int>;
%template (vvInt) vector< vector<int> >;
%template (vectorDouble) vector<double>;
%template (vectorString) vector<std::string>;
%template (vVector3) vector<OpenBabel::vector3>;
%template (vectorMol) vector<OpenBabel::OBMol>;
%template (vectorBond) vector<OpenBabel::OBBond>;
%template (vectorResidue) vector<OpenBabel::OBResidue>;
%template (vectorRing) vector<OpenBabel::OBRing>;
%template (vectorpRing) vector<OpenBabel::OBRing*>;
%template (vectorData) vector<OpenBabel::OBGenericData*>;
}
%inline %{
OpenBabel::OBPairData *toPairData(OpenBabel::OBGenericData *data) {
return (OpenBabel::OBPairData *) data;
}
OpenBabel::OBUnitCell *toUnitCell(OpenBabel::OBGenericData *data) {
return (OpenBabel::OBUnitCell *) data;
}
%}
%ignore *::operator=;
%ignore *::operator*;
%ignore *::operator*=;
%ignore *::operator+;
%ignore *::operator+=;
%ignore *::operator-;
%ignore *::operator-=;
%ignore *::operator++;
%ignore *::operator--;
%ignore *::operator/;
%ignore *::operator/=;
%ignore *::operator bool;
%import <openbabel/babelconfig.h>
%include <openbabel/data.h>
%include <openbabel/rand.h>
%include <openbabel/obutil.h>
%include <openbabel/math/vector3.h>
%include <openbabel/math/matrix3x3.h>
%include <openbabel/math/transform3d.h>
%include <openbabel/math/spacegroup.h>
%include <openbabel/base.h>
%include <openbabel/generic.h>
%include <openbabel/griddata.h>
%include <openbabel/chains.h>
%include <openbabel/bitvec.h>
%include <openbabel/typer.h>
%include <openbabel/plugin.h>
%include <openbabel/oberror.h>
%include <openbabel/format.h>
%include <openbabel/obconversion.h>
%include <openbabel/residue.h>
%include <openbabel/internalcoord.h>
%include <openbabel/atom.h>
%include <openbabel/bond.h>
%include <openbabel/mol.h>
%include <openbabel/ring.h>
%include <openbabel/parsmart.h>
%include <openbabel/fingerprint.h>
%include <openbabel/descriptor.h>
%include <openbabel/forcefield.h>
%include <openbabel/op.h>
# The following %ignores avoid warning messages due to shadowed classes.
# This does not imply a loss of functionality as (in this case)
# the shadowed class is identical (from the point of view of SWIG) to
# the shadowing class.
# This is because C++ references (&) are transformed by SWIG back into
# pointers, so that OBAtomIter(OBMol &) would be treated the same as
# OBAtomIter(OBMol *).
%ignore OBAtomAtomIter(OBAtom &);
%ignore OBAtomBondIter(OBAtom &);
%ignore OBMolAngleIter(OBMol &);
%ignore OBMolAtomIter(OBMol &);
%ignore OBMolAtomBFSIter(OBMol &);
%ignore OBMolAtomDFSIter(OBMol &);
%ignore OBMolBondIter(OBMol &);
%ignore OBMolPairIter(OBMol &);
%ignore OBMolRingIter(OBMol &);
%ignore OBMolTorsionIter(OBMol &);
%ignore OBResidueIter(OBMol &);
%ignore OBResidueAtomIter(OBResidue &);
%ignore SpaceGroup::RegisterSpaceGroup;
%include <openbabel/obiter.h>