# CONFIDENTIAL. (C) 2022 Cadence Design Systems, Inc. (Cadence)
# All rights reserved.
# ALL SOFTWARE BELOW IS PROPRIETARY AND CONFIDENTIAL TO CADENCE
# AND IS SUBJECT TO THE FULL PROTECTION OF COPYRIGHT AND TRADE SECRET LAW.
# Copying or modifying this software is strictly prohibited and illegal.
# Using this software without a valid license from Cadence is strictly
# prohibited and illegal.  De-obfuscating, de-minimizing, or any other
# attempt to reverse engineer or discover the workings of this software,
# is strictly prohibited. Even if software is exposed or visible, it is
# still proprietary and confidential and the above prohibitions apply.
# This software is NOT "Sample Code". For purposes of customization or
# interoperation with other software you must use Sample Code
# specifically labeled as such.
# Please contact Cadence at eyesopen.com/legal if you have any questions
# about this warning.


# This file was automatically generated by SWIG (http://www.swig.org).
# Version 4.0.2
#
# Do not make changes to this file unless you know what you are doing--modify
# the SWIG interface file instead.

from sys import version_info as _swig_python_version_info
if _swig_python_version_info < (2, 7, 0):
    raise RuntimeError("Python 2.7 or later required")


def swig_import_helper():
    from os.path import dirname
    import importlib.util
    import importlib.abc

    spec = importlib.machinery.PathFinder().find_spec("_oechem", [dirname(__file__)])

    if spec is None:
        # OpenEye Import Statements
        spec = importlib.machinery.PathFinder().find_spec("libs",[dirname(__file__)])
    libs = importlib.util.module_from_spec(spec)

    import sys
    sys.modules[spec.name] = libs
    spec.loader.exec_module(libs)

    assert not sys.platform.startswith('win')

    _oebioisostere = libs.OEGetModule('_oebioisostere3003')
    return _oebioisostere

_oebioisostere = swig_import_helper()
del swig_import_helper

try:
    import builtins as __builtin__
except ImportError:
    import __builtin__

def _swig_repr(self):
    try:
        strthis = "proxy of " + self.this.__repr__()
    except __builtin__.Exception:
        strthis = ""
    return "<%s.%s; %s >" % (self.__class__.__module__, self.__class__.__name__, strthis,)


def _swig_setattr_nondynamic_instance_variable(set):
    def set_instance_attr(self, name, value):
        if name == "thisown":
            self.this.own(value)
        elif name == "this":
            set(self, name, value)
        elif hasattr(self, name) and isinstance(getattr(type(self), name), property):
            set(self, name, value)
        else:
            raise AttributeError("You cannot add instance attributes to %s" % self)
    return set_instance_attr


def _swig_setattr_nondynamic_class_variable(set):
    def set_class_attr(cls, name, value):
        if hasattr(cls, name) and not isinstance(getattr(cls, name), property):
            set(cls, name, value)
        else:
            raise AttributeError("You cannot add class attributes to %s" % cls)
    return set_class_attr


def _swig_add_metaclass(metaclass):
    """Class decorator for adding a metaclass to a SWIG wrapped class - a slimmed down version of six.add_metaclass"""
    def wrapper(cls):
        return metaclass(cls.__name__, cls.__bases__, cls.__dict__.copy())
    return wrapper


class _SwigNonDynamicMeta(type):
    """Meta class to enforce nondynamic attributes (no new attributes) for a class"""
    __setattr__ = _swig_setattr_nondynamic_class_variable(type.__setattr__)


import weakref

class oebioisostere_SwigPyIterator(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr
    __swig_destroy__ = _oebioisostere.delete_oebioisostere_SwigPyIterator

    def value(self) -> "PyObject *":
        return _oebioisostere.oebioisostere_SwigPyIterator_value(self)

    def incr(self, n: "size_t"=1) -> "swig::oebioisostere_SwigPyIterator *":
        return _oebioisostere.oebioisostere_SwigPyIterator_incr(self, n)

    def decr(self, n: "size_t"=1) -> "swig::oebioisostere_SwigPyIterator *":
        return _oebioisostere.oebioisostere_SwigPyIterator_decr(self, n)

    def distance(self, x: "oebioisostere_SwigPyIterator") -> "ptrdiff_t":
        return _oebioisostere.oebioisostere_SwigPyIterator_distance(self, x)

    def equal(self, x: "oebioisostere_SwigPyIterator") -> "bool":
        return _oebioisostere.oebioisostere_SwigPyIterator_equal(self, x)

    def copy(self) -> "swig::oebioisostere_SwigPyIterator *":
        return _oebioisostere.oebioisostere_SwigPyIterator_copy(self)

    def next(self) -> "PyObject *":
        return _oebioisostere.oebioisostere_SwigPyIterator_next(self)

    def __next__(self) -> "PyObject *":
        return _oebioisostere.oebioisostere_SwigPyIterator___next__(self)

    def previous(self) -> "PyObject *":
        return _oebioisostere.oebioisostere_SwigPyIterator_previous(self)

    def advance(self, n: "ptrdiff_t") -> "swig::oebioisostere_SwigPyIterator *":
        return _oebioisostere.oebioisostere_SwigPyIterator_advance(self, n)

    def __eq__(self, x: "oebioisostere_SwigPyIterator") -> "bool":
        return _oebioisostere.oebioisostere_SwigPyIterator___eq__(self, x)

    def __ne__(self, x: "oebioisostere_SwigPyIterator") -> "bool":
        return _oebioisostere.oebioisostere_SwigPyIterator___ne__(self, x)

    def __iadd__(self, n: "ptrdiff_t") -> "swig::oebioisostere_SwigPyIterator &":
        return _oebioisostere.oebioisostere_SwigPyIterator___iadd__(self, n)

    def __isub__(self, n: "ptrdiff_t") -> "swig::oebioisostere_SwigPyIterator &":
        return _oebioisostere.oebioisostere_SwigPyIterator___isub__(self, n)

    def __add__(self, n: "ptrdiff_t") -> "swig::oebioisostere_SwigPyIterator *":
        return _oebioisostere.oebioisostere_SwigPyIterator___add__(self, n)

    def __sub__(self, *args) -> "ptrdiff_t":
        return _oebioisostere.oebioisostere_SwigPyIterator___sub__(self, *args)
    def __iter__(self):
        return self

# Register oebioisostere_SwigPyIterator in _oebioisostere:
_oebioisostere.oebioisostere_SwigPyIterator_swigregister(oebioisostere_SwigPyIterator)

import openeye.oechem as oechem
OEBroodMatchStatus_Success = _oebioisostere.OEBroodMatchStatus_Success

OEBroodMatchStatus_NoAttachPt = _oebioisostere.OEBroodMatchStatus_NoAttachPt

OEBroodMatchStatus_UnequalAttachPt = _oebioisostere.OEBroodMatchStatus_UnequalAttachPt

OEBroodMatchStatus_NoRingAtoms = _oebioisostere.OEBroodMatchStatus_NoRingAtoms

OEBroodMatchStatus_HasRingAtoms = _oebioisostere.OEBroodMatchStatus_HasRingAtoms

OEBroodMatchStatus_InsuffRingAtoms = _oebioisostere.OEBroodMatchStatus_InsuffRingAtoms

OEBroodMatchStatus_BondOrderMismatch = _oebioisostere.OEBroodMatchStatus_BondOrderMismatch

OEBroodMatchStatus_FailedPropFilter = _oebioisostere.OEBroodMatchStatus_FailedPropFilter

OEBroodMatchStatus_FailedConstraints = _oebioisostere.OEBroodMatchStatus_FailedConstraints

OEBroodMatchStatus_FailedRMSCut = _oebioisostere.OEBroodMatchStatus_FailedRMSCut

OEBroodMatchStatus_FailedAttachCut = _oebioisostere.OEBroodMatchStatus_FailedAttachCut

OEBroodMatchStatus_FailedShapeCut = _oebioisostere.OEBroodMatchStatus_FailedShapeCut

OEBroodMatchStatus_NoConformers = _oebioisostere.OEBroodMatchStatus_NoConformers

OEBroodMatchStatus_FailedInit = _oebioisostere.OEBroodMatchStatus_FailedInit

OEBroodMatchStatus_Failed2DConstr = _oebioisostere.OEBroodMatchStatus_Failed2DConstr

OEBroodMatchStatus_ReceptorClash = _oebioisostere.OEBroodMatchStatus_ReceptorClash

OEBroodMatchStatus_NoSelectionClash = _oebioisostere.OEBroodMatchStatus_NoSelectionClash

OEBroodMatchStatus_FailedProteinSelect = _oebioisostere.OEBroodMatchStatus_FailedProteinSelect

OEBroodMatchStatus_FailedETAttach = _oebioisostere.OEBroodMatchStatus_FailedETAttach

OEBroodMatchStatus_Failure = _oebioisostere.OEBroodMatchStatus_Failure

class OEBroodQueryOptions(oechem.OEOptions):
    r"""Proxy of C++ OEBioisostere::OEBroodQueryOptions class."""

    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        r"""
        __init__(OEBroodQueryOptions self) -> OEBroodQueryOptions
        __init__(OEBroodQueryOptions self, OEBroodQueryOptions arg2) -> OEBroodQueryOptions
        """
        _oebioisostere.OEBroodQueryOptions_swiginit(self, _oebioisostere.new_OEBroodQueryOptions(*args))
    __swig_destroy__ = _oebioisostere.delete_OEBroodQueryOptions

    def GetFromCT(self) -> "bool":
        r"""GetFromCT(OEBroodQueryOptions self) -> bool"""
        return _oebioisostere.OEBroodQueryOptions_GetFromCT(self)

    def SetFromCT(self, value: "bool const") -> "bool":
        r"""SetFromCT(OEBroodQueryOptions self, bool const value) -> bool"""
        return _oebioisostere.OEBroodQueryOptions_SetFromCT(self, value)

    def GetFileCharge(self) -> "bool":
        r"""GetFileCharge(OEBroodQueryOptions self) -> bool"""
        return _oebioisostere.OEBroodQueryOptions_GetFileCharge(self)

    def SetFileCharge(self, value: "bool const") -> "bool":
        r"""SetFileCharge(OEBroodQueryOptions self, bool const value) -> bool"""
        return _oebioisostere.OEBroodQueryOptions_SetFileCharge(self, value)

    def CreateCopy(self) -> "OEBioisostere::OEBroodQueryOptions *":
        r"""CreateCopy(OEBroodQueryOptions self) -> OEBroodQueryOptions"""
        return _oebioisostere.OEBroodQueryOptions_CreateCopy(self)

# Register OEBroodQueryOptions in _oebioisostere:
_oebioisostere.OEBroodQueryOptions_swigregister(OEBroodQueryOptions)

class OEBroodScoreOptions(oechem.OEOptions):
    r"""Proxy of C++ OEBioisostere::OEBroodScoreOptions class."""

    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        r"""
        __init__(OEBroodScoreOptions self) -> OEBroodScoreOptions
        __init__(OEBroodScoreOptions self, OEBroodScoreOptions arg2) -> OEBroodScoreOptions
        """
        _oebioisostere.OEBroodScoreOptions_swiginit(self, _oebioisostere.new_OEBroodScoreOptions(*args))
    __swig_destroy__ = _oebioisostere.delete_OEBroodScoreOptions

    def GetUseET(self) -> "bool":
        r"""GetUseET(OEBroodScoreOptions self) -> bool"""
        return _oebioisostere.OEBroodScoreOptions_GetUseET(self)

    def SetUseET(self, value: "bool const") -> "bool":
        r"""SetUseET(OEBroodScoreOptions self, bool const value) -> bool"""
        return _oebioisostere.OEBroodScoreOptions_SetUseET(self, value)

    def GetLinkOnly(self) -> "bool":
        r"""GetLinkOnly(OEBroodScoreOptions self) -> bool"""
        return _oebioisostere.OEBroodScoreOptions_GetLinkOnly(self)

    def SetLinkOnly(self, value: "bool const") -> "bool":
        r"""SetLinkOnly(OEBroodScoreOptions self, bool const value) -> bool"""
        return _oebioisostere.OEBroodScoreOptions_SetLinkOnly(self, value)

    def GetAttachScale(self) -> "double":
        r"""GetAttachScale(OEBroodScoreOptions self) -> double"""
        return _oebioisostere.OEBroodScoreOptions_GetAttachScale(self)

    def SetAttachScale(self, value: "double const") -> "bool":
        r"""SetAttachScale(OEBroodScoreOptions self, double const value) -> bool"""
        return _oebioisostere.OEBroodScoreOptions_SetAttachScale(self, value)

    def GetBumpRadius(self) -> "double":
        r"""GetBumpRadius(OEBroodScoreOptions self) -> double"""
        return _oebioisostere.OEBroodScoreOptions_GetBumpRadius(self)

    def SetBumpRadius(self, value: "double const") -> "bool":
        r"""SetBumpRadius(OEBroodScoreOptions self, double const value) -> bool"""
        return _oebioisostere.OEBroodScoreOptions_SetBumpRadius(self, value)

    def CreateCopy(self) -> "OEBioisostere::OEBroodScoreOptions *":
        r"""CreateCopy(OEBroodScoreOptions self) -> OEBroodScoreOptions"""
        return _oebioisostere.OEBroodScoreOptions_CreateCopy(self)

# Register OEBroodScoreOptions in _oebioisostere:
_oebioisostere.OEBroodScoreOptions_swigregister(OEBroodScoreOptions)

class OEMedChemDataOptions(oechem.OEOptions):
    r"""Proxy of C++ OEBioisostere::OEMedChemDataOptions class."""

    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        r"""
        __init__(OEMedChemDataOptions self) -> OEMedChemDataOptions
        __init__(OEMedChemDataOptions self, OEMedChemDataOptions arg2) -> OEMedChemDataOptions
        """
        _oebioisostere.OEMedChemDataOptions_swiginit(self, _oebioisostere.new_OEMedChemDataOptions(*args))
    __swig_destroy__ = _oebioisostere.delete_OEMedChemDataOptions

    def GetHeavyAtomCount(self) -> "unsigned int":
        r"""GetHeavyAtomCount(OEMedChemDataOptions self) -> unsigned int"""
        return _oebioisostere.OEMedChemDataOptions_GetHeavyAtomCount(self)

    def SetHeavyAtomCount(self, value: "unsigned int const") -> "bool":
        r"""SetHeavyAtomCount(OEMedChemDataOptions self, unsigned int const value) -> bool"""
        return _oebioisostere.OEMedChemDataOptions_SetHeavyAtomCount(self, value)

    def GetTPSA(self) -> "unsigned int":
        r"""GetTPSA(OEMedChemDataOptions self) -> unsigned int"""
        return _oebioisostere.OEMedChemDataOptions_GetTPSA(self)

    def SetTPSA(self, value: "unsigned int const") -> "bool":
        r"""SetTPSA(OEMedChemDataOptions self, unsigned int const value) -> bool"""
        return _oebioisostere.OEMedChemDataOptions_SetTPSA(self, value)

    def GetRotorCount(self) -> "unsigned int":
        r"""GetRotorCount(OEMedChemDataOptions self) -> unsigned int"""
        return _oebioisostere.OEMedChemDataOptions_GetRotorCount(self)

    def SetRotorCount(self, value: "unsigned int const") -> "bool":
        r"""SetRotorCount(OEMedChemDataOptions self, unsigned int const value) -> bool"""
        return _oebioisostere.OEMedChemDataOptions_SetRotorCount(self, value)

    def GetLipinskiDon(self) -> "unsigned int":
        r"""GetLipinskiDon(OEMedChemDataOptions self) -> unsigned int"""
        return _oebioisostere.OEMedChemDataOptions_GetLipinskiDon(self)

    def SetLipinskiDon(self, value: "unsigned int const") -> "bool":
        r"""SetLipinskiDon(OEMedChemDataOptions self, unsigned int const value) -> bool"""
        return _oebioisostere.OEMedChemDataOptions_SetLipinskiDon(self, value)

    def GetLipinskiAcc(self) -> "unsigned int":
        r"""GetLipinskiAcc(OEMedChemDataOptions self) -> unsigned int"""
        return _oebioisostere.OEMedChemDataOptions_GetLipinskiAcc(self)

    def SetLipinskiAcc(self, value: "unsigned int const") -> "bool":
        r"""SetLipinskiAcc(OEMedChemDataOptions self, unsigned int const value) -> bool"""
        return _oebioisostere.OEMedChemDataOptions_SetLipinskiAcc(self, value)

    def GetLipinski(self) -> "unsigned int":
        r"""GetLipinski(OEMedChemDataOptions self) -> unsigned int"""
        return _oebioisostere.OEMedChemDataOptions_GetLipinski(self)

    def SetLipinski(self, value: "unsigned int const") -> "bool":
        r"""SetLipinski(OEMedChemDataOptions self, unsigned int const value) -> bool"""
        return _oebioisostere.OEMedChemDataOptions_SetLipinski(self, value)

    def GetAromaticJCT(self) -> "unsigned int":
        r"""GetAromaticJCT(OEMedChemDataOptions self) -> unsigned int"""
        return _oebioisostere.OEMedChemDataOptions_GetAromaticJCT(self)

    def SetAromaticJCT(self, value: "unsigned int const") -> "bool":
        r"""SetAromaticJCT(OEMedChemDataOptions self, unsigned int const value) -> bool"""
        return _oebioisostere.OEMedChemDataOptions_SetAromaticJCT(self, value)

    def GetFrequency(self) -> "unsigned int":
        r"""GetFrequency(OEMedChemDataOptions self) -> unsigned int"""
        return _oebioisostere.OEMedChemDataOptions_GetFrequency(self)

    def SetFrequency(self, value: "unsigned int const") -> "bool":
        r"""SetFrequency(OEMedChemDataOptions self, unsigned int const value) -> bool"""
        return _oebioisostere.OEMedChemDataOptions_SetFrequency(self, value)

    def GetMolWt(self) -> "double":
        r"""GetMolWt(OEMedChemDataOptions self) -> double"""
        return _oebioisostere.OEMedChemDataOptions_GetMolWt(self)

    def SetMolWt(self, value: "double const") -> "bool":
        r"""SetMolWt(OEMedChemDataOptions self, double const value) -> bool"""
        return _oebioisostere.OEMedChemDataOptions_SetMolWt(self, value)

    def GetLogP(self) -> "double":
        r"""GetLogP(OEMedChemDataOptions self) -> double"""
        return _oebioisostere.OEMedChemDataOptions_GetLogP(self)

    def SetLogP(self, value: "double const") -> "bool":
        r"""SetLogP(OEMedChemDataOptions self, double const value) -> bool"""
        return _oebioisostere.OEMedChemDataOptions_SetLogP(self, value)

    def GetMartin(self) -> "double":
        r"""GetMartin(OEMedChemDataOptions self) -> double"""
        return _oebioisostere.OEMedChemDataOptions_GetMartin(self)

    def SetMartin(self, value: "double const") -> "bool":
        r"""SetMartin(OEMedChemDataOptions self, double const value) -> bool"""
        return _oebioisostere.OEMedChemDataOptions_SetMartin(self, value)

    def GetSp3CFrac(self) -> "double":
        r"""GetSp3CFrac(OEMedChemDataOptions self) -> double"""
        return _oebioisostere.OEMedChemDataOptions_GetSp3CFrac(self)

    def SetSp3CFrac(self, value: "double const") -> "bool":
        r"""SetSp3CFrac(OEMedChemDataOptions self, double const value) -> bool"""
        return _oebioisostere.OEMedChemDataOptions_SetSp3CFrac(self, value)

    def GetComplexity(self) -> "double":
        r"""GetComplexity(OEMedChemDataOptions self) -> double"""
        return _oebioisostere.OEMedChemDataOptions_GetComplexity(self)

    def SetComplexity(self, value: "double const") -> "bool":
        r"""SetComplexity(OEMedChemDataOptions self, double const value) -> bool"""
        return _oebioisostere.OEMedChemDataOptions_SetComplexity(self, value)

    def GetEganEgg(self) -> "bool":
        r"""GetEganEgg(OEMedChemDataOptions self) -> bool"""
        return _oebioisostere.OEMedChemDataOptions_GetEganEgg(self)

    def SetEganEgg(self, value: "bool const") -> "bool":
        r"""SetEganEgg(OEMedChemDataOptions self, bool const value) -> bool"""
        return _oebioisostere.OEMedChemDataOptions_SetEganEgg(self, value)

    def GetVeber(self) -> "bool":
        r"""GetVeber(OEMedChemDataOptions self) -> bool"""
        return _oebioisostere.OEMedChemDataOptions_GetVeber(self)

    def SetVeber(self, value: "bool const") -> "bool":
        r"""SetVeber(OEMedChemDataOptions self, bool const value) -> bool"""
        return _oebioisostere.OEMedChemDataOptions_SetVeber(self, value)

    def CreateCopy(self) -> "OEBioisostere::OEMedChemDataOptions *":
        r"""CreateCopy(OEMedChemDataOptions self) -> OEMedChemDataOptions"""
        return _oebioisostere.OEMedChemDataOptions_CreateCopy(self)

# Register OEMedChemDataOptions in _oebioisostere:
_oebioisostere.OEMedChemDataOptions_swigregister(OEMedChemDataOptions)

class OEBroodMatchOptions(oechem.OEOptions):
    r"""Proxy of C++ OEBioisostere::OEBroodMatchOptions class."""

    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        r"""
        __init__(OEBroodMatchOptions self) -> OEBroodMatchOptions
        __init__(OEBroodMatchOptions self, OEBroodMatchOptions arg2) -> OEBroodMatchOptions
        """
        _oebioisostere.OEBroodMatchOptions_swiginit(self, _oebioisostere.new_OEBroodMatchOptions(*args))
    __swig_destroy__ = _oebioisostere.delete_OEBroodMatchOptions

    def GetUseBondOrder(self) -> "bool":
        r"""GetUseBondOrder(OEBroodMatchOptions self) -> bool"""
        return _oebioisostere.OEBroodMatchOptions_GetUseBondOrder(self)

    def SetUseBondOrder(self, value: "bool const") -> "bool":
        r"""SetUseBondOrder(OEBroodMatchOptions self, bool const value) -> bool"""
        return _oebioisostere.OEBroodMatchOptions_SetUseBondOrder(self, value)

    def GetUseProperty(self) -> "bool":
        r"""GetUseProperty(OEBroodMatchOptions self) -> bool"""
        return _oebioisostere.OEBroodMatchOptions_GetUseProperty(self)

    def SetUseProperty(self, value: "bool const") -> "bool":
        r"""SetUseProperty(OEBroodMatchOptions self, bool const value) -> bool"""
        return _oebioisostere.OEBroodMatchOptions_SetUseProperty(self, value)

    def GetCheckGeometry(self) -> "bool":
        r"""GetCheckGeometry(OEBroodMatchOptions self) -> bool"""
        return _oebioisostere.OEBroodMatchOptions_GetCheckGeometry(self)

    def SetCheckGeometry(self, value: "bool const") -> "bool":
        r"""SetCheckGeometry(OEBroodMatchOptions self, bool const value) -> bool"""
        return _oebioisostere.OEBroodMatchOptions_SetCheckGeometry(self, value)

    def GetAttachCutoff(self) -> "double":
        r"""GetAttachCutoff(OEBroodMatchOptions self) -> double"""
        return _oebioisostere.OEBroodMatchOptions_GetAttachCutoff(self)

    def SetAttachCutoff(self, value: "double const") -> "bool":
        r"""SetAttachCutoff(OEBroodMatchOptions self, double const value) -> bool"""
        return _oebioisostere.OEBroodMatchOptions_SetAttachCutoff(self, value)

    def GetShapeCutoff(self) -> "double":
        r"""GetShapeCutoff(OEBroodMatchOptions self) -> double"""
        return _oebioisostere.OEBroodMatchOptions_GetShapeCutoff(self)

    def SetShapeCutoff(self, value: "double const") -> "bool":
        r"""SetShapeCutoff(OEBroodMatchOptions self, double const value) -> bool"""
        return _oebioisostere.OEBroodMatchOptions_SetShapeCutoff(self, value)

    def GetRingOnly(self) -> "int":
        r"""GetRingOnly(OEBroodMatchOptions self) -> int"""
        return _oebioisostere.OEBroodMatchOptions_GetRingOnly(self)

    def SetRingOnly(self, value: "int const") -> "bool":
        r"""SetRingOnly(OEBroodMatchOptions self, int const value) -> bool"""
        return _oebioisostere.OEBroodMatchOptions_SetRingOnly(self, value)

    def SetMinMedChemOptions(self, opts: "OEMedChemDataOptions") -> "void":
        r"""SetMinMedChemOptions(OEBroodMatchOptions self, OEMedChemDataOptions opts)"""
        return _oebioisostere.OEBroodMatchOptions_SetMinMedChemOptions(self, opts)

    def GetMinMedChemOptions(self, *args) -> "OEBioisostere::OEMedChemDataOptions const &":
        r"""
        GetMinMedChemOptions(OEBroodMatchOptions self) -> OEMedChemDataOptions
        GetMinMedChemOptions(OEBroodMatchOptions self) -> OEMedChemDataOptions
        """
        return _oebioisostere.OEBroodMatchOptions_GetMinMedChemOptions(self, *args)

    def SetMaxMedChemOptions(self, opts: "OEMedChemDataOptions") -> "void":
        r"""SetMaxMedChemOptions(OEBroodMatchOptions self, OEMedChemDataOptions opts)"""
        return _oebioisostere.OEBroodMatchOptions_SetMaxMedChemOptions(self, opts)

    def GetMaxMedChemOptions(self, *args) -> "OEBioisostere::OEMedChemDataOptions const &":
        r"""
        GetMaxMedChemOptions(OEBroodMatchOptions self) -> OEMedChemDataOptions
        GetMaxMedChemOptions(OEBroodMatchOptions self) -> OEMedChemDataOptions
        """
        return _oebioisostere.OEBroodMatchOptions_GetMaxMedChemOptions(self, *args)

    def CreateCopy(self) -> "OEBioisostere::OEBroodMatchOptions *":
        r"""CreateCopy(OEBroodMatchOptions self) -> OEBroodMatchOptions"""
        return _oebioisostere.OEBroodMatchOptions_CreateCopy(self)

# Register OEBroodMatchOptions in _oebioisostere:
_oebioisostere.OEBroodMatchOptions_swigregister(OEBroodMatchOptions)

class OEBroodHitlistOptions(oechem.OEOptions):
    r"""Proxy of C++ OEBioisostere::OEBroodHitlistOptions class."""

    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        r"""
        __init__(OEBroodHitlistOptions self) -> OEBroodHitlistOptions
        __init__(OEBroodHitlistOptions self, OEBroodHitlistOptions arg2) -> OEBroodHitlistOptions
        """
        _oebioisostere.OEBroodHitlistOptions_swiginit(self, _oebioisostere.new_OEBroodHitlistOptions(*args))
    __swig_destroy__ = _oebioisostere.delete_OEBroodHitlistOptions

    def GetGenerateIdea(self) -> "bool":
        r"""GetGenerateIdea(OEBroodHitlistOptions self) -> bool"""
        return _oebioisostere.OEBroodHitlistOptions_GetGenerateIdea(self)

    def SetGenerateIdea(self, value: "bool const") -> "bool":
        r"""SetGenerateIdea(OEBroodHitlistOptions self, bool const value) -> bool"""
        return _oebioisostere.OEBroodHitlistOptions_SetGenerateIdea(self, value)

    def GetNeutralPH(self) -> "bool":
        r"""GetNeutralPH(OEBroodHitlistOptions self) -> bool"""
        return _oebioisostere.OEBroodHitlistOptions_GetNeutralPH(self)

    def SetNeutralPH(self, value: "bool const") -> "bool":
        r"""SetNeutralPH(OEBroodHitlistOptions self, bool const value) -> bool"""
        return _oebioisostere.OEBroodHitlistOptions_SetNeutralPH(self, value)

    def GetTautomers(self) -> "bool":
        r"""GetTautomers(OEBroodHitlistOptions self) -> bool"""
        return _oebioisostere.OEBroodHitlistOptions_GetTautomers(self)

    def SetTautomers(self, value: "bool const") -> "bool":
        r"""SetTautomers(OEBroodHitlistOptions self, bool const value) -> bool"""
        return _oebioisostere.OEBroodHitlistOptions_SetTautomers(self, value)

    def GetCheckBond(self) -> "bool":
        r"""GetCheckBond(OEBroodHitlistOptions self) -> bool"""
        return _oebioisostere.OEBroodHitlistOptions_GetCheckBond(self)

    def SetCheckBond(self, value: "bool const") -> "bool":
        r"""SetCheckBond(OEBroodHitlistOptions self, bool const value) -> bool"""
        return _oebioisostere.OEBroodHitlistOptions_SetCheckBond(self, value)

    def GetMaxLocalStrain(self) -> "double":
        r"""GetMaxLocalStrain(OEBroodHitlistOptions self) -> double"""
        return _oebioisostere.OEBroodHitlistOptions_GetMaxLocalStrain(self)

    def SetMaxLocalStrain(self, value: "double const") -> "bool":
        r"""SetMaxLocalStrain(OEBroodHitlistOptions self, double const value) -> bool"""
        return _oebioisostere.OEBroodHitlistOptions_SetMaxLocalStrain(self, value)

    def GetMaxHits(self) -> "unsigned int":
        r"""GetMaxHits(OEBroodHitlistOptions self) -> unsigned int"""
        return _oebioisostere.OEBroodHitlistOptions_GetMaxHits(self)

    def SetMaxHits(self, value: "unsigned int const") -> "bool":
        r"""SetMaxHits(OEBroodHitlistOptions self, unsigned int const value) -> bool"""
        return _oebioisostere.OEBroodHitlistOptions_SetMaxHits(self, value)

    def CreateCopy(self) -> "OEBioisostere::OEBroodHitlistOptions *":
        r"""CreateCopy(OEBroodHitlistOptions self) -> OEBroodHitlistOptions"""
        return _oebioisostere.OEBroodHitlistOptions_CreateCopy(self)

# Register OEBroodHitlistOptions in _oebioisostere:
_oebioisostere.OEBroodHitlistOptions_swigregister(OEBroodHitlistOptions)

class OEDBReadOptions(oechem.OEOptions):
    r"""Proxy of C++ OEBioisostere::OEDBReadOptions class."""

    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        r"""
        __init__(OEDBReadOptions self) -> OEDBReadOptions
        __init__(OEDBReadOptions self, OEDBReadOptions arg2) -> OEDBReadOptions
        """
        _oebioisostere.OEDBReadOptions_swiginit(self, _oebioisostere.new_OEDBReadOptions(*args))
    __swig_destroy__ = _oebioisostere.delete_OEDBReadOptions

    def GetRangeSize(self) -> "unsigned int":
        r"""GetRangeSize(OEDBReadOptions self) -> unsigned int"""
        return _oebioisostere.OEDBReadOptions_GetRangeSize(self)

    def SetRangeSize(self, value: "unsigned int const") -> "bool":
        r"""SetRangeSize(OEDBReadOptions self, unsigned int const value) -> bool"""
        return _oebioisostere.OEDBReadOptions_SetRangeSize(self, value)

    def GetRangeOffset(self) -> "unsigned int":
        r"""GetRangeOffset(OEDBReadOptions self) -> unsigned int"""
        return _oebioisostere.OEDBReadOptions_GetRangeOffset(self)

    def SetRangeOffset(self, value: "unsigned int const") -> "bool":
        r"""SetRangeOffset(OEDBReadOptions self, unsigned int const value) -> bool"""
        return _oebioisostere.OEDBReadOptions_SetRangeOffset(self, value)

    def CreateCopy(self) -> "OEBioisostere::OEDBReadOptions *":
        r"""CreateCopy(OEDBReadOptions self) -> OEDBReadOptions"""
        return _oebioisostere.OEDBReadOptions_CreateCopy(self)

# Register OEDBReadOptions in _oebioisostere:
_oebioisostere.OEDBReadOptions_swigregister(OEDBReadOptions)

class OEBroodQuery(object):
    r"""Proxy of C++ OEBioisostere::OEBroodQuery class."""

    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        r"""
        __init__(OEBroodQuery self, OEBroodQueryOptions opts=OEBioisostere::OEBroodQueryOptions()) -> OEBroodQuery
        __init__(OEBroodQuery self, OEBroodQuery arg2) -> OEBroodQuery
        """
        _oebioisostere.OEBroodQuery_swiginit(self, _oebioisostere.new_OEBroodQuery(*args))
    __swig_destroy__ = _oebioisostere.delete_OEBroodQuery

    def Load(self, filename: "std::string const &") -> "bool":
        r"""Load(OEBroodQuery self, std::string const & filename) -> bool"""
        return _oebioisostere.OEBroodQuery_Load(self, filename)

    def GetOptions(self) -> "OEBioisostere::OEBroodQueryOptions const &":
        r"""GetOptions(OEBroodQuery self) -> OEBroodQueryOptions"""
        return _oebioisostere.OEBroodQuery_GetOptions(self)

    def GetMol(self) -> "OEChem::OEMCMol const &":
        r"""GetMol(OEBroodQuery self) -> OEChem::OEMCMol const &"""
        return _oebioisostere.OEBroodQuery_GetMol(self)

    def GetETMol(self) -> "OEChem::OEMol const &":
        r"""GetETMol(OEBroodQuery self) -> OEChem::OEMol const &"""
        return _oebioisostere.OEBroodQuery_GetETMol(self)

    def GetDMol(self) -> "OEChem::OEMol const &":
        r"""GetDMol(OEBroodQuery self) -> OEChem::OEMol const &"""
        return _oebioisostere.OEBroodQuery_GetDMol(self)

    def GetProtein(self) -> "OEChem::OESCMol const &":
        r"""GetProtein(OEBroodQuery self) -> OEChem::OESCMol const &"""
        return _oebioisostere.OEBroodQuery_GetProtein(self)

    def GetSelProtein(self) -> "OEChem::OESCMol const &":
        r"""GetSelProtein(OEBroodQuery self) -> OEChem::OESCMol const &"""
        return _oebioisostere.OEBroodQuery_GetSelProtein(self)

    def GetAttachCount(self) -> "unsigned int":
        r"""GetAttachCount(OEBroodQuery self) -> unsigned int"""
        return _oebioisostere.OEBroodQuery_GetAttachCount(self)

    def GetRevTrans(self) -> "OEChem::OETrans const &":
        r"""GetRevTrans(OEBroodQuery self) -> OETrans"""
        return _oebioisostere.OEBroodQuery_GetRevTrans(self)

    def GetFrags(self) -> "std::vector< OEChem::OESCMol,std::allocator< OEChem::OESCMol > > const &":
        r"""GetFrags(OEBroodQuery self) -> std::vector< OEChem::OESCMol,std::allocator< OEChem::OESCMol > > const &"""
        return _oebioisostere.OEBroodQuery_GetFrags(self)

    def GetBuild3D(self) -> "bool":
        r"""GetBuild3D(OEBroodQuery self) -> bool"""
        return _oebioisostere.OEBroodQuery_GetBuild3D(self)

    def GetBuild(self) -> "bool":
        r"""GetBuild(OEBroodQuery self) -> bool"""
        return _oebioisostere.OEBroodQuery_GetBuild(self)

# Register OEBroodQuery in _oebioisostere:
_oebioisostere.OEBroodQuery_swigregister(OEBroodQuery)

class OEBroodMatch(object):
    r"""Proxy of C++ OEBioisostere::OEBroodMatch class."""

    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        r"""
        __init__(OEBroodMatch self, OEMCMolBase mol) -> OEBroodMatch
        __init__(OEBroodMatch self) -> OEBroodMatch
        __init__(OEBroodMatch self, OEBroodMatch arg2) -> OEBroodMatch
        """
        _oebioisostere.OEBroodMatch_swiginit(self, _oebioisostere.new_OEBroodMatch(*args))
    __swig_destroy__ = _oebioisostere.delete_OEBroodMatch

    def GetAttachmentCount(self) -> "unsigned int":
        r"""GetAttachmentCount(OEBroodMatch self) -> unsigned int"""
        return _oebioisostere.OEBroodMatch_GetAttachmentCount(self)

    def GetEnergy(self) -> "double":
        r"""GetEnergy(OEBroodMatch self) -> double"""
        return _oebioisostere.OEBroodMatch_GetEnergy(self)

    def GetAttachmentScore(self) -> "double":
        r"""GetAttachmentScore(OEBroodMatch self) -> double"""
        return _oebioisostere.OEBroodMatch_GetAttachmentScore(self)

    def GetShapeScore(self) -> "double":
        r"""GetShapeScore(OEBroodMatch self) -> double"""
        return _oebioisostere.OEBroodMatch_GetShapeScore(self)

    def GetColorScore(self) -> "double":
        r"""GetColorScore(OEBroodMatch self) -> double"""
        return _oebioisostere.OEBroodMatch_GetColorScore(self)

    def GetComboScore(self) -> "double":
        r"""GetComboScore(OEBroodMatch self) -> double"""
        return _oebioisostere.OEBroodMatch_GetComboScore(self)

    def GetETAttachmentScore(self) -> "double":
        r"""GetETAttachmentScore(OEBroodMatch self) -> double"""
        return _oebioisostere.OEBroodMatch_GetETAttachmentScore(self)

    def GetETShapeScore(self) -> "double":
        r"""GetETShapeScore(OEBroodMatch self) -> double"""
        return _oebioisostere.OEBroodMatch_GetETShapeScore(self)

    def GetETPBScore(self) -> "double":
        r"""GetETPBScore(OEBroodMatch self) -> double"""
        return _oebioisostere.OEBroodMatch_GetETPBScore(self)

    def GetETComboScore(self) -> "double":
        r"""GetETComboScore(OEBroodMatch self) -> double"""
        return _oebioisostere.OEBroodMatch_GetETComboScore(self)

    def GetStatus(self) -> "unsigned int":
        r"""GetStatus(OEBroodMatch self) -> unsigned int"""
        return _oebioisostere.OEBroodMatch_GetStatus(self)

    def SetQuery(self, arg2: "std::string const &") -> "void":
        r"""SetQuery(OEBroodMatch self, std::string const & arg2)"""
        return _oebioisostere.OEBroodMatch_SetQuery(self, arg2)

    def SetOutMol(self, mol: "OEMCMolBase") -> "void":
        r"""SetOutMol(OEBroodMatch self, OEMCMolBase mol)"""
        return _oebioisostere.OEBroodMatch_SetOutMol(self, mol)

    def SetAttachmentCount(self, arg2: "unsigned int const") -> "void":
        r"""SetAttachmentCount(OEBroodMatch self, unsigned int const arg2)"""
        return _oebioisostere.OEBroodMatch_SetAttachmentCount(self, arg2)

    def SetEnergy(self, arg2: "double const") -> "void":
        r"""SetEnergy(OEBroodMatch self, double const arg2)"""
        return _oebioisostere.OEBroodMatch_SetEnergy(self, arg2)

    def SetStatus(self, arg2: "unsigned int const") -> "void":
        r"""SetStatus(OEBroodMatch self, unsigned int const arg2)"""
        return _oebioisostere.OEBroodMatch_SetStatus(self, arg2)

    def SetRequireCount(self, arg2: "unsigned int const") -> "void":
        r"""SetRequireCount(OEBroodMatch self, unsigned int const arg2)"""
        return _oebioisostere.OEBroodMatch_SetRequireCount(self, arg2)

    def SetBumpCount(self, arg2: "unsigned int const") -> "void":
        r"""SetBumpCount(OEBroodMatch self, unsigned int const arg2)"""
        return _oebioisostere.OEBroodMatch_SetBumpCount(self, arg2)

    def SetSelectCount(self, arg2: "unsigned int const") -> "void":
        r"""SetSelectCount(OEBroodMatch self, unsigned int const arg2)"""
        return _oebioisostere.OEBroodMatch_SetSelectCount(self, arg2)

    def SetAttachmentScore(self, arg2: "double const") -> "void":
        r"""SetAttachmentScore(OEBroodMatch self, double const arg2)"""
        return _oebioisostere.OEBroodMatch_SetAttachmentScore(self, arg2)

    def SetShapeScore(self, arg2: "double const") -> "void":
        r"""SetShapeScore(OEBroodMatch self, double const arg2)"""
        return _oebioisostere.OEBroodMatch_SetShapeScore(self, arg2)

    def SetColorScore(self, arg2: "double const") -> "void":
        r"""SetColorScore(OEBroodMatch self, double const arg2)"""
        return _oebioisostere.OEBroodMatch_SetColorScore(self, arg2)

    def SetComboScore(self, arg2: "double const") -> "void":
        r"""SetComboScore(OEBroodMatch self, double const arg2)"""
        return _oebioisostere.OEBroodMatch_SetComboScore(self, arg2)

    def SetETAttachmentScore(self, arg2: "double const") -> "void":
        r"""SetETAttachmentScore(OEBroodMatch self, double const arg2)"""
        return _oebioisostere.OEBroodMatch_SetETAttachmentScore(self, arg2)

    def SetETShapeScore(self, arg2: "double const") -> "void":
        r"""SetETShapeScore(OEBroodMatch self, double const arg2)"""
        return _oebioisostere.OEBroodMatch_SetETShapeScore(self, arg2)

    def SetETPBScore(self, arg2: "double const") -> "void":
        r"""SetETPBScore(OEBroodMatch self, double const arg2)"""
        return _oebioisostere.OEBroodMatch_SetETPBScore(self, arg2)

    def SetETComboScore(self, arg2: "double const") -> "void":
        r"""SetETComboScore(OEBroodMatch self, double const arg2)"""
        return _oebioisostere.OEBroodMatch_SetETComboScore(self, arg2)

    def ToRecord(self, arg2: "OERecord") -> "bool":
        r"""ToRecord(OEBroodMatch self, OERecord arg2) -> bool"""
        return _oebioisostere.OEBroodMatch_ToRecord(self, arg2)

    def Load(self, arg2: "OERecord") -> "bool":
        r"""Load(OEBroodMatch self, OERecord arg2) -> bool"""
        return _oebioisostere.OEBroodMatch_Load(self, arg2)

    def GetOutMol(self) -> "OEMolWrapper *":
        r"""GetOutMol(OEBroodMatch self) -> OEMol"""
        return _oebioisostere.OEBroodMatch_GetOutMol(self)

# Register OEBroodMatch in _oebioisostere:
_oebioisostere.OEBroodMatch_swigregister(OEBroodMatch)

class OEBroodHit(object):
    r"""Proxy of C++ OEBioisostere::OEBroodHit class."""

    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        r"""
        __init__(OEBroodHit self) -> OEBroodHit
        __init__(OEBroodHit self, OEBroodHit arg2) -> OEBroodHit
        """
        _oebioisostere.OEBroodHit_swiginit(self, _oebioisostere.new_OEBroodHit(*args))
    __swig_destroy__ = _oebioisostere.delete_OEBroodHit

    def GetComplexity(self) -> "double":
        r"""GetComplexity(OEBroodHit self) -> double"""
        return _oebioisostere.OEBroodHit_GetComplexity(self)

    def GetRingCount(self) -> "unsigned int":
        r"""GetRingCount(OEBroodHit self) -> unsigned int"""
        return _oebioisostere.OEBroodHit_GetRingCount(self)

    def GetAromaticRingCount(self) -> "unsigned int":
        r"""GetAromaticRingCount(OEBroodHit self) -> unsigned int"""
        return _oebioisostere.OEBroodHit_GetAromaticRingCount(self)

    def GetRingRatio(self) -> "double":
        r"""GetRingRatio(OEBroodHit self) -> double"""
        return _oebioisostere.OEBroodHit_GetRingRatio(self)

    def GetXLogP(self) -> "double":
        r"""GetXLogP(OEBroodHit self) -> double"""
        return _oebioisostere.OEBroodHit_GetXLogP(self)

    def GetHeavyCount(self) -> "unsigned int":
        r"""GetHeavyCount(OEBroodHit self) -> unsigned int"""
        return _oebioisostere.OEBroodHit_GetHeavyCount(self)

    def GetMolWt(self) -> "double":
        r"""GetMolWt(OEBroodHit self) -> double"""
        return _oebioisostere.OEBroodHit_GetMolWt(self)

    def GetTPSA(self) -> "double":
        r"""GetTPSA(OEBroodHit self) -> double"""
        return _oebioisostere.OEBroodHit_GetTPSA(self)

    def GetLipinskiDon(self) -> "unsigned int":
        r"""GetLipinskiDon(OEBroodHit self) -> unsigned int"""
        return _oebioisostere.OEBroodHit_GetLipinskiDon(self)

    def GetLipinskiAcc(self) -> "unsigned int":
        r"""GetLipinskiAcc(OEBroodHit self) -> unsigned int"""
        return _oebioisostere.OEBroodHit_GetLipinskiAcc(self)

    def GetLipinskiFail(self) -> "unsigned int":
        r"""GetLipinskiFail(OEBroodHit self) -> unsigned int"""
        return _oebioisostere.OEBroodHit_GetLipinskiFail(self)

    def GetRotorCount(self) -> "unsigned int":
        r"""GetRotorCount(OEBroodHit self) -> unsigned int"""
        return _oebioisostere.OEBroodHit_GetRotorCount(self)

    def GetBeliefScore(self) -> "double":
        r"""GetBeliefScore(OEBroodHit self) -> double"""
        return _oebioisostere.OEBroodHit_GetBeliefScore(self)

    def GetAbbottBioScore(self) -> "double":
        r"""GetAbbottBioScore(OEBroodHit self) -> double"""
        return _oebioisostere.OEBroodHit_GetAbbottBioScore(self)

    def GetEgan(self) -> "unsigned int":
        r"""GetEgan(OEBroodHit self) -> unsigned int"""
        return _oebioisostere.OEBroodHit_GetEgan(self)

    def GetVeber(self) -> "unsigned int":
        r"""GetVeber(OEBroodHit self) -> unsigned int"""
        return _oebioisostere.OEBroodHit_GetVeber(self)

    def Getfsp3C(self) -> "double":
        r"""Getfsp3C(OEBroodHit self) -> double"""
        return _oebioisostere.OEBroodHit_Getfsp3C(self)

    def GetIdeaGroup(self) -> "unsigned int":
        r"""GetIdeaGroup(OEBroodHit self) -> unsigned int"""
        return _oebioisostere.OEBroodHit_GetIdeaGroup(self)

    def GetIdeaRank(self) -> "unsigned int":
        r"""GetIdeaRank(OEBroodHit self) -> unsigned int"""
        return _oebioisostere.OEBroodHit_GetIdeaRank(self)

    def GetFrequency(self) -> "unsigned int":
        r"""GetFrequency(OEBroodHit self) -> unsigned int"""
        return _oebioisostere.OEBroodHit_GetFrequency(self)

    def GetFragSmiles(self) -> "std::string":
        r"""GetFragSmiles(OEBroodHit self) -> std::string"""
        return _oebioisostere.OEBroodHit_GetFragSmiles(self)

    def GetSourceMolSmiles(self) -> "std::string":
        r"""GetSourceMolSmiles(OEBroodHit self) -> std::string"""
        return _oebioisostere.OEBroodHit_GetSourceMolSmiles(self)

    def GetSourceMolLabel(self) -> "std::string":
        r"""GetSourceMolLabel(OEBroodHit self) -> std::string"""
        return _oebioisostere.OEBroodHit_GetSourceMolLabel(self)

    def GetShapeScore(self) -> "double":
        r"""GetShapeScore(OEBroodHit self) -> double"""
        return _oebioisostere.OEBroodHit_GetShapeScore(self)

    def GetColorScore(self) -> "double":
        r"""GetColorScore(OEBroodHit self) -> double"""
        return _oebioisostere.OEBroodHit_GetColorScore(self)

    def GetAttachScore(self) -> "double":
        r"""GetAttachScore(OEBroodHit self) -> double"""
        return _oebioisostere.OEBroodHit_GetAttachScore(self)

    def GetComboScore(self) -> "double":
        r"""GetComboScore(OEBroodHit self) -> double"""
        return _oebioisostere.OEBroodHit_GetComboScore(self)

    def GetLocalStrain(self) -> "double":
        r"""GetLocalStrain(OEBroodHit self) -> double"""
        return _oebioisostere.OEBroodHit_GetLocalStrain(self)

    def GetMol(self) -> "OEGraphMolWrapper *":
        r"""GetMol(OEBroodHit self) -> OEGraphMol"""
        return _oebioisostere.OEBroodHit_GetMol(self)

# Register OEBroodHit in _oebioisostere:
_oebioisostere.OEBroodHit_swigregister(OEBroodHit)

class OEBroodDBFilter(object):
    r"""Proxy of C++ OEBioisostere::OEBroodDBFilter class."""

    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self):
        r"""__init__(OEBroodDBFilter self) -> OEBroodDBFilter"""
        _oebioisostere.OEBroodDBFilter_swiginit(self, _oebioisostere.new_OEBroodDBFilter())
    __swig_destroy__ = _oebioisostere.delete_OEBroodDBFilter

    def InitCff(self, buf: "char *") -> "void":
        r"""InitCff(OEBroodDBFilter self, char * buf)"""
        return _oebioisostere.OEBroodDBFilter_InitCff(self, buf)

    def GetLowerData(self) -> "OEBioisostere::OEBufData &":
        r"""GetLowerData(OEBroodDBFilter self) -> OEBioisostere::OEBufData &"""
        return _oebioisostere.OEBroodDBFilter_GetLowerData(self)

    def GetUpperData(self) -> "OEBioisostere::OEBufData &":
        r"""GetUpperData(OEBroodDBFilter self) -> OEBioisostere::OEBufData &"""
        return _oebioisostere.OEBroodDBFilter_GetUpperData(self)

    def GetCff(self) -> "OEShape::OEColorForceField &":
        r"""GetCff(OEBroodDBFilter self) -> OEShape::OEColorForceField &"""
        return _oebioisostere.OEBroodDBFilter_GetCff(self)

    def AttachMoleculeData(self, mol: "OEMCMolBase", dat: "OEBioisostere::OEBufData &") -> "bool":
        r"""AttachMoleculeData(OEBroodDBFilter self, OEMCMolBase mol, OEBioisostere::OEBufData & dat) -> bool"""
        return _oebioisostere.OEBroodDBFilter_AttachMoleculeData(self, mol, dat)

    def AttachConformerData(self, mol: "OEMolBase", dat: "OEBioisostere::OEBufData &") -> "bool":
        r"""AttachConformerData(OEBroodDBFilter self, OEMolBase mol, OEBioisostere::OEBufData & dat) -> bool"""
        return _oebioisostere.OEBroodDBFilter_AttachConformerData(self, mol, dat)

    def GetBufferIndex(self, dat: "OEBioisostere::OEBufData const &") -> "unsigned int":
        r"""GetBufferIndex(OEBroodDBFilter self, OEBioisostere::OEBufData const & dat) -> unsigned int"""
        return _oebioisostere.OEBroodDBFilter_GetBufferIndex(self, dat)

    def CheckMetaData(self, dat: "OEBioisostere::OEBufData const &") -> "unsigned int":
        r"""CheckMetaData(OEBroodDBFilter self, OEBioisostere::OEBufData const & dat) -> unsigned int"""
        return _oebioisostere.OEBroodDBFilter_CheckMetaData(self, dat)

    def Setup(self, *args) -> "bool":
        r"""
        Setup(OEBroodDBFilter self, OEMCMolBase mol, bool linkOnly) -> bool
        Setup(OEBroodDBFilter self, OEBroodQuery query, OEBroodScoreOptions scoreOpts=OEBioisostere::OEBroodScoreOptions()) -> bool
        """
        return _oebioisostere.OEBroodDBFilter_Setup(self, *args)

# Register OEBroodDBFilter in _oebioisostere:
_oebioisostere.OEBroodDBFilter_swigregister(OEBroodDBFilter)

class OEDBBlob(object):
    r"""Proxy of C++ OEBioisostere::OEDBBlob class."""

    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self):
        r"""__init__(OEDBBlob self) -> OEDBBlob"""
        _oebioisostere.OEDBBlob_swiginit(self, _oebioisostere.new_OEDBBlob())
    __swig_destroy__ = _oebioisostere.delete_OEDBBlob

    def Setup(self, idx: "unsigned int const", isdb: "oeistream", isidx: "oeistream") -> "bool":
        r"""Setup(OEDBBlob self, unsigned int const idx, oeistream isdb, oeistream isidx) -> bool"""
        return _oebioisostere.OEDBBlob_Setup(self, idx, isdb, isidx)

    def IsValid(self, filter: "OEBroodDBFilter") -> "bool":
        r"""IsValid(OEDBBlob self, OEBroodDBFilter filter) -> bool"""
        return _oebioisostere.OEDBBlob_IsValid(self, filter)

    def GetMolCount(self) -> "unsigned int":
        r"""GetMolCount(OEDBBlob self) -> unsigned int"""
        return _oebioisostere.OEDBBlob_GetMolCount(self)

    def GetFullString(self, str: "std::string &") -> "bool":
        r"""GetFullString(OEDBBlob self, std::string & str) -> bool"""
        return _oebioisostere.OEDBBlob_GetFullString(self, str)

    def GetIdx(self) -> "unsigned int":
        r"""GetIdx(OEDBBlob self) -> unsigned int"""
        return _oebioisostere.OEDBBlob_GetIdx(self)

    def ToRecord(self, arg2: "OERecord") -> "bool":
        r"""ToRecord(OEDBBlob self, OERecord arg2) -> bool"""
        return _oebioisostere.OEDBBlob_ToRecord(self, arg2)

    def Load(self, arg2: "OERecord") -> "bool":
        r"""Load(OEDBBlob self, OERecord arg2) -> bool"""
        return _oebioisostere.OEDBBlob_Load(self, arg2)

# Register OEDBBlob in _oebioisostere:
_oebioisostere.OEDBBlob_swigregister(OEDBBlob)

class OEDBReader(object):
    r"""Proxy of C++ OEBioisostere::OEDBReader class."""

    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self):
        r"""__init__(OEDBReader self) -> OEDBReader"""
        _oebioisostere.OEDBReader_swiginit(self, _oebioisostere.new_OEDBReader())
    __swig_destroy__ = _oebioisostere.delete_OEDBReader

    def Init(self, *args) -> "bool":
        r"""
        Init(OEDBReader self, std::string const & prefix, OEBroodQuery query, OEBroodScoreOptions scoreOpts=OEBioisostere::OEBroodScoreOptions(), OEDBReadOptions readOpts=OEBioisostere::OEDBReadOptions()) -> bool
        Init(OEDBReader self, std::string const & prefix, OEBroodDBFilter filter, unsigned int const rangeSize, int const rangeOffset, bool const linkOnly) -> bool
        Init(OEDBReader self, std::string const & prefix, OEUIntVector vecIdx=std::vector< unsigned int >()) -> bool
        """
        return _oebioisostere.OEDBReader_Init(self, *args)

    def GetNextBlob(self, blob: "OEDBBlob") -> "bool":
        r"""GetNextBlob(OEDBReader self, OEDBBlob blob) -> bool"""
        return _oebioisostere.OEDBReader_GetNextBlob(self, blob)

    def GetFragCount(self) -> "unsigned int":
        r"""GetFragCount(OEDBReader self) -> unsigned int"""
        return _oebioisostere.OEDBReader_GetFragCount(self)

    def GetIndices(self) -> "std::vector< unsigned int,std::allocator< unsigned int > > const &":
        r"""GetIndices(OEDBReader self) -> OEUIntVector"""
        return _oebioisostere.OEDBReader_GetIndices(self)

# Register OEDBReader in _oebioisostere:
_oebioisostere.OEDBReader_swigregister(OEDBReader)


def OEGetDBIndices(*args) -> "std::vector< unsigned int,std::allocator< unsigned int > >":
    r"""OEGetDBIndices(OEBroodQuery query, OEBroodScoreOptions scoreOpts=OEBioisostere::OEBroodScoreOptions(), OEDBReadOptions readOpts=OEBioisostere::OEDBReadOptions()) -> OEUIntVector"""
    return _oebioisostere.OEGetDBIndices(*args)
class OEBroodMatcher(object):
    r"""Proxy of C++ OEBioisostere::OEBroodMatcher class."""

    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        r"""__init__(OEBroodMatcher self, OEBroodScoreOptions scoreOpts=OEBioisostere::OEBroodScoreOptions(), OEBroodMatchOptions matchOpts=OEBioisostere::OEBroodMatchOptions()) -> OEBroodMatcher"""
        _oebioisostere.OEBroodMatcher_swiginit(self, _oebioisostere.new_OEBroodMatcher(*args))
    __swig_destroy__ = _oebioisostere.delete_OEBroodMatcher

    def Setup(self, query: "OEBroodQuery") -> "bool":
        r"""Setup(OEBroodMatcher self, OEBroodQuery query) -> bool"""
        return _oebioisostere.OEBroodMatcher_Setup(self, query)

    def Match(self, blob: "OEDBBlob") -> "std::vector< OEBioisostere::OEBroodMatch,std::allocator< OEBioisostere::OEBroodMatch > >":
        r"""Match(OEBroodMatcher self, OEDBBlob blob) -> OEBroodMatchVector"""
        return _oebioisostere.OEBroodMatcher_Match(self, blob)

# Register OEBroodMatcher in _oebioisostere:
_oebioisostere.OEBroodMatcher_swigregister(OEBroodMatcher)

class OEBroodMatchVector(object):
    r"""Proxy of C++ std::vector< OEBioisostere::OEBroodMatch > class."""

    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def iterator(self) -> "swig::oebioisostere_SwigPyIterator *":
        r"""iterator(OEBroodMatchVector self) -> oebioisostere_SwigPyIterator"""
        return _oebioisostere.OEBroodMatchVector_iterator(self)
    def __iter__(self):
        return self.iterator()

    def __nonzero__(self) -> "bool":
        r"""__nonzero__(OEBroodMatchVector self) -> bool"""
        return _oebioisostere.OEBroodMatchVector___nonzero__(self)

    def __bool__(self) -> "bool":
        r"""__bool__(OEBroodMatchVector self) -> bool"""
        return _oebioisostere.OEBroodMatchVector___bool__(self)

    def __len__(self) -> "std::vector< OEBioisostere::OEBroodMatch >::size_type":
        r"""__len__(OEBroodMatchVector self) -> std::vector< OEBioisostere::OEBroodMatch >::size_type"""
        return _oebioisostere.OEBroodMatchVector___len__(self)

    def __getslice__(self, i: "std::vector< OEBioisostere::OEBroodMatch >::difference_type", j: "std::vector< OEBioisostere::OEBroodMatch >::difference_type") -> "std::vector< OEBioisostere::OEBroodMatch,std::allocator< OEBioisostere::OEBroodMatch > > *":
        r"""__getslice__(OEBroodMatchVector self, std::vector< OEBioisostere::OEBroodMatch >::difference_type i, std::vector< OEBioisostere::OEBroodMatch >::difference_type j) -> OEBroodMatchVector"""
        return _oebioisostere.OEBroodMatchVector___getslice__(self, i, j)

    def __setslice__(self, *args) -> "void":
        r"""
        __setslice__(OEBroodMatchVector self, std::vector< OEBioisostere::OEBroodMatch >::difference_type i, std::vector< OEBioisostere::OEBroodMatch >::difference_type j)
        __setslice__(OEBroodMatchVector self, std::vector< OEBioisostere::OEBroodMatch >::difference_type i, std::vector< OEBioisostere::OEBroodMatch >::difference_type j, OEBroodMatchVector v)
        """
        return _oebioisostere.OEBroodMatchVector___setslice__(self, *args)

    def __delslice__(self, i: "std::vector< OEBioisostere::OEBroodMatch >::difference_type", j: "std::vector< OEBioisostere::OEBroodMatch >::difference_type") -> "void":
        r"""__delslice__(OEBroodMatchVector self, std::vector< OEBioisostere::OEBroodMatch >::difference_type i, std::vector< OEBioisostere::OEBroodMatch >::difference_type j)"""
        return _oebioisostere.OEBroodMatchVector___delslice__(self, i, j)

    def __delitem__(self, *args) -> "void":
        r"""
        __delitem__(OEBroodMatchVector self, std::vector< OEBioisostere::OEBroodMatch >::difference_type i)
        __delitem__(OEBroodMatchVector self, PySliceObject * slice)
        """
        return _oebioisostere.OEBroodMatchVector___delitem__(self, *args)

    def __getitem__(self, *args) -> "std::vector< OEBioisostere::OEBroodMatch >::value_type const &":
        r"""
        __getitem__(OEBroodMatchVector self, PySliceObject * slice) -> OEBroodMatchVector
        __getitem__(OEBroodMatchVector self, std::vector< OEBioisostere::OEBroodMatch >::difference_type i) -> OEBroodMatch
        """
        return _oebioisostere.OEBroodMatchVector___getitem__(self, *args)

    def __setitem__(self, *args) -> "void":
        r"""
        __setitem__(OEBroodMatchVector self, PySliceObject * slice, OEBroodMatchVector v)
        __setitem__(OEBroodMatchVector self, PySliceObject * slice)
        __setitem__(OEBroodMatchVector self, std::vector< OEBioisostere::OEBroodMatch >::difference_type i, OEBroodMatch x)
        """
        return _oebioisostere.OEBroodMatchVector___setitem__(self, *args)

    def pop(self) -> "std::vector< OEBioisostere::OEBroodMatch >::value_type":
        r"""pop(OEBroodMatchVector self) -> OEBroodMatch"""
        return _oebioisostere.OEBroodMatchVector_pop(self)

    def append(self, x: "OEBroodMatch") -> "void":
        r"""append(OEBroodMatchVector self, OEBroodMatch x)"""
        return _oebioisostere.OEBroodMatchVector_append(self, x)

    def empty(self) -> "bool":
        r"""empty(OEBroodMatchVector self) -> bool"""
        return _oebioisostere.OEBroodMatchVector_empty(self)

    def size(self) -> "std::vector< OEBioisostere::OEBroodMatch >::size_type":
        r"""size(OEBroodMatchVector self) -> std::vector< OEBioisostere::OEBroodMatch >::size_type"""
        return _oebioisostere.OEBroodMatchVector_size(self)

    def swap(self, v: "OEBroodMatchVector") -> "void":
        r"""swap(OEBroodMatchVector self, OEBroodMatchVector v)"""
        return _oebioisostere.OEBroodMatchVector_swap(self, v)

    def begin(self) -> "std::vector< OEBioisostere::OEBroodMatch >::iterator":
        r"""begin(OEBroodMatchVector self) -> std::vector< OEBioisostere::OEBroodMatch >::iterator"""
        return _oebioisostere.OEBroodMatchVector_begin(self)

    def end(self) -> "std::vector< OEBioisostere::OEBroodMatch >::iterator":
        r"""end(OEBroodMatchVector self) -> std::vector< OEBioisostere::OEBroodMatch >::iterator"""
        return _oebioisostere.OEBroodMatchVector_end(self)

    def rbegin(self) -> "std::vector< OEBioisostere::OEBroodMatch >::reverse_iterator":
        r"""rbegin(OEBroodMatchVector self) -> std::vector< OEBioisostere::OEBroodMatch >::reverse_iterator"""
        return _oebioisostere.OEBroodMatchVector_rbegin(self)

    def rend(self) -> "std::vector< OEBioisostere::OEBroodMatch >::reverse_iterator":
        r"""rend(OEBroodMatchVector self) -> std::vector< OEBioisostere::OEBroodMatch >::reverse_iterator"""
        return _oebioisostere.OEBroodMatchVector_rend(self)

    def clear(self) -> "void":
        r"""clear(OEBroodMatchVector self)"""
        return _oebioisostere.OEBroodMatchVector_clear(self)

    def get_allocator(self) -> "std::vector< OEBioisostere::OEBroodMatch >::allocator_type":
        r"""get_allocator(OEBroodMatchVector self) -> std::vector< OEBioisostere::OEBroodMatch >::allocator_type"""
        return _oebioisostere.OEBroodMatchVector_get_allocator(self)

    def pop_back(self) -> "void":
        r"""pop_back(OEBroodMatchVector self)"""
        return _oebioisostere.OEBroodMatchVector_pop_back(self)

    def erase(self, *args) -> "std::vector< OEBioisostere::OEBroodMatch >::iterator":
        r"""
        erase(OEBroodMatchVector self, std::vector< OEBioisostere::OEBroodMatch >::iterator pos) -> std::vector< OEBioisostere::OEBroodMatch >::iterator
        erase(OEBroodMatchVector self, std::vector< OEBioisostere::OEBroodMatch >::iterator first, std::vector< OEBioisostere::OEBroodMatch >::iterator last) -> std::vector< OEBioisostere::OEBroodMatch >::iterator
        """
        return _oebioisostere.OEBroodMatchVector_erase(self, *args)

    def __init__(self, *args):
        r"""
        __init__(OEBroodMatchVector self) -> OEBroodMatchVector
        __init__(OEBroodMatchVector self, OEBroodMatchVector other) -> OEBroodMatchVector
        __init__(OEBroodMatchVector self, std::vector< OEBioisostere::OEBroodMatch >::size_type size) -> OEBroodMatchVector
        __init__(OEBroodMatchVector self, std::vector< OEBioisostere::OEBroodMatch >::size_type size, OEBroodMatch value) -> OEBroodMatchVector
        """
        _oebioisostere.OEBroodMatchVector_swiginit(self, _oebioisostere.new_OEBroodMatchVector(*args))

    def push_back(self, x: "OEBroodMatch") -> "void":
        r"""push_back(OEBroodMatchVector self, OEBroodMatch x)"""
        return _oebioisostere.OEBroodMatchVector_push_back(self, x)

    def front(self) -> "std::vector< OEBioisostere::OEBroodMatch >::value_type const &":
        r"""front(OEBroodMatchVector self) -> OEBroodMatch"""
        return _oebioisostere.OEBroodMatchVector_front(self)

    def back(self) -> "std::vector< OEBioisostere::OEBroodMatch >::value_type const &":
        r"""back(OEBroodMatchVector self) -> OEBroodMatch"""
        return _oebioisostere.OEBroodMatchVector_back(self)

    def assign(self, n: "std::vector< OEBioisostere::OEBroodMatch >::size_type", x: "OEBroodMatch") -> "void":
        r"""assign(OEBroodMatchVector self, std::vector< OEBioisostere::OEBroodMatch >::size_type n, OEBroodMatch x)"""
        return _oebioisostere.OEBroodMatchVector_assign(self, n, x)

    def resize(self, *args) -> "void":
        r"""
        resize(OEBroodMatchVector self, std::vector< OEBioisostere::OEBroodMatch >::size_type new_size)
        resize(OEBroodMatchVector self, std::vector< OEBioisostere::OEBroodMatch >::size_type new_size, OEBroodMatch x)
        """
        return _oebioisostere.OEBroodMatchVector_resize(self, *args)

    def insert(self, *args) -> "void":
        r"""
        insert(OEBroodMatchVector self, std::vector< OEBioisostere::OEBroodMatch >::iterator pos, OEBroodMatch x) -> std::vector< OEBioisostere::OEBroodMatch >::iterator
        insert(OEBroodMatchVector self, std::vector< OEBioisostere::OEBroodMatch >::iterator pos, std::vector< OEBioisostere::OEBroodMatch >::size_type n, OEBroodMatch x)
        """
        return _oebioisostere.OEBroodMatchVector_insert(self, *args)

    def reserve(self, n: "std::vector< OEBioisostere::OEBroodMatch >::size_type") -> "void":
        r"""reserve(OEBroodMatchVector self, std::vector< OEBioisostere::OEBroodMatch >::size_type n)"""
        return _oebioisostere.OEBroodMatchVector_reserve(self, n)

    def capacity(self) -> "std::vector< OEBioisostere::OEBroodMatch >::size_type":
        r"""capacity(OEBroodMatchVector self) -> std::vector< OEBioisostere::OEBroodMatch >::size_type"""
        return _oebioisostere.OEBroodMatchVector_capacity(self)
    __swig_destroy__ = _oebioisostere.delete_OEBroodMatchVector

# Register OEBroodMatchVector in _oebioisostere:
_oebioisostere.OEBroodMatchVector_swigregister(OEBroodMatchVector)

class OEHitlistBuilder(object):
    r"""Proxy of C++ OEBioisostere::OEHitlistBuilder class."""

    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        r"""__init__(OEHitlistBuilder self, OEBroodQuery query, OEBroodScoreOptions scoreOpts=OEBioisostere::OEBroodScoreOptions(), OEBroodHitlistOptions options=OEBioisostere::OEBroodHitlistOptions()) -> OEHitlistBuilder"""
        _oebioisostere.OEHitlistBuilder_swiginit(self, _oebioisostere.new_OEHitlistBuilder(*args))
    __swig_destroy__ = _oebioisostere.delete_OEHitlistBuilder

    def GetDeleteCount(self) -> "unsigned int":
        r"""GetDeleteCount(OEHitlistBuilder self) -> unsigned int"""
        return _oebioisostere.OEHitlistBuilder_GetDeleteCount(self)

    def GetHitCount(self) -> "unsigned int":
        r"""GetHitCount(OEHitlistBuilder self) -> unsigned int"""
        return _oebioisostere.OEHitlistBuilder_GetHitCount(self)

    def GetBumpCount(self) -> "unsigned int":
        r"""GetBumpCount(OEHitlistBuilder self) -> unsigned int"""
        return _oebioisostere.OEHitlistBuilder_GetBumpCount(self)

    def GetSelectCount(self) -> "unsigned int":
        r"""GetSelectCount(OEHitlistBuilder self) -> unsigned int"""
        return _oebioisostere.OEHitlistBuilder_GetSelectCount(self)

    def GetDuplicateCount(self) -> "unsigned int":
        r"""GetDuplicateCount(OEHitlistBuilder self) -> unsigned int"""
        return _oebioisostere.OEHitlistBuilder_GetDuplicateCount(self)

    def GetSecDuplicateCount(self) -> "unsigned int":
        r"""GetSecDuplicateCount(OEHitlistBuilder self) -> unsigned int"""
        return _oebioisostere.OEHitlistBuilder_GetSecDuplicateCount(self)

    def GetUnstableCount(self) -> "unsigned int":
        r"""GetUnstableCount(OEHitlistBuilder self) -> unsigned int"""
        return _oebioisostere.OEHitlistBuilder_GetUnstableCount(self)

    def GetStrainCount(self) -> "unsigned int":
        r"""GetStrainCount(OEHitlistBuilder self) -> unsigned int"""
        return _oebioisostere.OEHitlistBuilder_GetStrainCount(self)

    def GetHits(self) -> "std::vector< OEBioisostere::OEBroodHit,std::allocator< OEBioisostere::OEBroodHit > >":
        r"""GetHits(OEHitlistBuilder self) -> OEBroodHitVector"""
        return _oebioisostere.OEHitlistBuilder_GetHits(self)

    def AddMatches(self, arg2: "OEBroodMatchVector") -> "bool":
        r"""AddMatches(OEHitlistBuilder self, OEBroodMatchVector arg2) -> bool"""
        return _oebioisostere.OEHitlistBuilder_AddMatches(self, arg2)

    def Build(self) -> "bool":
        r"""Build(OEHitlistBuilder self) -> bool"""
        return _oebioisostere.OEHitlistBuilder_Build(self)

# Register OEHitlistBuilder in _oebioisostere:
_oebioisostere.OEHitlistBuilder_swigregister(OEHitlistBuilder)

class OEBroodHitVector(object):
    r"""Proxy of C++ std::vector< OEBioisostere::OEBroodHit > class."""

    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def iterator(self) -> "swig::oebioisostere_SwigPyIterator *":
        r"""iterator(OEBroodHitVector self) -> oebioisostere_SwigPyIterator"""
        return _oebioisostere.OEBroodHitVector_iterator(self)
    def __iter__(self):
        return self.iterator()

    def __nonzero__(self) -> "bool":
        r"""__nonzero__(OEBroodHitVector self) -> bool"""
        return _oebioisostere.OEBroodHitVector___nonzero__(self)

    def __bool__(self) -> "bool":
        r"""__bool__(OEBroodHitVector self) -> bool"""
        return _oebioisostere.OEBroodHitVector___bool__(self)

    def __len__(self) -> "std::vector< OEBioisostere::OEBroodHit >::size_type":
        r"""__len__(OEBroodHitVector self) -> std::vector< OEBioisostere::OEBroodHit >::size_type"""
        return _oebioisostere.OEBroodHitVector___len__(self)

    def __getslice__(self, i: "std::vector< OEBioisostere::OEBroodHit >::difference_type", j: "std::vector< OEBioisostere::OEBroodHit >::difference_type") -> "std::vector< OEBioisostere::OEBroodHit,std::allocator< OEBioisostere::OEBroodHit > > *":
        r"""__getslice__(OEBroodHitVector self, std::vector< OEBioisostere::OEBroodHit >::difference_type i, std::vector< OEBioisostere::OEBroodHit >::difference_type j) -> OEBroodHitVector"""
        return _oebioisostere.OEBroodHitVector___getslice__(self, i, j)

    def __setslice__(self, *args) -> "void":
        r"""
        __setslice__(OEBroodHitVector self, std::vector< OEBioisostere::OEBroodHit >::difference_type i, std::vector< OEBioisostere::OEBroodHit >::difference_type j)
        __setslice__(OEBroodHitVector self, std::vector< OEBioisostere::OEBroodHit >::difference_type i, std::vector< OEBioisostere::OEBroodHit >::difference_type j, OEBroodHitVector v)
        """
        return _oebioisostere.OEBroodHitVector___setslice__(self, *args)

    def __delslice__(self, i: "std::vector< OEBioisostere::OEBroodHit >::difference_type", j: "std::vector< OEBioisostere::OEBroodHit >::difference_type") -> "void":
        r"""__delslice__(OEBroodHitVector self, std::vector< OEBioisostere::OEBroodHit >::difference_type i, std::vector< OEBioisostere::OEBroodHit >::difference_type j)"""
        return _oebioisostere.OEBroodHitVector___delslice__(self, i, j)

    def __delitem__(self, *args) -> "void":
        r"""
        __delitem__(OEBroodHitVector self, std::vector< OEBioisostere::OEBroodHit >::difference_type i)
        __delitem__(OEBroodHitVector self, PySliceObject * slice)
        """
        return _oebioisostere.OEBroodHitVector___delitem__(self, *args)

    def __getitem__(self, *args) -> "std::vector< OEBioisostere::OEBroodHit >::value_type const &":
        r"""
        __getitem__(OEBroodHitVector self, PySliceObject * slice) -> OEBroodHitVector
        __getitem__(OEBroodHitVector self, std::vector< OEBioisostere::OEBroodHit >::difference_type i) -> OEBroodHit
        """
        return _oebioisostere.OEBroodHitVector___getitem__(self, *args)

    def __setitem__(self, *args) -> "void":
        r"""
        __setitem__(OEBroodHitVector self, PySliceObject * slice, OEBroodHitVector v)
        __setitem__(OEBroodHitVector self, PySliceObject * slice)
        __setitem__(OEBroodHitVector self, std::vector< OEBioisostere::OEBroodHit >::difference_type i, OEBroodHit x)
        """
        return _oebioisostere.OEBroodHitVector___setitem__(self, *args)

    def pop(self) -> "std::vector< OEBioisostere::OEBroodHit >::value_type":
        r"""pop(OEBroodHitVector self) -> OEBroodHit"""
        return _oebioisostere.OEBroodHitVector_pop(self)

    def append(self, x: "OEBroodHit") -> "void":
        r"""append(OEBroodHitVector self, OEBroodHit x)"""
        return _oebioisostere.OEBroodHitVector_append(self, x)

    def empty(self) -> "bool":
        r"""empty(OEBroodHitVector self) -> bool"""
        return _oebioisostere.OEBroodHitVector_empty(self)

    def size(self) -> "std::vector< OEBioisostere::OEBroodHit >::size_type":
        r"""size(OEBroodHitVector self) -> std::vector< OEBioisostere::OEBroodHit >::size_type"""
        return _oebioisostere.OEBroodHitVector_size(self)

    def swap(self, v: "OEBroodHitVector") -> "void":
        r"""swap(OEBroodHitVector self, OEBroodHitVector v)"""
        return _oebioisostere.OEBroodHitVector_swap(self, v)

    def begin(self) -> "std::vector< OEBioisostere::OEBroodHit >::iterator":
        r"""begin(OEBroodHitVector self) -> std::vector< OEBioisostere::OEBroodHit >::iterator"""
        return _oebioisostere.OEBroodHitVector_begin(self)

    def end(self) -> "std::vector< OEBioisostere::OEBroodHit >::iterator":
        r"""end(OEBroodHitVector self) -> std::vector< OEBioisostere::OEBroodHit >::iterator"""
        return _oebioisostere.OEBroodHitVector_end(self)

    def rbegin(self) -> "std::vector< OEBioisostere::OEBroodHit >::reverse_iterator":
        r"""rbegin(OEBroodHitVector self) -> std::vector< OEBioisostere::OEBroodHit >::reverse_iterator"""
        return _oebioisostere.OEBroodHitVector_rbegin(self)

    def rend(self) -> "std::vector< OEBioisostere::OEBroodHit >::reverse_iterator":
        r"""rend(OEBroodHitVector self) -> std::vector< OEBioisostere::OEBroodHit >::reverse_iterator"""
        return _oebioisostere.OEBroodHitVector_rend(self)

    def clear(self) -> "void":
        r"""clear(OEBroodHitVector self)"""
        return _oebioisostere.OEBroodHitVector_clear(self)

    def get_allocator(self) -> "std::vector< OEBioisostere::OEBroodHit >::allocator_type":
        r"""get_allocator(OEBroodHitVector self) -> std::vector< OEBioisostere::OEBroodHit >::allocator_type"""
        return _oebioisostere.OEBroodHitVector_get_allocator(self)

    def pop_back(self) -> "void":
        r"""pop_back(OEBroodHitVector self)"""
        return _oebioisostere.OEBroodHitVector_pop_back(self)

    def erase(self, *args) -> "std::vector< OEBioisostere::OEBroodHit >::iterator":
        r"""
        erase(OEBroodHitVector self, std::vector< OEBioisostere::OEBroodHit >::iterator pos) -> std::vector< OEBioisostere::OEBroodHit >::iterator
        erase(OEBroodHitVector self, std::vector< OEBioisostere::OEBroodHit >::iterator first, std::vector< OEBioisostere::OEBroodHit >::iterator last) -> std::vector< OEBioisostere::OEBroodHit >::iterator
        """
        return _oebioisostere.OEBroodHitVector_erase(self, *args)

    def __init__(self, *args):
        r"""
        __init__(OEBroodHitVector self) -> OEBroodHitVector
        __init__(OEBroodHitVector self, OEBroodHitVector other) -> OEBroodHitVector
        __init__(OEBroodHitVector self, std::vector< OEBioisostere::OEBroodHit >::size_type size) -> OEBroodHitVector
        __init__(OEBroodHitVector self, std::vector< OEBioisostere::OEBroodHit >::size_type size, OEBroodHit value) -> OEBroodHitVector
        """
        _oebioisostere.OEBroodHitVector_swiginit(self, _oebioisostere.new_OEBroodHitVector(*args))

    def push_back(self, x: "OEBroodHit") -> "void":
        r"""push_back(OEBroodHitVector self, OEBroodHit x)"""
        return _oebioisostere.OEBroodHitVector_push_back(self, x)

    def front(self) -> "std::vector< OEBioisostere::OEBroodHit >::value_type const &":
        r"""front(OEBroodHitVector self) -> OEBroodHit"""
        return _oebioisostere.OEBroodHitVector_front(self)

    def back(self) -> "std::vector< OEBioisostere::OEBroodHit >::value_type const &":
        r"""back(OEBroodHitVector self) -> OEBroodHit"""
        return _oebioisostere.OEBroodHitVector_back(self)

    def assign(self, n: "std::vector< OEBioisostere::OEBroodHit >::size_type", x: "OEBroodHit") -> "void":
        r"""assign(OEBroodHitVector self, std::vector< OEBioisostere::OEBroodHit >::size_type n, OEBroodHit x)"""
        return _oebioisostere.OEBroodHitVector_assign(self, n, x)

    def resize(self, *args) -> "void":
        r"""
        resize(OEBroodHitVector self, std::vector< OEBioisostere::OEBroodHit >::size_type new_size)
        resize(OEBroodHitVector self, std::vector< OEBioisostere::OEBroodHit >::size_type new_size, OEBroodHit x)
        """
        return _oebioisostere.OEBroodHitVector_resize(self, *args)

    def insert(self, *args) -> "void":
        r"""
        insert(OEBroodHitVector self, std::vector< OEBioisostere::OEBroodHit >::iterator pos, OEBroodHit x) -> std::vector< OEBioisostere::OEBroodHit >::iterator
        insert(OEBroodHitVector self, std::vector< OEBioisostere::OEBroodHit >::iterator pos, std::vector< OEBioisostere::OEBroodHit >::size_type n, OEBroodHit x)
        """
        return _oebioisostere.OEBroodHitVector_insert(self, *args)

    def reserve(self, n: "std::vector< OEBioisostere::OEBroodHit >::size_type") -> "void":
        r"""reserve(OEBroodHitVector self, std::vector< OEBioisostere::OEBroodHit >::size_type n)"""
        return _oebioisostere.OEBroodHitVector_reserve(self, n)

    def capacity(self) -> "std::vector< OEBioisostere::OEBroodHit >::size_type":
        r"""capacity(OEBroodHitVector self) -> std::vector< OEBioisostere::OEBroodHit >::size_type"""
        return _oebioisostere.OEBroodHitVector_capacity(self)
    __swig_destroy__ = _oebioisostere.delete_OEBroodHitVector

# Register OEBroodHitVector in _oebioisostere:
_oebioisostere.OEBroodHitVector_swigregister(OEBroodHitVector)

OE_OEBIOISOSTERE_VERSION = _oebioisostere.OE_OEBIOISOSTERE_VERSION


def OEBioisostereGetRelease() -> "char const *":
    r"""OEBioisostereGetRelease() -> char const *"""
    return _oebioisostere.OEBioisostereGetRelease()

def OEBioisostereGetVersion() -> "unsigned int":
    r"""OEBioisostereGetVersion() -> unsigned int"""
    return _oebioisostere.OEBioisostereGetVersion()

def OEBioisostereGetArch() -> "char const *":
    r"""OEBioisostereGetArch() -> char const *"""
    return _oebioisostere.OEBioisostereGetArch()

def OEBioisostereGetPlatform() -> "char const *":
    r"""OEBioisostereGetPlatform() -> char const *"""
    return _oebioisostere.OEBioisostereGetPlatform()

def OEBioisostereIsLicensed(feature: "char const *"=None, expdate: "unsigned int *"=None) -> "bool":
    r"""OEBioisostereIsLicensed(char const * feature=None, unsigned int * expdate=None) -> bool"""
    return _oebioisostere.OEBioisostereIsLicensed(feature, expdate)

def OEBioisostereGetLicensee(*args) -> "std::string":
    r"""
    OEBioisostereGetLicensee(std::string & licensee) -> bool
    OEBioisostereGetLicensee() -> std::string
    """
    return _oebioisostere.OEBioisostereGetLicensee(*args)

def OEBioisostereGetSite(*args) -> "std::string":
    r"""
    OEBioisostereGetSite(std::string & site) -> bool
    OEBioisostereGetSite() -> std::string
    """
    return _oebioisostere.OEBioisostereGetSite(*args)


