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

"""
TopOpeBRepDS module, see official documentation at
https://www.opencascade.com/doc/occt-7.4.0/refman/html/package_topopebrepds.html
"""

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")

# Import the low-level C/C++ module
if __package__ or "." in __name__:
    from . import _TopOpeBRepDS
else:
    import _TopOpeBRepDS

try:
    import builtins as __builtin__
except ImportError:
    import __builtin__

_swig_new_instance_method = _TopOpeBRepDS.SWIG_PyInstanceMethod_New
_swig_new_static_method = _TopOpeBRepDS.SWIG_PyStaticMethod_New

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__)


class 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__ = _TopOpeBRepDS.delete_SwigPyIterator
    value = _swig_new_instance_method(_TopOpeBRepDS.SwigPyIterator_value)
    incr = _swig_new_instance_method(_TopOpeBRepDS.SwigPyIterator_incr)
    decr = _swig_new_instance_method(_TopOpeBRepDS.SwigPyIterator_decr)
    distance = _swig_new_instance_method(_TopOpeBRepDS.SwigPyIterator_distance)
    equal = _swig_new_instance_method(_TopOpeBRepDS.SwigPyIterator_equal)
    copy = _swig_new_instance_method(_TopOpeBRepDS.SwigPyIterator_copy)
    next = _swig_new_instance_method(_TopOpeBRepDS.SwigPyIterator_next)
    __next__ = _swig_new_instance_method(_TopOpeBRepDS.SwigPyIterator___next__)
    previous = _swig_new_instance_method(_TopOpeBRepDS.SwigPyIterator_previous)
    advance = _swig_new_instance_method(_TopOpeBRepDS.SwigPyIterator_advance)
    __eq__ = _swig_new_instance_method(_TopOpeBRepDS.SwigPyIterator___eq__)
    __ne__ = _swig_new_instance_method(_TopOpeBRepDS.SwigPyIterator___ne__)
    __iadd__ = _swig_new_instance_method(_TopOpeBRepDS.SwigPyIterator___iadd__)
    __isub__ = _swig_new_instance_method(_TopOpeBRepDS.SwigPyIterator___isub__)
    __add__ = _swig_new_instance_method(_TopOpeBRepDS.SwigPyIterator___add__)
    __sub__ = _swig_new_instance_method(_TopOpeBRepDS.SwigPyIterator___sub__)
    def __iter__(self):
        return self

# Register SwigPyIterator in _TopOpeBRepDS:
_TopOpeBRepDS.SwigPyIterator_swigregister(SwigPyIterator)


def _dumps_object(klass):
    """ Overwrite default string output for any wrapped object.
    By default, __repr__ method returns something like:
    <OCC.Core.TopoDS.TopoDS_Shape; proxy of <Swig Object of type 'TopoDS_Shape *' at 0x02BB0758> >
    This is too much verbose.
    We prefer :
    <class 'gp_Pnt'>
    or
    <class 'TopoDS_Shape'>
    """
    klass_name = str(klass.__class__).split(".")[3].split("'")[0]
    repr_string = "<class '" + klass_name + "'"
# for TopoDS_Shape, we also look for the base type
    if klass_name == "TopoDS_Shape":
        if klass.IsNull():
            repr_string += ": Null>"
            return repr_string
        st = klass.ShapeType()
        types = {OCC.Core.TopAbs.TopAbs_VERTEX: "Vertex",
                 OCC.Core.TopAbs.TopAbs_SOLID: "Solid",
                 OCC.Core.TopAbs.TopAbs_EDGE: "Edge",
                 OCC.Core.TopAbs.TopAbs_FACE: "Face",
                 OCC.Core.TopAbs.TopAbs_SHELL: "Shell",
                 OCC.Core.TopAbs.TopAbs_WIRE: "Wire",
                 OCC.Core.TopAbs.TopAbs_COMPOUND: "Compound",
                 OCC.Core.TopAbs.TopAbs_COMPSOLID: "Compsolid"}
        repr_string += "; Type:%s" % types[st]        
    elif hasattr(klass, "IsNull"):
        if klass.IsNull():
            repr_string += "; Null"
    repr_string += ">"
    return repr_string


from six import with_metaclass
import warnings
from OCC.Wrapper.wrapper_utils import Proxy, deprecated

import OCC.Core.Standard
import OCC.Core.NCollection
import OCC.Core.Geom
import OCC.Core.gp
import OCC.Core.GeomAbs
import OCC.Core.TColgp
import OCC.Core.TColStd
import OCC.Core.TCollection
import OCC.Core.TopAbs
import OCC.Core.TopoDS
import OCC.Core.Message
import OCC.Core.TopLoc
import OCC.Core.TopOpeBRepTool
import OCC.Core.TopTools
import OCC.Core.BRepClass3d
import OCC.Core.IntCurveSurface
import OCC.Core.math
import OCC.Core.Adaptor3d
import OCC.Core.Adaptor2d
import OCC.Core.Geom2d
import OCC.Core.Intf
import OCC.Core.Bnd
import OCC.Core.BVH
import OCC.Core.IntSurf
import OCC.Core.IntCurvesFace
import OCC.Core.BRepAdaptor
import OCC.Core.GeomAdaptor
import OCC.Core.Geom2dAdaptor
import OCC.Core.TopExp
import OCC.Core.Extrema
TopOpeBRepDS_UNSHGEOMETRY = _TopOpeBRepDS.TopOpeBRepDS_UNSHGEOMETRY
TopOpeBRepDS_SAMEORIENTED = _TopOpeBRepDS.TopOpeBRepDS_SAMEORIENTED
TopOpeBRepDS_DIFFORIENTED = _TopOpeBRepDS.TopOpeBRepDS_DIFFORIENTED
TopOpeBRepDS_OK = _TopOpeBRepDS.TopOpeBRepDS_OK
TopOpeBRepDS_NOK = _TopOpeBRepDS.TopOpeBRepDS_NOK
TopOpeBRepDS_POINT = _TopOpeBRepDS.TopOpeBRepDS_POINT
TopOpeBRepDS_CURVE = _TopOpeBRepDS.TopOpeBRepDS_CURVE
TopOpeBRepDS_SURFACE = _TopOpeBRepDS.TopOpeBRepDS_SURFACE
TopOpeBRepDS_VERTEX = _TopOpeBRepDS.TopOpeBRepDS_VERTEX
TopOpeBRepDS_EDGE = _TopOpeBRepDS.TopOpeBRepDS_EDGE
TopOpeBRepDS_WIRE = _TopOpeBRepDS.TopOpeBRepDS_WIRE
TopOpeBRepDS_FACE = _TopOpeBRepDS.TopOpeBRepDS_FACE
TopOpeBRepDS_SHELL = _TopOpeBRepDS.TopOpeBRepDS_SHELL
TopOpeBRepDS_SOLID = _TopOpeBRepDS.TopOpeBRepDS_SOLID
TopOpeBRepDS_COMPSOLID = _TopOpeBRepDS.TopOpeBRepDS_COMPSOLID
TopOpeBRepDS_COMPOUND = _TopOpeBRepDS.TopOpeBRepDS_COMPOUND
TopOpeBRepDS_UNKNOWN = _TopOpeBRepDS.TopOpeBRepDS_UNKNOWN
Handle_TopOpeBRepDS_Association_Create = _TopOpeBRepDS.Handle_TopOpeBRepDS_Association_Create
Handle_TopOpeBRepDS_Association_DownCast = _TopOpeBRepDS.Handle_TopOpeBRepDS_Association_DownCast
Handle_TopOpeBRepDS_Association_IsNull = _TopOpeBRepDS.Handle_TopOpeBRepDS_Association_IsNull
Handle_TopOpeBRepDS_Check_Create = _TopOpeBRepDS.Handle_TopOpeBRepDS_Check_Create
Handle_TopOpeBRepDS_Check_DownCast = _TopOpeBRepDS.Handle_TopOpeBRepDS_Check_DownCast
Handle_TopOpeBRepDS_Check_IsNull = _TopOpeBRepDS.Handle_TopOpeBRepDS_Check_IsNull
Handle_TopOpeBRepDS_GapTool_Create = _TopOpeBRepDS.Handle_TopOpeBRepDS_GapTool_Create
Handle_TopOpeBRepDS_GapTool_DownCast = _TopOpeBRepDS.Handle_TopOpeBRepDS_GapTool_DownCast
Handle_TopOpeBRepDS_GapTool_IsNull = _TopOpeBRepDS.Handle_TopOpeBRepDS_GapTool_IsNull
Handle_TopOpeBRepDS_Interference_Create = _TopOpeBRepDS.Handle_TopOpeBRepDS_Interference_Create
Handle_TopOpeBRepDS_Interference_DownCast = _TopOpeBRepDS.Handle_TopOpeBRepDS_Interference_DownCast
Handle_TopOpeBRepDS_Interference_IsNull = _TopOpeBRepDS.Handle_TopOpeBRepDS_Interference_IsNull
Handle_TopOpeBRepDS_Marker_Create = _TopOpeBRepDS.Handle_TopOpeBRepDS_Marker_Create
Handle_TopOpeBRepDS_Marker_DownCast = _TopOpeBRepDS.Handle_TopOpeBRepDS_Marker_DownCast
Handle_TopOpeBRepDS_Marker_IsNull = _TopOpeBRepDS.Handle_TopOpeBRepDS_Marker_IsNull
Handle_TopOpeBRepDS_CurvePointInterference_Create = _TopOpeBRepDS.Handle_TopOpeBRepDS_CurvePointInterference_Create
Handle_TopOpeBRepDS_CurvePointInterference_DownCast = _TopOpeBRepDS.Handle_TopOpeBRepDS_CurvePointInterference_DownCast
Handle_TopOpeBRepDS_CurvePointInterference_IsNull = _TopOpeBRepDS.Handle_TopOpeBRepDS_CurvePointInterference_IsNull
Handle_TopOpeBRepDS_ShapeShapeInterference_Create = _TopOpeBRepDS.Handle_TopOpeBRepDS_ShapeShapeInterference_Create
Handle_TopOpeBRepDS_ShapeShapeInterference_DownCast = _TopOpeBRepDS.Handle_TopOpeBRepDS_ShapeShapeInterference_DownCast
Handle_TopOpeBRepDS_ShapeShapeInterference_IsNull = _TopOpeBRepDS.Handle_TopOpeBRepDS_ShapeShapeInterference_IsNull
Handle_TopOpeBRepDS_SolidSurfaceInterference_Create = _TopOpeBRepDS.Handle_TopOpeBRepDS_SolidSurfaceInterference_Create
Handle_TopOpeBRepDS_SolidSurfaceInterference_DownCast = _TopOpeBRepDS.Handle_TopOpeBRepDS_SolidSurfaceInterference_DownCast
Handle_TopOpeBRepDS_SolidSurfaceInterference_IsNull = _TopOpeBRepDS.Handle_TopOpeBRepDS_SolidSurfaceInterference_IsNull
Handle_TopOpeBRepDS_SurfaceCurveInterference_Create = _TopOpeBRepDS.Handle_TopOpeBRepDS_SurfaceCurveInterference_Create
Handle_TopOpeBRepDS_SurfaceCurveInterference_DownCast = _TopOpeBRepDS.Handle_TopOpeBRepDS_SurfaceCurveInterference_DownCast
Handle_TopOpeBRepDS_SurfaceCurveInterference_IsNull = _TopOpeBRepDS.Handle_TopOpeBRepDS_SurfaceCurveInterference_IsNull
Handle_TopOpeBRepDS_EdgeVertexInterference_Create = _TopOpeBRepDS.Handle_TopOpeBRepDS_EdgeVertexInterference_Create
Handle_TopOpeBRepDS_EdgeVertexInterference_DownCast = _TopOpeBRepDS.Handle_TopOpeBRepDS_EdgeVertexInterference_DownCast
Handle_TopOpeBRepDS_EdgeVertexInterference_IsNull = _TopOpeBRepDS.Handle_TopOpeBRepDS_EdgeVertexInterference_IsNull
Handle_TopOpeBRepDS_FaceEdgeInterference_Create = _TopOpeBRepDS.Handle_TopOpeBRepDS_FaceEdgeInterference_Create
Handle_TopOpeBRepDS_FaceEdgeInterference_DownCast = _TopOpeBRepDS.Handle_TopOpeBRepDS_FaceEdgeInterference_DownCast
Handle_TopOpeBRepDS_FaceEdgeInterference_IsNull = _TopOpeBRepDS.Handle_TopOpeBRepDS_FaceEdgeInterference_IsNull
Handle_TopOpeBRepDS_HArray1OfDataMapOfIntegerListOfInterference_Create = _TopOpeBRepDS.Handle_TopOpeBRepDS_HArray1OfDataMapOfIntegerListOfInterference_Create
Handle_TopOpeBRepDS_HArray1OfDataMapOfIntegerListOfInterference_DownCast = _TopOpeBRepDS.Handle_TopOpeBRepDS_HArray1OfDataMapOfIntegerListOfInterference_DownCast
Handle_TopOpeBRepDS_HArray1OfDataMapOfIntegerListOfInterference_IsNull = _TopOpeBRepDS.Handle_TopOpeBRepDS_HArray1OfDataMapOfIntegerListOfInterference_IsNull
class TopOpeBRepDS_IndexedDataMapOfVertexPoint(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    begin = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfVertexPoint_begin)
    end = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfVertexPoint_end)
    cbegin = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfVertexPoint_cbegin)
    cend = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfVertexPoint_cend)

    def __init__(self, *args):
        _TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfVertexPoint_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_IndexedDataMapOfVertexPoint(*args))
    Exchange = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfVertexPoint_Exchange)
    Assign = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfVertexPoint_Assign)
    Set = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfVertexPoint_Set)
    ReSize = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfVertexPoint_ReSize)
    Add = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfVertexPoint_Add)
    Contains = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfVertexPoint_Contains)
    Substitute = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfVertexPoint_Substitute)
    Swap = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfVertexPoint_Swap)
    RemoveLast = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfVertexPoint_RemoveLast)
    RemoveFromIndex = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfVertexPoint_RemoveFromIndex)
    RemoveKey = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfVertexPoint_RemoveKey)
    FindKey = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfVertexPoint_FindKey)
    FindFromIndex = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfVertexPoint_FindFromIndex)
    ChangeFromIndex = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfVertexPoint_ChangeFromIndex)
    __call__ = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfVertexPoint___call__)
    FindIndex = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfVertexPoint_FindIndex)
    ChangeFromKey = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfVertexPoint_ChangeFromKey)
    Seek = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfVertexPoint_Seek)
    ChangeSeek = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfVertexPoint_ChangeSeek)
    FindFromKey = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfVertexPoint_FindFromKey)
    Clear = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfVertexPoint_Clear)
    __swig_destroy__ = _TopOpeBRepDS.delete_TopOpeBRepDS_IndexedDataMapOfVertexPoint
    Size = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfVertexPoint_Size)

# Register TopOpeBRepDS_IndexedDataMapOfVertexPoint in _TopOpeBRepDS:
_TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfVertexPoint_swigregister(TopOpeBRepDS_IndexedDataMapOfVertexPoint)

class TopOpeBRepDS_MapOfSurface(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    begin = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfSurface_begin)
    end = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfSurface_end)
    cbegin = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfSurface_cbegin)
    cend = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfSurface_cend)

    def __init__(self, *args):
        _TopOpeBRepDS.TopOpeBRepDS_MapOfSurface_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_MapOfSurface(*args))
    Exchange = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfSurface_Exchange)
    Assign = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfSurface_Assign)
    Set = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfSurface_Set)
    ReSize = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfSurface_ReSize)
    Bind = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfSurface_Bind)
    Bound = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfSurface_Bound)
    IsBound = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfSurface_IsBound)
    UnBind = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfSurface_UnBind)
    Seek = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfSurface_Seek)
    Find = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfSurface_Find)
    ChangeSeek = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfSurface_ChangeSeek)
    ChangeFind = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfSurface_ChangeFind)
    __call__ = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfSurface___call__)
    Clear = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfSurface_Clear)
    __swig_destroy__ = _TopOpeBRepDS.delete_TopOpeBRepDS_MapOfSurface
    Size = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfSurface_Size)
    Keys = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfSurface_Keys)

# Register TopOpeBRepDS_MapOfSurface in _TopOpeBRepDS:
_TopOpeBRepDS.TopOpeBRepDS_MapOfSurface_swigregister(TopOpeBRepDS_MapOfSurface)

class TopOpeBRepDS_MapOfShapeData(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    begin = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfShapeData_begin)
    end = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfShapeData_end)
    cbegin = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfShapeData_cbegin)
    cend = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfShapeData_cend)

    def __init__(self, *args):
        _TopOpeBRepDS.TopOpeBRepDS_MapOfShapeData_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_MapOfShapeData(*args))
    Exchange = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfShapeData_Exchange)
    Assign = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfShapeData_Assign)
    Set = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfShapeData_Set)
    ReSize = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfShapeData_ReSize)
    Add = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfShapeData_Add)
    Contains = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfShapeData_Contains)
    Substitute = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfShapeData_Substitute)
    Swap = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfShapeData_Swap)
    RemoveLast = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfShapeData_RemoveLast)
    RemoveFromIndex = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfShapeData_RemoveFromIndex)
    RemoveKey = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfShapeData_RemoveKey)
    FindKey = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfShapeData_FindKey)
    FindFromIndex = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfShapeData_FindFromIndex)
    ChangeFromIndex = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfShapeData_ChangeFromIndex)
    __call__ = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfShapeData___call__)
    FindIndex = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfShapeData_FindIndex)
    ChangeFromKey = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfShapeData_ChangeFromKey)
    Seek = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfShapeData_Seek)
    ChangeSeek = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfShapeData_ChangeSeek)
    FindFromKey = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfShapeData_FindFromKey)
    Clear = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfShapeData_Clear)
    __swig_destroy__ = _TopOpeBRepDS.delete_TopOpeBRepDS_MapOfShapeData
    Size = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfShapeData_Size)

# Register TopOpeBRepDS_MapOfShapeData in _TopOpeBRepDS:
_TopOpeBRepDS.TopOpeBRepDS_MapOfShapeData_swigregister(TopOpeBRepDS_MapOfShapeData)

class TopOpeBRepDS_DataMapOfIntegerListOfInterference(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    begin = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfIntegerListOfInterference_begin)
    end = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfIntegerListOfInterference_end)
    cbegin = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfIntegerListOfInterference_cbegin)
    cend = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfIntegerListOfInterference_cend)

    def __init__(self, *args):
        _TopOpeBRepDS.TopOpeBRepDS_DataMapOfIntegerListOfInterference_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_DataMapOfIntegerListOfInterference(*args))
    Exchange = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfIntegerListOfInterference_Exchange)
    Assign = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfIntegerListOfInterference_Assign)
    Set = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfIntegerListOfInterference_Set)
    ReSize = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfIntegerListOfInterference_ReSize)
    Bind = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfIntegerListOfInterference_Bind)
    Bound = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfIntegerListOfInterference_Bound)
    IsBound = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfIntegerListOfInterference_IsBound)
    UnBind = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfIntegerListOfInterference_UnBind)
    Seek = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfIntegerListOfInterference_Seek)
    Find = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfIntegerListOfInterference_Find)
    ChangeSeek = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfIntegerListOfInterference_ChangeSeek)
    ChangeFind = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfIntegerListOfInterference_ChangeFind)
    __call__ = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfIntegerListOfInterference___call__)
    Clear = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfIntegerListOfInterference_Clear)
    __swig_destroy__ = _TopOpeBRepDS.delete_TopOpeBRepDS_DataMapOfIntegerListOfInterference
    Size = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfIntegerListOfInterference_Size)
    Keys = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfIntegerListOfInterference_Keys)

# Register TopOpeBRepDS_DataMapOfIntegerListOfInterference in _TopOpeBRepDS:
_TopOpeBRepDS.TopOpeBRepDS_DataMapOfIntegerListOfInterference_swigregister(TopOpeBRepDS_DataMapOfIntegerListOfInterference)

class TopOpeBRepDS_DataMapOfShapeListOfShapeOn1State(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    begin = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfShapeListOfShapeOn1State_begin)
    end = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfShapeListOfShapeOn1State_end)
    cbegin = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfShapeListOfShapeOn1State_cbegin)
    cend = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfShapeListOfShapeOn1State_cend)

    def __init__(self, *args):
        _TopOpeBRepDS.TopOpeBRepDS_DataMapOfShapeListOfShapeOn1State_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_DataMapOfShapeListOfShapeOn1State(*args))
    Exchange = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfShapeListOfShapeOn1State_Exchange)
    Assign = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfShapeListOfShapeOn1State_Assign)
    Set = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfShapeListOfShapeOn1State_Set)
    ReSize = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfShapeListOfShapeOn1State_ReSize)
    Bind = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfShapeListOfShapeOn1State_Bind)
    Bound = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfShapeListOfShapeOn1State_Bound)
    IsBound = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfShapeListOfShapeOn1State_IsBound)
    UnBind = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfShapeListOfShapeOn1State_UnBind)
    Seek = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfShapeListOfShapeOn1State_Seek)
    Find = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfShapeListOfShapeOn1State_Find)
    ChangeSeek = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfShapeListOfShapeOn1State_ChangeSeek)
    ChangeFind = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfShapeListOfShapeOn1State_ChangeFind)
    __call__ = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfShapeListOfShapeOn1State___call__)
    Clear = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfShapeListOfShapeOn1State_Clear)
    __swig_destroy__ = _TopOpeBRepDS.delete_TopOpeBRepDS_DataMapOfShapeListOfShapeOn1State
    Size = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfShapeListOfShapeOn1State_Size)

# Register TopOpeBRepDS_DataMapOfShapeListOfShapeOn1State in _TopOpeBRepDS:
_TopOpeBRepDS.TopOpeBRepDS_DataMapOfShapeListOfShapeOn1State_swigregister(TopOpeBRepDS_DataMapOfShapeListOfShapeOn1State)

class TopOpeBRepDS_DataMapOfCheckStatus(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    begin = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfCheckStatus_begin)
    end = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfCheckStatus_end)
    cbegin = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfCheckStatus_cbegin)
    cend = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfCheckStatus_cend)

    def __init__(self, *args):
        _TopOpeBRepDS.TopOpeBRepDS_DataMapOfCheckStatus_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_DataMapOfCheckStatus(*args))
    Exchange = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfCheckStatus_Exchange)
    Assign = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfCheckStatus_Assign)
    Set = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfCheckStatus_Set)
    ReSize = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfCheckStatus_ReSize)
    Bind = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfCheckStatus_Bind)
    Bound = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfCheckStatus_Bound)
    IsBound = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfCheckStatus_IsBound)
    UnBind = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfCheckStatus_UnBind)
    Seek = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfCheckStatus_Seek)
    Find = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfCheckStatus_Find)
    ChangeSeek = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfCheckStatus_ChangeSeek)
    ChangeFind = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfCheckStatus_ChangeFind)
    __call__ = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfCheckStatus___call__)
    Clear = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfCheckStatus_Clear)
    __swig_destroy__ = _TopOpeBRepDS.delete_TopOpeBRepDS_DataMapOfCheckStatus
    Size = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfCheckStatus_Size)
    Keys = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfCheckStatus_Keys)

# Register TopOpeBRepDS_DataMapOfCheckStatus in _TopOpeBRepDS:
_TopOpeBRepDS.TopOpeBRepDS_DataMapOfCheckStatus_swigregister(TopOpeBRepDS_DataMapOfCheckStatus)

class TopOpeBRepDS_DataMapOfShapeState(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    begin = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfShapeState_begin)
    end = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfShapeState_end)
    cbegin = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfShapeState_cbegin)
    cend = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfShapeState_cend)

    def __init__(self, *args):
        _TopOpeBRepDS.TopOpeBRepDS_DataMapOfShapeState_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_DataMapOfShapeState(*args))
    Exchange = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfShapeState_Exchange)
    Assign = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfShapeState_Assign)
    Set = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfShapeState_Set)
    ReSize = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfShapeState_ReSize)
    Bind = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfShapeState_Bind)
    Bound = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfShapeState_Bound)
    IsBound = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfShapeState_IsBound)
    UnBind = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfShapeState_UnBind)
    Seek = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfShapeState_Seek)
    Find = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfShapeState_Find)
    ChangeSeek = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfShapeState_ChangeSeek)
    ChangeFind = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfShapeState_ChangeFind)
    __call__ = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfShapeState___call__)
    Clear = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfShapeState_Clear)
    __swig_destroy__ = _TopOpeBRepDS.delete_TopOpeBRepDS_DataMapOfShapeState
    Size = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfShapeState_Size)

# Register TopOpeBRepDS_DataMapOfShapeState in _TopOpeBRepDS:
_TopOpeBRepDS.TopOpeBRepDS_DataMapOfShapeState_swigregister(TopOpeBRepDS_DataMapOfShapeState)

class TopOpeBRepDS_IndexedDataMapOfShapeWithState(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    begin = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfShapeWithState_begin)
    end = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfShapeWithState_end)
    cbegin = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfShapeWithState_cbegin)
    cend = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfShapeWithState_cend)

    def __init__(self, *args):
        _TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfShapeWithState_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_IndexedDataMapOfShapeWithState(*args))
    Exchange = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfShapeWithState_Exchange)
    Assign = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfShapeWithState_Assign)
    Set = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfShapeWithState_Set)
    ReSize = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfShapeWithState_ReSize)
    Add = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfShapeWithState_Add)
    Contains = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfShapeWithState_Contains)
    Substitute = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfShapeWithState_Substitute)
    Swap = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfShapeWithState_Swap)
    RemoveLast = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfShapeWithState_RemoveLast)
    RemoveFromIndex = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfShapeWithState_RemoveFromIndex)
    RemoveKey = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfShapeWithState_RemoveKey)
    FindKey = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfShapeWithState_FindKey)
    FindFromIndex = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfShapeWithState_FindFromIndex)
    ChangeFromIndex = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfShapeWithState_ChangeFromIndex)
    __call__ = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfShapeWithState___call__)
    FindIndex = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfShapeWithState_FindIndex)
    ChangeFromKey = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfShapeWithState_ChangeFromKey)
    Seek = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfShapeWithState_Seek)
    ChangeSeek = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfShapeWithState_ChangeSeek)
    FindFromKey = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfShapeWithState_FindFromKey)
    Clear = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfShapeWithState_Clear)
    __swig_destroy__ = _TopOpeBRepDS.delete_TopOpeBRepDS_IndexedDataMapOfShapeWithState
    Size = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfShapeWithState_Size)

# Register TopOpeBRepDS_IndexedDataMapOfShapeWithState in _TopOpeBRepDS:
_TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfShapeWithState_swigregister(TopOpeBRepDS_IndexedDataMapOfShapeWithState)

class TopOpeBRepDS_DataMapOfInterferenceListOfInterference(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    begin = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfInterferenceListOfInterference_begin)
    end = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfInterferenceListOfInterference_end)
    cbegin = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfInterferenceListOfInterference_cbegin)
    cend = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfInterferenceListOfInterference_cend)

    def __init__(self, *args):
        _TopOpeBRepDS.TopOpeBRepDS_DataMapOfInterferenceListOfInterference_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_DataMapOfInterferenceListOfInterference(*args))
    Exchange = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfInterferenceListOfInterference_Exchange)
    Assign = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfInterferenceListOfInterference_Assign)
    Set = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfInterferenceListOfInterference_Set)
    ReSize = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfInterferenceListOfInterference_ReSize)
    Bind = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfInterferenceListOfInterference_Bind)
    Bound = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfInterferenceListOfInterference_Bound)
    IsBound = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfInterferenceListOfInterference_IsBound)
    UnBind = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfInterferenceListOfInterference_UnBind)
    Seek = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfInterferenceListOfInterference_Seek)
    Find = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfInterferenceListOfInterference_Find)
    ChangeSeek = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfInterferenceListOfInterference_ChangeSeek)
    ChangeFind = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfInterferenceListOfInterference_ChangeFind)
    __call__ = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfInterferenceListOfInterference___call__)
    Clear = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfInterferenceListOfInterference_Clear)
    __swig_destroy__ = _TopOpeBRepDS.delete_TopOpeBRepDS_DataMapOfInterferenceListOfInterference
    Size = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfInterferenceListOfInterference_Size)

# Register TopOpeBRepDS_DataMapOfInterferenceListOfInterference in _TopOpeBRepDS:
_TopOpeBRepDS.TopOpeBRepDS_DataMapOfInterferenceListOfInterference_swigregister(TopOpeBRepDS_DataMapOfInterferenceListOfInterference)

class TopOpeBRepDS_ListOfInterference(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    begin = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_ListOfInterference_begin)
    end = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_ListOfInterference_end)
    cbegin = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_ListOfInterference_cbegin)
    cend = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_ListOfInterference_cend)

    def __init__(self, *args):
        _TopOpeBRepDS.TopOpeBRepDS_ListOfInterference_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_ListOfInterference(*args))
    Size = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_ListOfInterference_Size)
    Assign = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_ListOfInterference_Assign)
    Set = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_ListOfInterference_Set)
    Clear = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_ListOfInterference_Clear)
    First = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_ListOfInterference_First)
    Last = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_ListOfInterference_Last)
    Append = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_ListOfInterference_Append)
    Prepend = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_ListOfInterference_Prepend)
    RemoveFirst = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_ListOfInterference_RemoveFirst)
    Remove = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_ListOfInterference_Remove)
    InsertBefore = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_ListOfInterference_InsertBefore)
    InsertAfter = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_ListOfInterference_InsertAfter)
    Reverse = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_ListOfInterference_Reverse)
    __swig_destroy__ = _TopOpeBRepDS.delete_TopOpeBRepDS_ListOfInterference

# Register TopOpeBRepDS_ListOfInterference in _TopOpeBRepDS:
_TopOpeBRepDS.TopOpeBRepDS_ListOfInterference_swigregister(TopOpeBRepDS_ListOfInterference)

class TopOpeBRepDS_ListIteratorOfListOfInterference(object):
    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):
        _TopOpeBRepDS.TopOpeBRepDS_ListIteratorOfListOfInterference_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_ListIteratorOfListOfInterference(*args))
    More = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_ListIteratorOfListOfInterference_More)
    Next = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_ListIteratorOfListOfInterference_Next)
    Value = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_ListIteratorOfListOfInterference_Value)
    ChangeValue = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_ListIteratorOfListOfInterference_ChangeValue)
    __swig_destroy__ = _TopOpeBRepDS.delete_TopOpeBRepDS_ListIteratorOfListOfInterference

# Register TopOpeBRepDS_ListIteratorOfListOfInterference in _TopOpeBRepDS:
_TopOpeBRepDS.TopOpeBRepDS_ListIteratorOfListOfInterference_swigregister(TopOpeBRepDS_ListIteratorOfListOfInterference)

class TopOpeBRepDS_ShapeSurface(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    begin = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_ShapeSurface_begin)
    end = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_ShapeSurface_end)
    cbegin = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_ShapeSurface_cbegin)
    cend = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_ShapeSurface_cend)

    def __init__(self, *args):
        _TopOpeBRepDS.TopOpeBRepDS_ShapeSurface_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_ShapeSurface(*args))
    Exchange = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_ShapeSurface_Exchange)
    Assign = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_ShapeSurface_Assign)
    Set = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_ShapeSurface_Set)
    ReSize = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_ShapeSurface_ReSize)
    Bind = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_ShapeSurface_Bind)
    Bound = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_ShapeSurface_Bound)
    IsBound = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_ShapeSurface_IsBound)
    UnBind = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_ShapeSurface_UnBind)
    Seek = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_ShapeSurface_Seek)
    Find = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_ShapeSurface_Find)
    ChangeSeek = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_ShapeSurface_ChangeSeek)
    ChangeFind = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_ShapeSurface_ChangeFind)
    __call__ = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_ShapeSurface___call__)
    Clear = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_ShapeSurface_Clear)
    __swig_destroy__ = _TopOpeBRepDS.delete_TopOpeBRepDS_ShapeSurface
    Size = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_ShapeSurface_Size)

# Register TopOpeBRepDS_ShapeSurface in _TopOpeBRepDS:
_TopOpeBRepDS.TopOpeBRepDS_ShapeSurface_swigregister(TopOpeBRepDS_ShapeSurface)

class TopOpeBRepDS_DataMapOfInterferenceShape(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    begin = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfInterferenceShape_begin)
    end = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfInterferenceShape_end)
    cbegin = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfInterferenceShape_cbegin)
    cend = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfInterferenceShape_cend)

    def __init__(self, *args):
        _TopOpeBRepDS.TopOpeBRepDS_DataMapOfInterferenceShape_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_DataMapOfInterferenceShape(*args))
    Exchange = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfInterferenceShape_Exchange)
    Assign = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfInterferenceShape_Assign)
    Set = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfInterferenceShape_Set)
    ReSize = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfInterferenceShape_ReSize)
    Bind = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfInterferenceShape_Bind)
    Bound = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfInterferenceShape_Bound)
    IsBound = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfInterferenceShape_IsBound)
    UnBind = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfInterferenceShape_UnBind)
    Seek = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfInterferenceShape_Seek)
    Find = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfInterferenceShape_Find)
    ChangeSeek = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfInterferenceShape_ChangeSeek)
    ChangeFind = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfInterferenceShape_ChangeFind)
    __call__ = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfInterferenceShape___call__)
    Clear = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfInterferenceShape_Clear)
    __swig_destroy__ = _TopOpeBRepDS.delete_TopOpeBRepDS_DataMapOfInterferenceShape
    Size = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataMapOfInterferenceShape_Size)

# Register TopOpeBRepDS_DataMapOfInterferenceShape in _TopOpeBRepDS:
_TopOpeBRepDS.TopOpeBRepDS_DataMapOfInterferenceShape_swigregister(TopOpeBRepDS_DataMapOfInterferenceShape)

class TopOpeBRepDS_Array1OfDataMapOfIntegerListOfInterference(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    begin = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Array1OfDataMapOfIntegerListOfInterference_begin)
    end = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Array1OfDataMapOfIntegerListOfInterference_end)
    cbegin = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Array1OfDataMapOfIntegerListOfInterference_cbegin)
    cend = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Array1OfDataMapOfIntegerListOfInterference_cend)

    def __init__(self, *args):
        _TopOpeBRepDS.TopOpeBRepDS_Array1OfDataMapOfIntegerListOfInterference_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_Array1OfDataMapOfIntegerListOfInterference(*args))
    Init = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Array1OfDataMapOfIntegerListOfInterference_Init)
    Size = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Array1OfDataMapOfIntegerListOfInterference_Size)
    Length = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Array1OfDataMapOfIntegerListOfInterference_Length)
    IsEmpty = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Array1OfDataMapOfIntegerListOfInterference_IsEmpty)
    Lower = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Array1OfDataMapOfIntegerListOfInterference_Lower)
    Upper = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Array1OfDataMapOfIntegerListOfInterference_Upper)
    IsDeletable = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Array1OfDataMapOfIntegerListOfInterference_IsDeletable)
    IsAllocated = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Array1OfDataMapOfIntegerListOfInterference_IsAllocated)
    Assign = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Array1OfDataMapOfIntegerListOfInterference_Assign)
    Move = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Array1OfDataMapOfIntegerListOfInterference_Move)
    Set = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Array1OfDataMapOfIntegerListOfInterference_Set)
    First = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Array1OfDataMapOfIntegerListOfInterference_First)
    ChangeFirst = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Array1OfDataMapOfIntegerListOfInterference_ChangeFirst)
    Last = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Array1OfDataMapOfIntegerListOfInterference_Last)
    ChangeLast = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Array1OfDataMapOfIntegerListOfInterference_ChangeLast)
    Value = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Array1OfDataMapOfIntegerListOfInterference_Value)
    ChangeValue = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Array1OfDataMapOfIntegerListOfInterference_ChangeValue)
    __call__ = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Array1OfDataMapOfIntegerListOfInterference___call__)
    SetValue = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Array1OfDataMapOfIntegerListOfInterference_SetValue)
    Resize = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Array1OfDataMapOfIntegerListOfInterference_Resize)
    __swig_destroy__ = _TopOpeBRepDS.delete_TopOpeBRepDS_Array1OfDataMapOfIntegerListOfInterference

    def __getitem__(self, index):
        if index + self.Lower() > self.Upper():
            raise IndexError("index out of range")
        else:
            return self.Value(index + self.Lower())

    def __setitem__(self, index, value):
        if index + self.Lower() > self.Upper():
            raise IndexError("index out of range")
        else:
            self.SetValue(index + self.Lower(), value)

    def __len__(self):
        return self.Length()

    def __iter__(self):
        self.low = self.Lower()
        self.up = self.Upper()
        self.current = self.Lower() - 1
        return self

    def next(self):
        if self.current >= self.Upper():
            raise StopIteration
        else:
            self.current += 1
        return self.Value(self.current)

    __next__ = next


# Register TopOpeBRepDS_Array1OfDataMapOfIntegerListOfInterference in _TopOpeBRepDS:
_TopOpeBRepDS.TopOpeBRepDS_Array1OfDataMapOfIntegerListOfInterference_swigregister(TopOpeBRepDS_Array1OfDataMapOfIntegerListOfInterference)

class TopOpeBRepDS_MapOfIntegerShapeData(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    begin = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfIntegerShapeData_begin)
    end = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfIntegerShapeData_end)
    cbegin = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfIntegerShapeData_cbegin)
    cend = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfIntegerShapeData_cend)

    def __init__(self, *args):
        _TopOpeBRepDS.TopOpeBRepDS_MapOfIntegerShapeData_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_MapOfIntegerShapeData(*args))
    Exchange = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfIntegerShapeData_Exchange)
    Assign = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfIntegerShapeData_Assign)
    Set = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfIntegerShapeData_Set)
    ReSize = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfIntegerShapeData_ReSize)
    Bind = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfIntegerShapeData_Bind)
    Bound = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfIntegerShapeData_Bound)
    IsBound = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfIntegerShapeData_IsBound)
    UnBind = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfIntegerShapeData_UnBind)
    Seek = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfIntegerShapeData_Seek)
    Find = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfIntegerShapeData_Find)
    ChangeSeek = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfIntegerShapeData_ChangeSeek)
    ChangeFind = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfIntegerShapeData_ChangeFind)
    __call__ = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfIntegerShapeData___call__)
    Clear = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfIntegerShapeData_Clear)
    __swig_destroy__ = _TopOpeBRepDS.delete_TopOpeBRepDS_MapOfIntegerShapeData
    Size = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfIntegerShapeData_Size)
    Keys = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfIntegerShapeData_Keys)

# Register TopOpeBRepDS_MapOfIntegerShapeData in _TopOpeBRepDS:
_TopOpeBRepDS.TopOpeBRepDS_MapOfIntegerShapeData_swigregister(TopOpeBRepDS_MapOfIntegerShapeData)

class TopOpeBRepDS_MapOfPoint(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    begin = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfPoint_begin)
    end = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfPoint_end)
    cbegin = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfPoint_cbegin)
    cend = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfPoint_cend)

    def __init__(self, *args):
        _TopOpeBRepDS.TopOpeBRepDS_MapOfPoint_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_MapOfPoint(*args))
    Exchange = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfPoint_Exchange)
    Assign = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfPoint_Assign)
    Set = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfPoint_Set)
    ReSize = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfPoint_ReSize)
    Bind = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfPoint_Bind)
    Bound = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfPoint_Bound)
    IsBound = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfPoint_IsBound)
    UnBind = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfPoint_UnBind)
    Seek = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfPoint_Seek)
    Find = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfPoint_Find)
    ChangeSeek = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfPoint_ChangeSeek)
    ChangeFind = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfPoint_ChangeFind)
    __call__ = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfPoint___call__)
    Clear = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfPoint_Clear)
    __swig_destroy__ = _TopOpeBRepDS.delete_TopOpeBRepDS_MapOfPoint
    Size = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfPoint_Size)
    Keys = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfPoint_Keys)

# Register TopOpeBRepDS_MapOfPoint in _TopOpeBRepDS:
_TopOpeBRepDS.TopOpeBRepDS_MapOfPoint_swigregister(TopOpeBRepDS_MapOfPoint)

class TopOpeBRepDS_MapOfCurve(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    begin = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfCurve_begin)
    end = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfCurve_end)
    cbegin = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfCurve_cbegin)
    cend = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfCurve_cend)

    def __init__(self, *args):
        _TopOpeBRepDS.TopOpeBRepDS_MapOfCurve_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_MapOfCurve(*args))
    Exchange = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfCurve_Exchange)
    Assign = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfCurve_Assign)
    Set = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfCurve_Set)
    ReSize = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfCurve_ReSize)
    Bind = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfCurve_Bind)
    Bound = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfCurve_Bound)
    IsBound = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfCurve_IsBound)
    UnBind = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfCurve_UnBind)
    Seek = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfCurve_Seek)
    Find = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfCurve_Find)
    ChangeSeek = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfCurve_ChangeSeek)
    ChangeFind = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfCurve_ChangeFind)
    __call__ = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfCurve___call__)
    Clear = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfCurve_Clear)
    __swig_destroy__ = _TopOpeBRepDS.delete_TopOpeBRepDS_MapOfCurve
    Size = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfCurve_Size)
    Keys = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_MapOfCurve_Keys)

# Register TopOpeBRepDS_MapOfCurve in _TopOpeBRepDS:
_TopOpeBRepDS.TopOpeBRepDS_MapOfCurve_swigregister(TopOpeBRepDS_MapOfCurve)

class TopOpeBRepDS_DoubleMapOfIntegerShape(object):
    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):
        _TopOpeBRepDS.TopOpeBRepDS_DoubleMapOfIntegerShape_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_DoubleMapOfIntegerShape(*args))
    Exchange = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DoubleMapOfIntegerShape_Exchange)
    Assign = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DoubleMapOfIntegerShape_Assign)
    Set = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DoubleMapOfIntegerShape_Set)
    ReSize = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DoubleMapOfIntegerShape_ReSize)
    Bind = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DoubleMapOfIntegerShape_Bind)
    AreBound = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DoubleMapOfIntegerShape_AreBound)
    IsBound1 = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DoubleMapOfIntegerShape_IsBound1)
    IsBound2 = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DoubleMapOfIntegerShape_IsBound2)
    UnBind1 = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DoubleMapOfIntegerShape_UnBind1)
    UnBind2 = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DoubleMapOfIntegerShape_UnBind2)
    Find1 = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DoubleMapOfIntegerShape_Find1)
    Seek1 = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DoubleMapOfIntegerShape_Seek1)
    Find2 = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DoubleMapOfIntegerShape_Find2)
    Seek2 = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DoubleMapOfIntegerShape_Seek2)
    Clear = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DoubleMapOfIntegerShape_Clear)
    __swig_destroy__ = _TopOpeBRepDS.delete_TopOpeBRepDS_DoubleMapOfIntegerShape
    Size = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DoubleMapOfIntegerShape_Size)

# Register TopOpeBRepDS_DoubleMapOfIntegerShape in _TopOpeBRepDS:
_TopOpeBRepDS.TopOpeBRepDS_DoubleMapOfIntegerShape_swigregister(TopOpeBRepDS_DoubleMapOfIntegerShape)

class topopebrepds(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    IsGeometry = _swig_new_static_method(_TopOpeBRepDS.topopebrepds_IsGeometry)
    IsTopology = _swig_new_static_method(_TopOpeBRepDS.topopebrepds_IsTopology)
    KindToShape = _swig_new_static_method(_TopOpeBRepDS.topopebrepds_KindToShape)
    Print = _swig_new_static_method(_TopOpeBRepDS.topopebrepds_Print)
    SPrint = _swig_new_static_method(_TopOpeBRepDS.topopebrepds_SPrint)
    ShapeToKind = _swig_new_static_method(_TopOpeBRepDS.topopebrepds_ShapeToKind)

    __repr__ = _dumps_object


    def __init__(self):
        _TopOpeBRepDS.topopebrepds_swiginit(self, _TopOpeBRepDS.new_topopebrepds())
    __swig_destroy__ = _TopOpeBRepDS.delete_topopebrepds

# Register topopebrepds in _TopOpeBRepDS:
_TopOpeBRepDS.topopebrepds_swigregister(topopebrepds)
topopebrepds_IsGeometry = _TopOpeBRepDS.topopebrepds_IsGeometry
topopebrepds_IsTopology = _TopOpeBRepDS.topopebrepds_IsTopology
topopebrepds_KindToShape = _TopOpeBRepDS.topopebrepds_KindToShape
topopebrepds_Print = _TopOpeBRepDS.topopebrepds_Print
topopebrepds_SPrint = _TopOpeBRepDS.topopebrepds_SPrint
topopebrepds_ShapeToKind = _TopOpeBRepDS.topopebrepds_ShapeToKind

class TopOpeBRepDS_Association(OCC.Core.Standard.Standard_Transient):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    AreAssociated = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Association_AreAssociated)
    Associate = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Association_Associate)
    Associated = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Association_Associated)
    HasAssociation = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Association_HasAssociation)

    def __init__(self, *args):
        r""":rtype: None"""
        _TopOpeBRepDS.TopOpeBRepDS_Association_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_Association(*args))


    @staticmethod
    def DownCast(t):
      return Handle_TopOpeBRepDS_Association_DownCast(t)


    __repr__ = _dumps_object

    __swig_destroy__ = _TopOpeBRepDS.delete_TopOpeBRepDS_Association

# Register TopOpeBRepDS_Association in _TopOpeBRepDS:
_TopOpeBRepDS.TopOpeBRepDS_Association_swigregister(TopOpeBRepDS_Association)

class TopOpeBRepDS_BuildTool(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    AddEdgeVertex = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_BuildTool_AddEdgeVertex)
    AddFaceWire = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_BuildTool_AddFaceWire)
    AddShellFace = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_BuildTool_AddShellFace)
    AddSolidShell = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_BuildTool_AddSolidShell)
    AddWireEdge = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_BuildTool_AddWireEdge)
    ApproxCurves = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_BuildTool_ApproxCurves)
    Approximation = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_BuildTool_Approximation)
    ChangeGeomTool = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_BuildTool_ChangeGeomTool)
    Closed = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_BuildTool_Closed)
    ComputePCurves = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_BuildTool_ComputePCurves)
    CopyEdge = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_BuildTool_CopyEdge)
    CopyFace = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_BuildTool_CopyFace)
    Curve3D = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_BuildTool_Curve3D)
    GetGeomTool = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_BuildTool_GetGeomTool)
    GetOrientedEdgeVertices = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_BuildTool_GetOrientedEdgeVertices)
    MakeEdge = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_BuildTool_MakeEdge)
    MakeFace = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_BuildTool_MakeFace)
    MakeShell = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_BuildTool_MakeShell)
    MakeSolid = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_BuildTool_MakeSolid)
    MakeVertex = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_BuildTool_MakeVertex)
    MakeWire = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_BuildTool_MakeWire)
    Orientation = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_BuildTool_Orientation)
    OverWrite = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_BuildTool_OverWrite)
    PCurve = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_BuildTool_PCurve)
    Parameter = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_BuildTool_Parameter)
    PutPCurves = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_BuildTool_PutPCurves)
    Range = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_BuildTool_Range)
    RecomputeCurves = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_BuildTool_RecomputeCurves)

    def __init__(self, *args):
        r"""
        :rtype: None:param OutCurveType:
        	:type OutCurveType: TopOpeBRepTool_OutCurveType
        	:rtype: None:param GT:
        	:type GT: TopOpeBRepTool_GeomTool
        	:rtype: None
        """
        _TopOpeBRepDS.TopOpeBRepDS_BuildTool_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_BuildTool(*args))
    Translate = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_BuildTool_Translate)
    UpdateEdge = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_BuildTool_UpdateEdge)
    UpdateEdgeCurveTol = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_BuildTool_UpdateEdgeCurveTol)
    UpdateSurface = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_BuildTool_UpdateSurface)

    __repr__ = _dumps_object

    __swig_destroy__ = _TopOpeBRepDS.delete_TopOpeBRepDS_BuildTool

# Register TopOpeBRepDS_BuildTool in _TopOpeBRepDS:
_TopOpeBRepDS.TopOpeBRepDS_BuildTool_swigregister(TopOpeBRepDS_BuildTool)

class TopOpeBRepDS_Check(OCC.Core.Standard.Standard_Transient):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    ChangeHDS = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Check_ChangeHDS)
    CheckDS = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Check_CheckDS)
    CheckShapes = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Check_CheckShapes)
    ChkIntg = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Check_ChkIntg)
    ChkIntgInterf = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Check_ChkIntgInterf)
    ChkIntgSamDom = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Check_ChkIntgSamDom)
    HDS = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Check_HDS)
    OneVertexOnPnt = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Check_OneVertexOnPnt)
    Print = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Check_Print)
    PrintIntgToString = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Check_PrintIntgToString)
    PrintShape = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Check_PrintShape)

    def __init__(self, *args):
        r"""
        :rtype: None:param HDS:
        	:type HDS: TopOpeBRepDS_HDataStructure
        	:rtype: None
        """
        _TopOpeBRepDS.TopOpeBRepDS_Check_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_Check(*args))


    @staticmethod
    def DownCast(t):
      return Handle_TopOpeBRepDS_Check_DownCast(t)


    __repr__ = _dumps_object

    __swig_destroy__ = _TopOpeBRepDS.delete_TopOpeBRepDS_Check

# Register TopOpeBRepDS_Check in _TopOpeBRepDS:
_TopOpeBRepDS.TopOpeBRepDS_Check_swigregister(TopOpeBRepDS_Check)

class TopOpeBRepDS_Curve(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    ChangeCurve = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Curve_ChangeCurve)
    ChangeDSIndex = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Curve_ChangeDSIndex)
    ChangeIsWalk = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Curve_ChangeIsWalk)
    ChangeKeep = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Curve_ChangeKeep)
    ChangeMother = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Curve_ChangeMother)
    ChangeShape1 = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Curve_ChangeShape1)
    ChangeShape2 = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Curve_ChangeShape2)
    Curve = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Curve_Curve)
    Curve1 = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Curve_Curve1)
    Curve2 = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Curve_Curve2)
    DSIndex = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Curve_DSIndex)
    DefineCurve = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Curve_DefineCurve)
    GetSCI = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Curve_GetSCI)
    GetSCI1 = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Curve_GetSCI1)
    GetSCI2 = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Curve_GetSCI2)
    GetShapes = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Curve_GetShapes)
    IsWalk = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Curve_IsWalk)
    Keep = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Curve_Keep)
    Mother = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Curve_Mother)
    Range = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Curve_Range)
    SetRange = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Curve_SetRange)
    SetSCI = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Curve_SetSCI)
    SetShapes = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Curve_SetShapes)
    Shape1 = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Curve_Shape1)
    Shape2 = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Curve_Shape2)
    Tolerance = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Curve_Tolerance)

    def __init__(self, *args):
        r"""
        :rtype: None:param P:
        	:type P: Geom_Curve
        	:param T:
        	:type T: float
        	:param IsWalk: default value is Standard_False
        	:type IsWalk: bool
        	:rtype: None
        """
        _TopOpeBRepDS.TopOpeBRepDS_Curve_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_Curve(*args))

    __repr__ = _dumps_object

    __swig_destroy__ = _TopOpeBRepDS.delete_TopOpeBRepDS_Curve

# Register TopOpeBRepDS_Curve in _TopOpeBRepDS:
_TopOpeBRepDS.TopOpeBRepDS_Curve_swigregister(TopOpeBRepDS_Curve)

class TopOpeBRepDS_CurveExplorer(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    Curve = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_CurveExplorer_Curve)
    Index = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_CurveExplorer_Index)
    Init = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_CurveExplorer_Init)
    IsCurve = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_CurveExplorer_IsCurve)
    IsCurveKeep = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_CurveExplorer_IsCurveKeep)
    More = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_CurveExplorer_More)
    NbCurve = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_CurveExplorer_NbCurve)
    Next = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_CurveExplorer_Next)

    def __init__(self, *args):
        r"""
        :rtype: None:param DS:
        	:type DS: TopOpeBRepDS_DataStructure
        	:param FindOnlyKeep: default value is Standard_True
        	:type FindOnlyKeep: bool
        	:rtype: None
        """
        _TopOpeBRepDS.TopOpeBRepDS_CurveExplorer_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_CurveExplorer(*args))

    __repr__ = _dumps_object

    __swig_destroy__ = _TopOpeBRepDS.delete_TopOpeBRepDS_CurveExplorer

# Register TopOpeBRepDS_CurveExplorer in _TopOpeBRepDS:
_TopOpeBRepDS.TopOpeBRepDS_CurveExplorer_swigregister(TopOpeBRepDS_CurveExplorer)

class TopOpeBRepDS_DataStructure(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    AddCurve = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataStructure_AddCurve)
    AddPoint = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataStructure_AddPoint)
    AddPointSS = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataStructure_AddPointSS)
    AddSectionEdge = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataStructure_AddSectionEdge)
    AddShape = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataStructure_AddShape)
    AddShapeInterference = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataStructure_AddShapeInterference)
    AddShapeSameDomain = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataStructure_AddShapeSameDomain)
    AddSurface = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataStructure_AddSurface)
    AncestorRank = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataStructure_AncestorRank)
    ChangeCurve = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataStructure_ChangeCurve)
    ChangeCurveInterferences = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataStructure_ChangeCurveInterferences)
    ChangeKeepCurve = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataStructure_ChangeKeepCurve)
    ChangeKeepPoint = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataStructure_ChangeKeepPoint)
    ChangeKeepShape = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataStructure_ChangeKeepShape)
    ChangeKeepSurface = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataStructure_ChangeKeepSurface)
    ChangeMapOfRejectedShapesObj = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataStructure_ChangeMapOfRejectedShapesObj)
    ChangeMapOfRejectedShapesTool = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataStructure_ChangeMapOfRejectedShapesTool)
    ChangeMapOfShapeWithState = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataStructure_ChangeMapOfShapeWithState)
    ChangeMapOfShapeWithStateObj = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataStructure_ChangeMapOfShapeWithStateObj)
    ChangeMapOfShapeWithStateTool = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataStructure_ChangeMapOfShapeWithStateTool)
    ChangeNbCurves = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataStructure_ChangeNbCurves)
    ChangePoint = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataStructure_ChangePoint)
    ChangePointInterferences = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataStructure_ChangePointInterferences)
    ChangeShapeInterferences = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataStructure_ChangeShapeInterferences)
    ChangeShapeSameDomain = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataStructure_ChangeShapeSameDomain)
    ChangeShapes = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataStructure_ChangeShapes)
    ChangeSurface = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataStructure_ChangeSurface)
    ChangeSurfaceInterferences = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataStructure_ChangeSurfaceInterferences)
    Curve = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataStructure_Curve)
    CurveInterferences = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataStructure_CurveInterferences)
    FillShapesSameDomain = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataStructure_FillShapesSameDomain)
    GetShapeWithState = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataStructure_GetShapeWithState)
    HasGeometry = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataStructure_HasGeometry)
    HasNewSurface = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataStructure_HasNewSurface)
    HasShape = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataStructure_HasShape)
    Init = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataStructure_Init)
    InitSectionEdges = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataStructure_InitSectionEdges)
    IsSectionEdge = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataStructure_IsSectionEdge)
    Isfafa = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataStructure_Isfafa)
    KeepCurve = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataStructure_KeepCurve)
    KeepPoint = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataStructure_KeepPoint)
    KeepShape = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataStructure_KeepShape)
    KeepSurface = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataStructure_KeepSurface)
    NbCurves = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataStructure_NbCurves)
    NbPoints = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataStructure_NbPoints)
    NbSectionEdges = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataStructure_NbSectionEdges)
    NbShapes = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataStructure_NbShapes)
    NbSurfaces = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataStructure_NbSurfaces)
    NewSurface = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataStructure_NewSurface)
    Point = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataStructure_Point)
    PointInterferences = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataStructure_PointInterferences)
    RemoveCurve = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataStructure_RemoveCurve)
    RemovePoint = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataStructure_RemovePoint)
    RemoveShapeInterference = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataStructure_RemoveShapeInterference)
    RemoveShapeSameDomain = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataStructure_RemoveShapeSameDomain)
    RemoveSurface = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataStructure_RemoveSurface)
    SameDomainInd = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataStructure_SameDomainInd)
    SameDomainOri = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataStructure_SameDomainOri)
    SameDomainRef = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataStructure_SameDomainRef)
    SectionEdge = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataStructure_SectionEdge)
    SetNewSurface = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataStructure_SetNewSurface)
    Shape = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataStructure_Shape)
    ShapeInterferences = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataStructure_ShapeInterferences)
    ShapeSameDomain = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataStructure_ShapeSameDomain)
    Surface = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataStructure_Surface)
    SurfaceInterferences = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataStructure_SurfaceInterferences)

    def __init__(self, *args):
        r""":rtype: None"""
        _TopOpeBRepDS.TopOpeBRepDS_DataStructure_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_DataStructure(*args))
    UnfillShapesSameDomain = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_DataStructure_UnfillShapesSameDomain)

    __repr__ = _dumps_object

    __swig_destroy__ = _TopOpeBRepDS.delete_TopOpeBRepDS_DataStructure

# Register TopOpeBRepDS_DataStructure in _TopOpeBRepDS:
_TopOpeBRepDS.TopOpeBRepDS_DataStructure_swigregister(TopOpeBRepDS_DataStructure)

class TopOpeBRepDS_Dumper(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    SDumpRefOri = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Dumper_SDumpRefOri)
    SPrintShape = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Dumper_SPrintShape)
    SPrintShapeRefOri = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Dumper_SPrintShapeRefOri)

    def __init__(self, *args):
        r"""
        :param HDS:
        	:type HDS: TopOpeBRepDS_HDataStructure
        	:rtype: None
        """
        _TopOpeBRepDS.TopOpeBRepDS_Dumper_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_Dumper(*args))

    __repr__ = _dumps_object

    __swig_destroy__ = _TopOpeBRepDS.delete_TopOpeBRepDS_Dumper

# Register TopOpeBRepDS_Dumper in _TopOpeBRepDS:
_TopOpeBRepDS.TopOpeBRepDS_Dumper_swigregister(TopOpeBRepDS_Dumper)

class TopOpeBRepDS_EIR(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    ProcessEdgeInterferences = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_EIR_ProcessEdgeInterferences)

    def __init__(self, *args):
        r"""
        :param HDS:
        	:type HDS: TopOpeBRepDS_HDataStructure
        	:rtype: None
        """
        _TopOpeBRepDS.TopOpeBRepDS_EIR_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_EIR(*args))

    __repr__ = _dumps_object

    __swig_destroy__ = _TopOpeBRepDS.delete_TopOpeBRepDS_EIR

# Register TopOpeBRepDS_EIR in _TopOpeBRepDS:
_TopOpeBRepDS.TopOpeBRepDS_EIR_swigregister(TopOpeBRepDS_EIR)

class TopOpeBRepDS_Edge3dInterferenceTool(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    Add = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Edge3dInterferenceTool_Add)
    Init = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Edge3dInterferenceTool_Init)
    InitPointVertex = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Edge3dInterferenceTool_InitPointVertex)

    def __init__(self, *args):
        r""":rtype: None"""
        _TopOpeBRepDS.TopOpeBRepDS_Edge3dInterferenceTool_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_Edge3dInterferenceTool(*args))
    Transition = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Edge3dInterferenceTool_Transition)

    __repr__ = _dumps_object

    __swig_destroy__ = _TopOpeBRepDS.delete_TopOpeBRepDS_Edge3dInterferenceTool

# Register TopOpeBRepDS_Edge3dInterferenceTool in _TopOpeBRepDS:
_TopOpeBRepDS.TopOpeBRepDS_Edge3dInterferenceTool_swigregister(TopOpeBRepDS_Edge3dInterferenceTool)

class TopOpeBRepDS_EdgeInterferenceTool(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    Add = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_EdgeInterferenceTool_Add)
    Init = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_EdgeInterferenceTool_Init)

    def __init__(self, *args):
        r""":rtype: None"""
        _TopOpeBRepDS.TopOpeBRepDS_EdgeInterferenceTool_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_EdgeInterferenceTool(*args))
    Transition = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_EdgeInterferenceTool_Transition)

    __repr__ = _dumps_object

    __swig_destroy__ = _TopOpeBRepDS.delete_TopOpeBRepDS_EdgeInterferenceTool

# Register TopOpeBRepDS_EdgeInterferenceTool in _TopOpeBRepDS:
_TopOpeBRepDS.TopOpeBRepDS_EdgeInterferenceTool_swigregister(TopOpeBRepDS_EdgeInterferenceTool)

class TopOpeBRepDS_Explorer(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    Current = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Explorer_Current)
    Edge = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Explorer_Edge)
    Face = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Explorer_Face)
    Index = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Explorer_Index)
    Init = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Explorer_Init)
    More = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Explorer_More)
    Next = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Explorer_Next)

    def __init__(self, *args):
        r"""
        :rtype: None:param HDS:
        	:type HDS: TopOpeBRepDS_HDataStructure
        	:param T: default value is TopAbs_SHAPE
        	:type T: TopAbs_ShapeEnum
        	:param findkeep: default value is Standard_True
        	:type findkeep: bool
        	:rtype: None
        """
        _TopOpeBRepDS.TopOpeBRepDS_Explorer_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_Explorer(*args))
    Type = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Explorer_Type)
    Vertex = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Explorer_Vertex)

    __repr__ = _dumps_object

    __swig_destroy__ = _TopOpeBRepDS.delete_TopOpeBRepDS_Explorer

# Register TopOpeBRepDS_Explorer in _TopOpeBRepDS:
_TopOpeBRepDS.TopOpeBRepDS_Explorer_swigregister(TopOpeBRepDS_Explorer)

class TopOpeBRepDS_FIR(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    ProcessFaceInterferences = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_FIR_ProcessFaceInterferences)

    def __init__(self, *args):
        r"""
        :param HDS:
        	:type HDS: TopOpeBRepDS_HDataStructure
        	:rtype: None
        """
        _TopOpeBRepDS.TopOpeBRepDS_FIR_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_FIR(*args))

    __repr__ = _dumps_object

    __swig_destroy__ = _TopOpeBRepDS.delete_TopOpeBRepDS_FIR

# Register TopOpeBRepDS_FIR in _TopOpeBRepDS:
_TopOpeBRepDS.TopOpeBRepDS_FIR_swigregister(TopOpeBRepDS_FIR)

class TopOpeBRepDS_FaceInterferenceTool(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    Add = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_FaceInterferenceTool_Add)
    GetEdgePntPar = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_FaceInterferenceTool_GetEdgePntPar)
    Init = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_FaceInterferenceTool_Init)
    IsEdgePntParDef = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_FaceInterferenceTool_IsEdgePntParDef)
    SetEdgePntPar = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_FaceInterferenceTool_SetEdgePntPar)

    def __init__(self, *args):
        r"""
        :param P:
        	:type P: TopOpeBRepDS_PDataStructure
        	:rtype: None
        """
        _TopOpeBRepDS.TopOpeBRepDS_FaceInterferenceTool_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_FaceInterferenceTool(*args))
    Transition = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_FaceInterferenceTool_Transition)

    __repr__ = _dumps_object

    __swig_destroy__ = _TopOpeBRepDS.delete_TopOpeBRepDS_FaceInterferenceTool

# Register TopOpeBRepDS_FaceInterferenceTool in _TopOpeBRepDS:
_TopOpeBRepDS.TopOpeBRepDS_FaceInterferenceTool_swigregister(TopOpeBRepDS_FaceInterferenceTool)

class TopOpeBRepDS_Filter(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    ProcessCurveInterferences = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Filter_ProcessCurveInterferences)
    ProcessEdgeInterferences = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Filter_ProcessEdgeInterferences)
    ProcessFaceInterferences = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Filter_ProcessFaceInterferences)
    ProcessInterferences = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Filter_ProcessInterferences)

    def __init__(self, *args):
        r"""
        :param HDS:
        	:type HDS: TopOpeBRepDS_HDataStructure
        	:param pClassif: default value is 0
        	:type pClassif: TopOpeBRepTool_PShapeClassifier
        	:rtype: None
        """
        _TopOpeBRepDS.TopOpeBRepDS_Filter_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_Filter(*args))

    __repr__ = _dumps_object

    __swig_destroy__ = _TopOpeBRepDS.delete_TopOpeBRepDS_Filter

# Register TopOpeBRepDS_Filter in _TopOpeBRepDS:
_TopOpeBRepDS.TopOpeBRepDS_Filter_swigregister(TopOpeBRepDS_Filter)

class TopOpeBRepDS_GapFiller(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    AddPointsOnConnexShape = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_GapFiller_AddPointsOnConnexShape)
    AddPointsOnShape = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_GapFiller_AddPointsOnShape)
    BuildNewGeometries = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_GapFiller_BuildNewGeometries)
    CheckConnexity = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_GapFiller_CheckConnexity)
    FilterByEdge = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_GapFiller_FilterByEdge)
    FilterByFace = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_GapFiller_FilterByFace)
    FilterByIncidentDistance = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_GapFiller_FilterByIncidentDistance)
    FindAssociatedPoints = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_GapFiller_FindAssociatedPoints)
    IsOnEdge = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_GapFiller_IsOnEdge)
    IsOnFace = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_GapFiller_IsOnFace)
    Perform = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_GapFiller_Perform)
    ReBuildGeom = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_GapFiller_ReBuildGeom)

    def __init__(self, *args):
        r"""
        :param HDS:
        	:type HDS: TopOpeBRepDS_HDataStructure
        	:rtype: None
        """
        _TopOpeBRepDS.TopOpeBRepDS_GapFiller_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_GapFiller(*args))

    __repr__ = _dumps_object

    __swig_destroy__ = _TopOpeBRepDS.delete_TopOpeBRepDS_GapFiller

# Register TopOpeBRepDS_GapFiller in _TopOpeBRepDS:
_TopOpeBRepDS.TopOpeBRepDS_GapFiller_swigregister(TopOpeBRepDS_GapFiller)

class TopOpeBRepDS_GapTool(OCC.Core.Standard.Standard_Transient):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    ChangeSameInterferences = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_GapTool_ChangeSameInterferences)
    Curve = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_GapTool_Curve)
    EdgeSupport = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_GapTool_EdgeSupport)
    FacesSupport = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_GapTool_FacesSupport)
    Init = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_GapTool_Init)
    Interferences = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_GapTool_Interferences)
    ParameterOnEdge = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_GapTool_ParameterOnEdge)
    SameInterferences = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_GapTool_SameInterferences)
    SetParameterOnEdge = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_GapTool_SetParameterOnEdge)
    SetPoint = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_GapTool_SetPoint)

    def __init__(self, *args):
        r"""
        :rtype: None:param HDS:
        	:type HDS: TopOpeBRepDS_HDataStructure
        	:rtype: None
        """
        _TopOpeBRepDS.TopOpeBRepDS_GapTool_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_GapTool(*args))


    @staticmethod
    def DownCast(t):
      return Handle_TopOpeBRepDS_GapTool_DownCast(t)


    __repr__ = _dumps_object

    __swig_destroy__ = _TopOpeBRepDS.delete_TopOpeBRepDS_GapTool

# Register TopOpeBRepDS_GapTool in _TopOpeBRepDS:
_TopOpeBRepDS.TopOpeBRepDS_GapTool_swigregister(TopOpeBRepDS_GapTool)

class TopOpeBRepDS_GeometryData(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    AddInterference = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_GeometryData_AddInterference)
    Assign = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_GeometryData_Assign)
    ChangeInterferences = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_GeometryData_ChangeInterferences)
    Interferences = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_GeometryData_Interferences)

    def __init__(self, *args):
        r"""
        :rtype: None:param Other:
        	:type Other: TopOpeBRepDS_GeometryData
        	:rtype: None
        """
        _TopOpeBRepDS.TopOpeBRepDS_GeometryData_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_GeometryData(*args))
    Set = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_GeometryData_Set)

    __repr__ = _dumps_object

    __swig_destroy__ = _TopOpeBRepDS.delete_TopOpeBRepDS_GeometryData

# Register TopOpeBRepDS_GeometryData in _TopOpeBRepDS:
_TopOpeBRepDS.TopOpeBRepDS_GeometryData_swigregister(TopOpeBRepDS_GeometryData)

class TopOpeBRepDS_Interference(OCC.Core.Standard.Standard_Transient):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    ChangeTransition = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Interference_ChangeTransition)
    GKGSKS = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Interference_GKGSKS)
    Geometry = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Interference_Geometry)
    GeometryType = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Interference_GeometryType)
    HasSameGeometry = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Interference_HasSameGeometry)
    HasSameSupport = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Interference_HasSameSupport)
    SetGeometry = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Interference_SetGeometry)
    Support = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Interference_Support)
    SupportType = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Interference_SupportType)

    def __init__(self, *args):
        r"""
        :rtype: None:param Transition:
        	:type Transition: TopOpeBRepDS_Transition
        	:param SupportType:
        	:type SupportType: TopOpeBRepDS_Kind
        	:param Support:
        	:type Support: int
        	:param GeometryType:
        	:type GeometryType: TopOpeBRepDS_Kind
        	:param Geometry:
        	:type Geometry: int
        	:rtype: None:param I:
        	:type I: TopOpeBRepDS_Interference
        	:rtype: None
        """
        _TopOpeBRepDS.TopOpeBRepDS_Interference_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_Interference(*args))
    Transition = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Interference_Transition)


    @staticmethod
    def DownCast(t):
      return Handle_TopOpeBRepDS_Interference_DownCast(t)


    __repr__ = _dumps_object

    __swig_destroy__ = _TopOpeBRepDS.delete_TopOpeBRepDS_Interference

# Register TopOpeBRepDS_Interference in _TopOpeBRepDS:
_TopOpeBRepDS.TopOpeBRepDS_Interference_swigregister(TopOpeBRepDS_Interference)

class TopOpeBRepDS_InterferenceIterator(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    ChangeIterator = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_InterferenceIterator_ChangeIterator)
    Geometry = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_InterferenceIterator_Geometry)
    GeometryKind = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_InterferenceIterator_GeometryKind)
    Init = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_InterferenceIterator_Init)
    Match = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_InterferenceIterator_Match)
    MatchInterference = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_InterferenceIterator_MatchInterference)
    More = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_InterferenceIterator_More)
    Next = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_InterferenceIterator_Next)
    Support = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_InterferenceIterator_Support)
    SupportKind = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_InterferenceIterator_SupportKind)

    def __init__(self, *args):
        r"""
        :rtype: None* Creates an iterator on the Interference of list <L>.
        	:param L:
        	:type L: TopOpeBRepDS_ListOfInterference
        	:rtype: None
        """
        _TopOpeBRepDS.TopOpeBRepDS_InterferenceIterator_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_InterferenceIterator(*args))
    Value = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_InterferenceIterator_Value)

    __repr__ = _dumps_object

    __swig_destroy__ = _TopOpeBRepDS.delete_TopOpeBRepDS_InterferenceIterator

# Register TopOpeBRepDS_InterferenceIterator in _TopOpeBRepDS:
_TopOpeBRepDS.TopOpeBRepDS_InterferenceIterator_swigregister(TopOpeBRepDS_InterferenceIterator)

class TopOpeBRepDS_InterferenceTool(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    DuplicateCurvePointInterference = _swig_new_static_method(_TopOpeBRepDS.TopOpeBRepDS_InterferenceTool_DuplicateCurvePointInterference)
    MakeCurveInterference = _swig_new_static_method(_TopOpeBRepDS.TopOpeBRepDS_InterferenceTool_MakeCurveInterference)
    MakeEdgeInterference = _swig_new_static_method(_TopOpeBRepDS.TopOpeBRepDS_InterferenceTool_MakeEdgeInterference)
    MakeEdgeVertexInterference = _swig_new_static_method(_TopOpeBRepDS.TopOpeBRepDS_InterferenceTool_MakeEdgeVertexInterference)
    MakeFaceCurveInterference = _swig_new_static_method(_TopOpeBRepDS.TopOpeBRepDS_InterferenceTool_MakeFaceCurveInterference)
    MakeFaceEdgeInterference = _swig_new_static_method(_TopOpeBRepDS.TopOpeBRepDS_InterferenceTool_MakeFaceEdgeInterference)
    MakeSolidSurfaceInterference = _swig_new_static_method(_TopOpeBRepDS.TopOpeBRepDS_InterferenceTool_MakeSolidSurfaceInterference)
    Parameter = _swig_new_static_method(_TopOpeBRepDS.TopOpeBRepDS_InterferenceTool_Parameter)

    __repr__ = _dumps_object


    def __init__(self):
        _TopOpeBRepDS.TopOpeBRepDS_InterferenceTool_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_InterferenceTool())
    __swig_destroy__ = _TopOpeBRepDS.delete_TopOpeBRepDS_InterferenceTool

# Register TopOpeBRepDS_InterferenceTool in _TopOpeBRepDS:
_TopOpeBRepDS.TopOpeBRepDS_InterferenceTool_swigregister(TopOpeBRepDS_InterferenceTool)
TopOpeBRepDS_InterferenceTool_DuplicateCurvePointInterference = _TopOpeBRepDS.TopOpeBRepDS_InterferenceTool_DuplicateCurvePointInterference
TopOpeBRepDS_InterferenceTool_MakeCurveInterference = _TopOpeBRepDS.TopOpeBRepDS_InterferenceTool_MakeCurveInterference
TopOpeBRepDS_InterferenceTool_MakeEdgeInterference = _TopOpeBRepDS.TopOpeBRepDS_InterferenceTool_MakeEdgeInterference
TopOpeBRepDS_InterferenceTool_MakeEdgeVertexInterference = _TopOpeBRepDS.TopOpeBRepDS_InterferenceTool_MakeEdgeVertexInterference
TopOpeBRepDS_InterferenceTool_MakeFaceCurveInterference = _TopOpeBRepDS.TopOpeBRepDS_InterferenceTool_MakeFaceCurveInterference
TopOpeBRepDS_InterferenceTool_MakeFaceEdgeInterference = _TopOpeBRepDS.TopOpeBRepDS_InterferenceTool_MakeFaceEdgeInterference
TopOpeBRepDS_InterferenceTool_MakeSolidSurfaceInterference = _TopOpeBRepDS.TopOpeBRepDS_InterferenceTool_MakeSolidSurfaceInterference
TopOpeBRepDS_InterferenceTool_Parameter = _TopOpeBRepDS.TopOpeBRepDS_InterferenceTool_Parameter

class TopOpeBRepDS_ListOfShapeOn1State(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    ChangeListOnState = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_ListOfShapeOn1State_ChangeListOnState)
    Clear = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_ListOfShapeOn1State_Clear)
    IsSplit = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_ListOfShapeOn1State_IsSplit)
    ListOnState = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_ListOfShapeOn1State_ListOnState)
    Split = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_ListOfShapeOn1State_Split)

    def __init__(self, *args):
        r""":rtype: None"""
        _TopOpeBRepDS.TopOpeBRepDS_ListOfShapeOn1State_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_ListOfShapeOn1State(*args))

    __repr__ = _dumps_object

    __swig_destroy__ = _TopOpeBRepDS.delete_TopOpeBRepDS_ListOfShapeOn1State

# Register TopOpeBRepDS_ListOfShapeOn1State in _TopOpeBRepDS:
_TopOpeBRepDS.TopOpeBRepDS_ListOfShapeOn1State_swigregister(TopOpeBRepDS_ListOfShapeOn1State)

class TopOpeBRepDS_Marker(OCC.Core.Standard.Standard_Transient):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    Allocate = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Marker_Allocate)
    GetI = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Marker_GetI)
    Reset = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Marker_Reset)
    Set = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Marker_Set)

    def __init__(self, *args):
        r""":rtype: None"""
        _TopOpeBRepDS.TopOpeBRepDS_Marker_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_Marker(*args))


    @staticmethod
    def DownCast(t):
      return Handle_TopOpeBRepDS_Marker_DownCast(t)


    __repr__ = _dumps_object

    __swig_destroy__ = _TopOpeBRepDS.delete_TopOpeBRepDS_Marker

# Register TopOpeBRepDS_Marker in _TopOpeBRepDS:
_TopOpeBRepDS.TopOpeBRepDS_Marker_swigregister(TopOpeBRepDS_Marker)

class TopOpeBRepDS_Point(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    ChangeKeep = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Point_ChangeKeep)
    ChangePoint = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Point_ChangePoint)
    IsEqual = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Point_IsEqual)
    Keep = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Point_Keep)
    Point = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Point_Point)
    Tolerance = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Point_Tolerance)

    def __init__(self, *args):
        r"""
        :rtype: None:param P:
        	:type P: gp_Pnt
        	:param T:
        	:type T: float
        	:rtype: None:param S:
        	:type S: TopoDS_Shape
        	:rtype: None
        """
        _TopOpeBRepDS.TopOpeBRepDS_Point_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_Point(*args))

    __repr__ = _dumps_object

    __swig_destroy__ = _TopOpeBRepDS.delete_TopOpeBRepDS_Point

# Register TopOpeBRepDS_Point in _TopOpeBRepDS:
_TopOpeBRepDS.TopOpeBRepDS_Point_swigregister(TopOpeBRepDS_Point)

class TopOpeBRepDS_PointExplorer(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    Index = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_PointExplorer_Index)
    Init = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_PointExplorer_Init)
    IsPoint = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_PointExplorer_IsPoint)
    IsPointKeep = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_PointExplorer_IsPointKeep)
    More = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_PointExplorer_More)
    NbPoint = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_PointExplorer_NbPoint)
    Next = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_PointExplorer_Next)
    Point = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_PointExplorer_Point)

    def __init__(self, *args):
        r"""
        :rtype: None:param DS:
        	:type DS: TopOpeBRepDS_DataStructure
        	:param FindOnlyKeep: default value is Standard_True
        	:type FindOnlyKeep: bool
        	:rtype: None
        """
        _TopOpeBRepDS.TopOpeBRepDS_PointExplorer_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_PointExplorer(*args))

    __repr__ = _dumps_object

    __swig_destroy__ = _TopOpeBRepDS.delete_TopOpeBRepDS_PointExplorer

# Register TopOpeBRepDS_PointExplorer in _TopOpeBRepDS:
_TopOpeBRepDS.TopOpeBRepDS_PointExplorer_swigregister(TopOpeBRepDS_PointExplorer)

class TopOpeBRepDS_Reducer(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    ProcessEdgeInterferences = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Reducer_ProcessEdgeInterferences)
    ProcessFaceInterferences = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Reducer_ProcessFaceInterferences)

    def __init__(self, *args):
        r"""
        :param HDS:
        	:type HDS: TopOpeBRepDS_HDataStructure
        	:rtype: None
        """
        _TopOpeBRepDS.TopOpeBRepDS_Reducer_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_Reducer(*args))

    __repr__ = _dumps_object

    __swig_destroy__ = _TopOpeBRepDS.delete_TopOpeBRepDS_Reducer

# Register TopOpeBRepDS_Reducer in _TopOpeBRepDS:
_TopOpeBRepDS.TopOpeBRepDS_Reducer_swigregister(TopOpeBRepDS_Reducer)

class TopOpeBRepDS_ShapeData(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    ChangeInterferences = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_ShapeData_ChangeInterferences)
    ChangeKeep = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_ShapeData_ChangeKeep)
    Interferences = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_ShapeData_Interferences)
    Keep = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_ShapeData_Keep)

    def __init__(self, *args):
        r""":rtype: None"""
        _TopOpeBRepDS.TopOpeBRepDS_ShapeData_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_ShapeData(*args))

    __repr__ = _dumps_object

    __swig_destroy__ = _TopOpeBRepDS.delete_TopOpeBRepDS_ShapeData

# Register TopOpeBRepDS_ShapeData in _TopOpeBRepDS:
_TopOpeBRepDS.TopOpeBRepDS_ShapeData_swigregister(TopOpeBRepDS_ShapeData)

class TopOpeBRepDS_ShapeWithState(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    AddPart = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_ShapeWithState_AddPart)
    AddParts = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_ShapeWithState_AddParts)
    IsSplitted = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_ShapeWithState_IsSplitted)
    Part = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_ShapeWithState_Part)
    SetIsSplitted = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_ShapeWithState_SetIsSplitted)
    SetState = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_ShapeWithState_SetState)
    State = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_ShapeWithState_State)

    def __init__(self, *args):
        r""":rtype: None"""
        _TopOpeBRepDS.TopOpeBRepDS_ShapeWithState_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_ShapeWithState(*args))

    __repr__ = _dumps_object

    __swig_destroy__ = _TopOpeBRepDS.delete_TopOpeBRepDS_ShapeWithState

# Register TopOpeBRepDS_ShapeWithState in _TopOpeBRepDS:
_TopOpeBRepDS.TopOpeBRepDS_ShapeWithState_swigregister(TopOpeBRepDS_ShapeWithState)

class TopOpeBRepDS_Surface(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    Assign = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Surface_Assign)
    ChangeKeep = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Surface_ChangeKeep)
    Keep = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Surface_Keep)
    Surface = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Surface_Surface)
    Tolerance = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Surface_Tolerance)

    def __init__(self, *args):
        r"""
        :rtype: None:param P:
        	:type P: Geom_Surface
        	:param T:
        	:type T: float
        	:rtype: None:param Other:
        	:type Other: TopOpeBRepDS_Surface
        	:rtype: None
        """
        _TopOpeBRepDS.TopOpeBRepDS_Surface_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_Surface(*args))
    Set = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Surface_Set)

    __repr__ = _dumps_object

    __swig_destroy__ = _TopOpeBRepDS.delete_TopOpeBRepDS_Surface

# Register TopOpeBRepDS_Surface in _TopOpeBRepDS:
_TopOpeBRepDS.TopOpeBRepDS_Surface_swigregister(TopOpeBRepDS_Surface)

class TopOpeBRepDS_SurfaceExplorer(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    Index = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_SurfaceExplorer_Index)
    Init = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_SurfaceExplorer_Init)
    IsSurface = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_SurfaceExplorer_IsSurface)
    IsSurfaceKeep = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_SurfaceExplorer_IsSurfaceKeep)
    More = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_SurfaceExplorer_More)
    NbSurface = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_SurfaceExplorer_NbSurface)
    Next = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_SurfaceExplorer_Next)
    Surface = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_SurfaceExplorer_Surface)

    def __init__(self, *args):
        r"""
        :rtype: None:param DS:
        	:type DS: TopOpeBRepDS_DataStructure
        	:param FindOnlyKeep: default value is Standard_True
        	:type FindOnlyKeep: bool
        	:rtype: None
        """
        _TopOpeBRepDS.TopOpeBRepDS_SurfaceExplorer_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_SurfaceExplorer(*args))

    __repr__ = _dumps_object

    __swig_destroy__ = _TopOpeBRepDS.delete_TopOpeBRepDS_SurfaceExplorer

# Register TopOpeBRepDS_SurfaceExplorer in _TopOpeBRepDS:
_TopOpeBRepDS.TopOpeBRepDS_SurfaceExplorer_swigregister(TopOpeBRepDS_SurfaceExplorer)

class TopOpeBRepDS_TKI(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    Add = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_TKI_Add)
    ChangeInterferences = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_TKI_ChangeInterferences)
    ChangeValue = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_TKI_ChangeValue)
    Clear = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_TKI_Clear)
    DumpTKIIterator = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_TKI_DumpTKIIterator)
    FillOnGeometry = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_TKI_FillOnGeometry)
    FillOnSupport = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_TKI_FillOnSupport)
    HasInterferences = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_TKI_HasInterferences)
    Init = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_TKI_Init)
    Interferences = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_TKI_Interferences)
    IsBound = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_TKI_IsBound)
    More = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_TKI_More)
    Next = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_TKI_Next)

    def __init__(self, *args):
        r""":rtype: None"""
        _TopOpeBRepDS.TopOpeBRepDS_TKI_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_TKI(*args))
    Value = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_TKI_Value)

    __repr__ = _dumps_object

    __swig_destroy__ = _TopOpeBRepDS.delete_TopOpeBRepDS_TKI

# Register TopOpeBRepDS_TKI in _TopOpeBRepDS:
_TopOpeBRepDS.TopOpeBRepDS_TKI_swigregister(TopOpeBRepDS_TKI)

class TopOpeBRepDS_TOOL(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    EShareG = _swig_new_static_method(_TopOpeBRepDS.TopOpeBRepDS_TOOL_EShareG)
    GetConfig = _swig_new_static_method(_TopOpeBRepDS.TopOpeBRepDS_TOOL_GetConfig)
    GetEsd = _swig_new_static_method(_TopOpeBRepDS.TopOpeBRepDS_TOOL_GetEsd)
    ShareG = _swig_new_static_method(_TopOpeBRepDS.TopOpeBRepDS_TOOL_ShareG)
    ShareSplitON = _swig_new_static_method(_TopOpeBRepDS.TopOpeBRepDS_TOOL_ShareSplitON)

    __repr__ = _dumps_object


    def __init__(self):
        _TopOpeBRepDS.TopOpeBRepDS_TOOL_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_TOOL())
    __swig_destroy__ = _TopOpeBRepDS.delete_TopOpeBRepDS_TOOL

# Register TopOpeBRepDS_TOOL in _TopOpeBRepDS:
_TopOpeBRepDS.TopOpeBRepDS_TOOL_swigregister(TopOpeBRepDS_TOOL)
TopOpeBRepDS_TOOL_EShareG = _TopOpeBRepDS.TopOpeBRepDS_TOOL_EShareG
TopOpeBRepDS_TOOL_GetConfig = _TopOpeBRepDS.TopOpeBRepDS_TOOL_GetConfig
TopOpeBRepDS_TOOL_GetEsd = _TopOpeBRepDS.TopOpeBRepDS_TOOL_GetEsd
TopOpeBRepDS_TOOL_ShareG = _TopOpeBRepDS.TopOpeBRepDS_TOOL_ShareG
TopOpeBRepDS_TOOL_ShareSplitON = _TopOpeBRepDS.TopOpeBRepDS_TOOL_ShareSplitON

class TopOpeBRepDS_Transition(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    After = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Transition_After)
    Before = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Transition_Before)
    Complement = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Transition_Complement)
    Index = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Transition_Index)
    IndexAfter = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Transition_IndexAfter)
    IndexBefore = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Transition_IndexBefore)
    IsUnknown = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Transition_IsUnknown)
    ONAfter = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Transition_ONAfter)
    ONBefore = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Transition_ONBefore)
    Orientation = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Transition_Orientation)
    Set = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Transition_Set)
    ShapeAfter = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Transition_ShapeAfter)
    ShapeBefore = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Transition_ShapeBefore)
    StateAfter = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Transition_StateAfter)
    StateBefore = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_Transition_StateBefore)

    def __init__(self, *args):
        r"""
        :rtype: None:param StateBefore:
        	:type StateBefore: TopAbs_State
        	:param StateAfter:
        	:type StateAfter: TopAbs_State
        	:param ShapeBefore: default value is TopAbs_FACE
        	:type ShapeBefore: TopAbs_ShapeEnum
        	:param ShapeAfter: default value is TopAbs_FACE
        	:type ShapeAfter: TopAbs_ShapeEnum
        	:rtype: None:param O:
        	:type O: TopAbs_Orientation
        	:rtype: None
        """
        _TopOpeBRepDS.TopOpeBRepDS_Transition_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_Transition(*args))

    __repr__ = _dumps_object

    __swig_destroy__ = _TopOpeBRepDS.delete_TopOpeBRepDS_Transition

# Register TopOpeBRepDS_Transition in _TopOpeBRepDS:
_TopOpeBRepDS.TopOpeBRepDS_Transition_swigregister(TopOpeBRepDS_Transition)

class TopOpeBRepDS_CurveData(TopOpeBRepDS_GeometryData):
    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"""
        :rtype: None:param C:
        	:type C: TopOpeBRepDS_Curve
        	:rtype: None
        """
        _TopOpeBRepDS.TopOpeBRepDS_CurveData_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_CurveData(*args))

    __repr__ = _dumps_object

    __swig_destroy__ = _TopOpeBRepDS.delete_TopOpeBRepDS_CurveData

# Register TopOpeBRepDS_CurveData in _TopOpeBRepDS:
_TopOpeBRepDS.TopOpeBRepDS_CurveData_swigregister(TopOpeBRepDS_CurveData)

class TopOpeBRepDS_CurveIterator(TopOpeBRepDS_InterferenceIterator):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    Current = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_CurveIterator_Current)
    Orientation = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_CurveIterator_Orientation)
    PCurve = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_CurveIterator_PCurve)

    def __init__(self, *args):
        r"""
        * Creates an iterator on the curves on surface described by the interferences in <L>.
        	:param L:
        	:type L: TopOpeBRepDS_ListOfInterference
        	:rtype: None
        """
        _TopOpeBRepDS.TopOpeBRepDS_CurveIterator_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_CurveIterator(*args))

    __repr__ = _dumps_object

    __swig_destroy__ = _TopOpeBRepDS.delete_TopOpeBRepDS_CurveIterator

# Register TopOpeBRepDS_CurveIterator in _TopOpeBRepDS:
_TopOpeBRepDS.TopOpeBRepDS_CurveIterator_swigregister(TopOpeBRepDS_CurveIterator)

class TopOpeBRepDS_CurvePointInterference(TopOpeBRepDS_Interference):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    Parameter = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_CurvePointInterference_Parameter)

    def __init__(self, *args):
        r"""
        :param T:
        	:type T: TopOpeBRepDS_Transition
        	:param ST:
        	:type ST: TopOpeBRepDS_Kind
        	:param S:
        	:type S: int
        	:param GT:
        	:type GT: TopOpeBRepDS_Kind
        	:param G:
        	:type G: int
        	:param P:
        	:type P: float
        	:rtype: None
        """
        _TopOpeBRepDS.TopOpeBRepDS_CurvePointInterference_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_CurvePointInterference(*args))


    @staticmethod
    def DownCast(t):
      return Handle_TopOpeBRepDS_CurvePointInterference_DownCast(t)


    __repr__ = _dumps_object

    __swig_destroy__ = _TopOpeBRepDS.delete_TopOpeBRepDS_CurvePointInterference

# Register TopOpeBRepDS_CurvePointInterference in _TopOpeBRepDS:
_TopOpeBRepDS.TopOpeBRepDS_CurvePointInterference_swigregister(TopOpeBRepDS_CurvePointInterference)

class TopOpeBRepDS_PointData(TopOpeBRepDS_GeometryData):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    GetShapes = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_PointData_GetShapes)
    SetShapes = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_PointData_SetShapes)

    def __init__(self, *args):
        r"""
        :rtype: None:param P:
        	:type P: TopOpeBRepDS_Point
        	:rtype: None:param P:
        	:type P: TopOpeBRepDS_Point
        	:param I1:
        	:type I1: int
        	:param I2:
        	:type I2: int
        	:rtype: None
        """
        _TopOpeBRepDS.TopOpeBRepDS_PointData_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_PointData(*args))

    __repr__ = _dumps_object

    __swig_destroy__ = _TopOpeBRepDS.delete_TopOpeBRepDS_PointData

# Register TopOpeBRepDS_PointData in _TopOpeBRepDS:
_TopOpeBRepDS.TopOpeBRepDS_PointData_swigregister(TopOpeBRepDS_PointData)

class TopOpeBRepDS_PointIterator(TopOpeBRepDS_InterferenceIterator):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    Current = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_PointIterator_Current)
    DiffOriented = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_PointIterator_DiffOriented)
    IsPoint = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_PointIterator_IsPoint)
    IsVertex = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_PointIterator_IsVertex)
    Orientation = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_PointIterator_Orientation)
    Parameter = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_PointIterator_Parameter)
    SameOriented = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_PointIterator_SameOriented)
    Support = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_PointIterator_Support)

    def __init__(self, *args):
        r"""
        * Creates an iterator on the points on curves described by the interferences in <L>.
        	:param L:
        	:type L: TopOpeBRepDS_ListOfInterference
        	:rtype: None
        """
        _TopOpeBRepDS.TopOpeBRepDS_PointIterator_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_PointIterator(*args))

    __repr__ = _dumps_object

    __swig_destroy__ = _TopOpeBRepDS.delete_TopOpeBRepDS_PointIterator

# Register TopOpeBRepDS_PointIterator in _TopOpeBRepDS:
_TopOpeBRepDS.TopOpeBRepDS_PointIterator_swigregister(TopOpeBRepDS_PointIterator)

class TopOpeBRepDS_ShapeShapeInterference(TopOpeBRepDS_Interference):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    Config = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_ShapeShapeInterference_Config)
    GBound = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_ShapeShapeInterference_GBound)
    SetGBound = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_ShapeShapeInterference_SetGBound)

    def __init__(self, *args):
        r"""
        * a shape interfers on shape <G> with shape <S>. examples : create a ShapeShapeInterference describing : vertex V of edge E1 found on edge E2 : ST,S,GT,G = TopOpeBRepDS_EDGE,E2,TopOpeBRepDS_VERTEX,V //! create a ShapeShapeInterference describing vertex V of edge E found on face F : ST,S,GT,G = TopOpeBRepDS_FACE,F,TopOpeBRepDS_VERTEX,V //! <GBound> indicates if shape <G> is a bound of shape <S>. //! <SCC> : UNSH_GEOMETRY : <S> and <Ancestor> have any types, <S> and <Ancestor> don't share the same geometry SAME_ORIENTED : <S> and <Ancestor> have identical types, <S> and <Ancestor> orientations are IDENTICAL. DIFF_ORIENTED : <S> and <Ancestor> have identical types, <S> and <Ancestor> orientations are DIFFERENT.
        	:param T:
        	:type T: TopOpeBRepDS_Transition
        	:param ST:
        	:type ST: TopOpeBRepDS_Kind
        	:param S:
        	:type S: int
        	:param GT:
        	:type GT: TopOpeBRepDS_Kind
        	:param G:
        	:type G: int
        	:param GBound:
        	:type GBound: bool
        	:param C:
        	:type C: TopOpeBRepDS_Config
        	:rtype: None
        """
        _TopOpeBRepDS.TopOpeBRepDS_ShapeShapeInterference_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_ShapeShapeInterference(*args))


    @staticmethod
    def DownCast(t):
      return Handle_TopOpeBRepDS_ShapeShapeInterference_DownCast(t)


    __repr__ = _dumps_object

    __swig_destroy__ = _TopOpeBRepDS.delete_TopOpeBRepDS_ShapeShapeInterference

# Register TopOpeBRepDS_ShapeShapeInterference in _TopOpeBRepDS:
_TopOpeBRepDS.TopOpeBRepDS_ShapeShapeInterference_swigregister(TopOpeBRepDS_ShapeShapeInterference)

class TopOpeBRepDS_SolidSurfaceInterference(TopOpeBRepDS_Interference):
    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"""
        :param Transition:
        	:type Transition: TopOpeBRepDS_Transition
        	:param SupportType:
        	:type SupportType: TopOpeBRepDS_Kind
        	:param Support:
        	:type Support: int
        	:param GeometryType:
        	:type GeometryType: TopOpeBRepDS_Kind
        	:param Geometry:
        	:type Geometry: int
        	:rtype: None
        """
        _TopOpeBRepDS.TopOpeBRepDS_SolidSurfaceInterference_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_SolidSurfaceInterference(*args))


    @staticmethod
    def DownCast(t):
      return Handle_TopOpeBRepDS_SolidSurfaceInterference_DownCast(t)


    __repr__ = _dumps_object

    __swig_destroy__ = _TopOpeBRepDS.delete_TopOpeBRepDS_SolidSurfaceInterference

# Register TopOpeBRepDS_SolidSurfaceInterference in _TopOpeBRepDS:
_TopOpeBRepDS.TopOpeBRepDS_SolidSurfaceInterference_swigregister(TopOpeBRepDS_SolidSurfaceInterference)

class TopOpeBRepDS_SurfaceCurveInterference(TopOpeBRepDS_Interference):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    PCurve = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_SurfaceCurveInterference_PCurve)

    def __init__(self, *args):
        r"""
        :rtype: None:param Transition:
        	:type Transition: TopOpeBRepDS_Transition
        	:param SupportType:
        	:type SupportType: TopOpeBRepDS_Kind
        	:param Support:
        	:type Support: int
        	:param GeometryType:
        	:type GeometryType: TopOpeBRepDS_Kind
        	:param Geometry:
        	:type Geometry: int
        	:param PC:
        	:type PC: Geom2d_Curve
        	:rtype: None:param I:
        	:type I: TopOpeBRepDS_Interference
        	:rtype: None
        """
        _TopOpeBRepDS.TopOpeBRepDS_SurfaceCurveInterference_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_SurfaceCurveInterference(*args))


    @staticmethod
    def DownCast(t):
      return Handle_TopOpeBRepDS_SurfaceCurveInterference_DownCast(t)


    __repr__ = _dumps_object

    __swig_destroy__ = _TopOpeBRepDS.delete_TopOpeBRepDS_SurfaceCurveInterference

# Register TopOpeBRepDS_SurfaceCurveInterference in _TopOpeBRepDS:
_TopOpeBRepDS.TopOpeBRepDS_SurfaceCurveInterference_swigregister(TopOpeBRepDS_SurfaceCurveInterference)

class TopOpeBRepDS_SurfaceData(TopOpeBRepDS_GeometryData):
    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"""
        :rtype: None:param S:
        	:type S: TopOpeBRepDS_Surface
        	:rtype: None
        """
        _TopOpeBRepDS.TopOpeBRepDS_SurfaceData_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_SurfaceData(*args))

    __repr__ = _dumps_object

    __swig_destroy__ = _TopOpeBRepDS.delete_TopOpeBRepDS_SurfaceData

# Register TopOpeBRepDS_SurfaceData in _TopOpeBRepDS:
_TopOpeBRepDS.TopOpeBRepDS_SurfaceData_swigregister(TopOpeBRepDS_SurfaceData)

class TopOpeBRepDS_SurfaceIterator(TopOpeBRepDS_InterferenceIterator):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    Current = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_SurfaceIterator_Current)
    Orientation = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_SurfaceIterator_Orientation)

    def __init__(self, *args):
        r"""
        * Creates an iterator on the Surfaces on solid described by the interferences in <L>.
        	:param L:
        	:type L: TopOpeBRepDS_ListOfInterference
        	:rtype: None
        """
        _TopOpeBRepDS.TopOpeBRepDS_SurfaceIterator_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_SurfaceIterator(*args))

    __repr__ = _dumps_object

    __swig_destroy__ = _TopOpeBRepDS.delete_TopOpeBRepDS_SurfaceIterator

# Register TopOpeBRepDS_SurfaceIterator in _TopOpeBRepDS:
_TopOpeBRepDS.TopOpeBRepDS_SurfaceIterator_swigregister(TopOpeBRepDS_SurfaceIterator)

class TopOpeBRepDS_EdgeVertexInterference(TopOpeBRepDS_ShapeShapeInterference):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    Parameter = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_EdgeVertexInterference_Parameter)

    def __init__(self, *args):
        r"""
        * Create an interference of VERTEX <G> on a crossed EDGE E. //! if support type <ST> == EDGE : <S> is edge E FACE : <S> is the face with bound E. <T> is the transition along the edge, crossing the crossed edge. E is the crossed edge. <GIsBound> indicates if <G> is a bound of the edge. <P> is the parameter of <G> on the edge. //! interference is stored in the list of interfs of the edge.
        	:param T:
        	:type T: TopOpeBRepDS_Transition
        	:param ST:
        	:type ST: TopOpeBRepDS_Kind
        	:param S:
        	:type S: int
        	:param G:
        	:type G: int
        	:param GIsBound:
        	:type GIsBound: bool
        	:param C:
        	:type C: TopOpeBRepDS_Config
        	:param P:
        	:type P: float
        	:rtype: None* Create an interference of VERTEX <G> on crossed EDGE <S>. //! <T> is the transition along the edge, crossing the crossed edge. <S> is the crossed edge. <GIsBound> indicates if <G> is a bound of the edge. <C> indicates the geometric configuration between the edge and the crossed edge. <P> is the parameter of <G> on the edge. //! interference is stored in the list of interfs of the edge.
        	:param T:
        	:type T: TopOpeBRepDS_Transition
        	:param S:
        	:type S: int
        	:param G:
        	:type G: int
        	:param GIsBound:
        	:type GIsBound: bool
        	:param C:
        	:type C: TopOpeBRepDS_Config
        	:param P:
        	:type P: float
        	:rtype: None
        """
        _TopOpeBRepDS.TopOpeBRepDS_EdgeVertexInterference_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_EdgeVertexInterference(*args))


    @staticmethod
    def DownCast(t):
      return Handle_TopOpeBRepDS_EdgeVertexInterference_DownCast(t)


    __repr__ = _dumps_object

    __swig_destroy__ = _TopOpeBRepDS.delete_TopOpeBRepDS_EdgeVertexInterference

# Register TopOpeBRepDS_EdgeVertexInterference in _TopOpeBRepDS:
_TopOpeBRepDS.TopOpeBRepDS_EdgeVertexInterference_swigregister(TopOpeBRepDS_EdgeVertexInterference)

class TopOpeBRepDS_FaceEdgeInterference(TopOpeBRepDS_ShapeShapeInterference):
    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"""
        * Create an interference of EDGE <G> on FACE <S>.
        	:param T:
        	:type T: TopOpeBRepDS_Transition
        	:param S:
        	:type S: int
        	:param G:
        	:type G: int
        	:param GIsBound:
        	:type GIsBound: bool
        	:param C:
        	:type C: TopOpeBRepDS_Config
        	:rtype: None
        """
        _TopOpeBRepDS.TopOpeBRepDS_FaceEdgeInterference_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_FaceEdgeInterference(*args))


    @staticmethod
    def DownCast(t):
      return Handle_TopOpeBRepDS_FaceEdgeInterference_DownCast(t)


    __repr__ = _dumps_object

    __swig_destroy__ = _TopOpeBRepDS.delete_TopOpeBRepDS_FaceEdgeInterference

# Register TopOpeBRepDS_FaceEdgeInterference in _TopOpeBRepDS:
_TopOpeBRepDS.TopOpeBRepDS_FaceEdgeInterference_swigregister(TopOpeBRepDS_FaceEdgeInterference)

class TopOpeBRepDS_HArray1OfDataMapOfIntegerListOfInterference(TopOpeBRepDS_Array1OfDataMapOfIntegerListOfInterference, OCC.Core.Standard.Standard_Transient):
    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):
        _TopOpeBRepDS.TopOpeBRepDS_HArray1OfDataMapOfIntegerListOfInterference_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_HArray1OfDataMapOfIntegerListOfInterference(*args))
    Array1 = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_HArray1OfDataMapOfIntegerListOfInterference_Array1)
    ChangeArray1 = _swig_new_instance_method(_TopOpeBRepDS.TopOpeBRepDS_HArray1OfDataMapOfIntegerListOfInterference_ChangeArray1)


    @staticmethod
    def DownCast(t):
      return Handle_TopOpeBRepDS_HArray1OfDataMapOfIntegerListOfInterference_DownCast(t)

    __swig_destroy__ = _TopOpeBRepDS.delete_TopOpeBRepDS_HArray1OfDataMapOfIntegerListOfInterference

# Register TopOpeBRepDS_HArray1OfDataMapOfIntegerListOfInterference in _TopOpeBRepDS:
_TopOpeBRepDS.TopOpeBRepDS_HArray1OfDataMapOfIntegerListOfInterference_swigregister(TopOpeBRepDS_HArray1OfDataMapOfIntegerListOfInterference)



