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

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

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

    def value(self) -> "PyObject *":
        return _TopOpeBRepDS.SwigPyIterator_value(self)

    def incr(self, n: "size_t"=1) -> "swig::SwigPyIterator *":
        return _TopOpeBRepDS.SwigPyIterator_incr(self, n)

    def decr(self, n: "size_t"=1) -> "swig::SwigPyIterator *":
        return _TopOpeBRepDS.SwigPyIterator_decr(self, n)

    def distance(self, x: "SwigPyIterator") -> "ptrdiff_t":
        return _TopOpeBRepDS.SwigPyIterator_distance(self, x)

    def equal(self, x: "SwigPyIterator") -> "bool":
        return _TopOpeBRepDS.SwigPyIterator_equal(self, x)

    def copy(self) -> "swig::SwigPyIterator *":
        return _TopOpeBRepDS.SwigPyIterator_copy(self)

    def next(self) -> "PyObject *":
        return _TopOpeBRepDS.SwigPyIterator_next(self)

    def __next__(self) -> "PyObject *":
        return _TopOpeBRepDS.SwigPyIterator___next__(self)

    def previous(self) -> "PyObject *":
        return _TopOpeBRepDS.SwigPyIterator_previous(self)

    def advance(self, n: "ptrdiff_t") -> "swig::SwigPyIterator *":
        return _TopOpeBRepDS.SwigPyIterator_advance(self, n)

    def __eq__(self, x: "SwigPyIterator") -> "bool":
        return _TopOpeBRepDS.SwigPyIterator___eq__(self, x)

    def __ne__(self, x: "SwigPyIterator") -> "bool":
        return _TopOpeBRepDS.SwigPyIterator___ne__(self, x)

    def __iadd__(self, n: "ptrdiff_t") -> "swig::SwigPyIterator &":
        return _TopOpeBRepDS.SwigPyIterator___iadd__(self, n)

    def __isub__(self, n: "ptrdiff_t") -> "swig::SwigPyIterator &":
        return _TopOpeBRepDS.SwigPyIterator___isub__(self, n)

    def __add__(self, n: "ptrdiff_t") -> "swig::SwigPyIterator *":
        return _TopOpeBRepDS.SwigPyIterator___add__(self, n)

    def __sub__(self, *args) -> "ptrdiff_t":
        return _TopOpeBRepDS.SwigPyIterator___sub__(self, *args)
    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


def process_exception(error: "Standard_Failure", method_name: "std::string", class_name: "std::string") -> "void":
    return _TopOpeBRepDS.process_exception(error, method_name, class_name)

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.TColStd
import OCC.Core.TCollection
import OCC.Core.GeomAbs
import OCC.Core.TColgp
import OCC.Core.TopAbs
import OCC.Core.TopOpeBRepTool
import OCC.Core.BRepClass3d
import OCC.Core.TopoDS
import OCC.Core.Message
import OCC.Core.OSD
import OCC.Core.TopLoc
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.TopTools
import OCC.Core.IntCurvesFace
import OCC.Core.BRepAdaptor
import OCC.Core.GeomAdaptor
import OCC.Core.Geom2dAdaptor
import OCC.Core.TopExp
import OCC.Core.Extrema

from enum import IntEnum
from OCC.Core.Exception import *

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


class TopOpeBRepDS_Config(IntEnum):
	TopOpeBRepDS_UNSHGEOMETRY = 0
	TopOpeBRepDS_SAMEORIENTED = 1
	TopOpeBRepDS_DIFFORIENTED = 2
TopOpeBRepDS_UNSHGEOMETRY = TopOpeBRepDS_Config.TopOpeBRepDS_UNSHGEOMETRY
TopOpeBRepDS_SAMEORIENTED = TopOpeBRepDS_Config.TopOpeBRepDS_SAMEORIENTED
TopOpeBRepDS_DIFFORIENTED = TopOpeBRepDS_Config.TopOpeBRepDS_DIFFORIENTED

class TopOpeBRepDS_CheckStatus(IntEnum):
	TopOpeBRepDS_OK = 0
	TopOpeBRepDS_NOK = 1
TopOpeBRepDS_OK = TopOpeBRepDS_CheckStatus.TopOpeBRepDS_OK
TopOpeBRepDS_NOK = TopOpeBRepDS_CheckStatus.TopOpeBRepDS_NOK

class TopOpeBRepDS_Kind(IntEnum):
	TopOpeBRepDS_POINT = 0
	TopOpeBRepDS_CURVE = 1
	TopOpeBRepDS_SURFACE = 2
	TopOpeBRepDS_VERTEX = 3
	TopOpeBRepDS_EDGE = 4
	TopOpeBRepDS_WIRE = 5
	TopOpeBRepDS_FACE = 6
	TopOpeBRepDS_SHELL = 7
	TopOpeBRepDS_SOLID = 8
	TopOpeBRepDS_COMPSOLID = 9
	TopOpeBRepDS_COMPOUND = 10
	TopOpeBRepDS_UNKNOWN = 11
TopOpeBRepDS_POINT = TopOpeBRepDS_Kind.TopOpeBRepDS_POINT
TopOpeBRepDS_CURVE = TopOpeBRepDS_Kind.TopOpeBRepDS_CURVE
TopOpeBRepDS_SURFACE = TopOpeBRepDS_Kind.TopOpeBRepDS_SURFACE
TopOpeBRepDS_VERTEX = TopOpeBRepDS_Kind.TopOpeBRepDS_VERTEX
TopOpeBRepDS_EDGE = TopOpeBRepDS_Kind.TopOpeBRepDS_EDGE
TopOpeBRepDS_WIRE = TopOpeBRepDS_Kind.TopOpeBRepDS_WIRE
TopOpeBRepDS_FACE = TopOpeBRepDS_Kind.TopOpeBRepDS_FACE
TopOpeBRepDS_SHELL = TopOpeBRepDS_Kind.TopOpeBRepDS_SHELL
TopOpeBRepDS_SOLID = TopOpeBRepDS_Kind.TopOpeBRepDS_SOLID
TopOpeBRepDS_COMPSOLID = TopOpeBRepDS_Kind.TopOpeBRepDS_COMPSOLID
TopOpeBRepDS_COMPOUND = TopOpeBRepDS_Kind.TopOpeBRepDS_COMPOUND
TopOpeBRepDS_UNKNOWN = TopOpeBRepDS_Kind.TopOpeBRepDS_UNKNOWN


def Handle_TopOpeBRepDS_Association_Create() -> "opencascade::handle< TopOpeBRepDS_Association >":
    return _TopOpeBRepDS.Handle_TopOpeBRepDS_Association_Create()

def Handle_TopOpeBRepDS_Association_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< TopOpeBRepDS_Association >":
    return _TopOpeBRepDS.Handle_TopOpeBRepDS_Association_DownCast(t)

def Handle_TopOpeBRepDS_Association_IsNull(t: "opencascade::handle< TopOpeBRepDS_Association > const &") -> "bool":
    return _TopOpeBRepDS.Handle_TopOpeBRepDS_Association_IsNull(t)

def Handle_TopOpeBRepDS_Check_Create() -> "opencascade::handle< TopOpeBRepDS_Check >":
    return _TopOpeBRepDS.Handle_TopOpeBRepDS_Check_Create()

def Handle_TopOpeBRepDS_Check_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< TopOpeBRepDS_Check >":
    return _TopOpeBRepDS.Handle_TopOpeBRepDS_Check_DownCast(t)

def Handle_TopOpeBRepDS_Check_IsNull(t: "opencascade::handle< TopOpeBRepDS_Check > const &") -> "bool":
    return _TopOpeBRepDS.Handle_TopOpeBRepDS_Check_IsNull(t)

def Handle_TopOpeBRepDS_GapTool_Create() -> "opencascade::handle< TopOpeBRepDS_GapTool >":
    return _TopOpeBRepDS.Handle_TopOpeBRepDS_GapTool_Create()

def Handle_TopOpeBRepDS_GapTool_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< TopOpeBRepDS_GapTool >":
    return _TopOpeBRepDS.Handle_TopOpeBRepDS_GapTool_DownCast(t)

def Handle_TopOpeBRepDS_GapTool_IsNull(t: "opencascade::handle< TopOpeBRepDS_GapTool > const &") -> "bool":
    return _TopOpeBRepDS.Handle_TopOpeBRepDS_GapTool_IsNull(t)

def Handle_TopOpeBRepDS_Interference_Create() -> "opencascade::handle< TopOpeBRepDS_Interference >":
    return _TopOpeBRepDS.Handle_TopOpeBRepDS_Interference_Create()

def Handle_TopOpeBRepDS_Interference_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< TopOpeBRepDS_Interference >":
    return _TopOpeBRepDS.Handle_TopOpeBRepDS_Interference_DownCast(t)

def Handle_TopOpeBRepDS_Interference_IsNull(t: "opencascade::handle< TopOpeBRepDS_Interference > const &") -> "bool":
    return _TopOpeBRepDS.Handle_TopOpeBRepDS_Interference_IsNull(t)

def Handle_TopOpeBRepDS_Marker_Create() -> "opencascade::handle< TopOpeBRepDS_Marker >":
    return _TopOpeBRepDS.Handle_TopOpeBRepDS_Marker_Create()

def Handle_TopOpeBRepDS_Marker_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< TopOpeBRepDS_Marker >":
    return _TopOpeBRepDS.Handle_TopOpeBRepDS_Marker_DownCast(t)

def Handle_TopOpeBRepDS_Marker_IsNull(t: "opencascade::handle< TopOpeBRepDS_Marker > const &") -> "bool":
    return _TopOpeBRepDS.Handle_TopOpeBRepDS_Marker_IsNull(t)

def Handle_TopOpeBRepDS_CurvePointInterference_Create() -> "opencascade::handle< TopOpeBRepDS_CurvePointInterference >":
    return _TopOpeBRepDS.Handle_TopOpeBRepDS_CurvePointInterference_Create()

def Handle_TopOpeBRepDS_CurvePointInterference_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< TopOpeBRepDS_CurvePointInterference >":
    return _TopOpeBRepDS.Handle_TopOpeBRepDS_CurvePointInterference_DownCast(t)

def Handle_TopOpeBRepDS_CurvePointInterference_IsNull(t: "opencascade::handle< TopOpeBRepDS_CurvePointInterference > const &") -> "bool":
    return _TopOpeBRepDS.Handle_TopOpeBRepDS_CurvePointInterference_IsNull(t)

def Handle_TopOpeBRepDS_ShapeShapeInterference_Create() -> "opencascade::handle< TopOpeBRepDS_ShapeShapeInterference >":
    return _TopOpeBRepDS.Handle_TopOpeBRepDS_ShapeShapeInterference_Create()

def Handle_TopOpeBRepDS_ShapeShapeInterference_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< TopOpeBRepDS_ShapeShapeInterference >":
    return _TopOpeBRepDS.Handle_TopOpeBRepDS_ShapeShapeInterference_DownCast(t)

def Handle_TopOpeBRepDS_ShapeShapeInterference_IsNull(t: "opencascade::handle< TopOpeBRepDS_ShapeShapeInterference > const &") -> "bool":
    return _TopOpeBRepDS.Handle_TopOpeBRepDS_ShapeShapeInterference_IsNull(t)

def Handle_TopOpeBRepDS_SolidSurfaceInterference_Create() -> "opencascade::handle< TopOpeBRepDS_SolidSurfaceInterference >":
    return _TopOpeBRepDS.Handle_TopOpeBRepDS_SolidSurfaceInterference_Create()

def Handle_TopOpeBRepDS_SolidSurfaceInterference_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< TopOpeBRepDS_SolidSurfaceInterference >":
    return _TopOpeBRepDS.Handle_TopOpeBRepDS_SolidSurfaceInterference_DownCast(t)

def Handle_TopOpeBRepDS_SolidSurfaceInterference_IsNull(t: "opencascade::handle< TopOpeBRepDS_SolidSurfaceInterference > const &") -> "bool":
    return _TopOpeBRepDS.Handle_TopOpeBRepDS_SolidSurfaceInterference_IsNull(t)

def Handle_TopOpeBRepDS_SurfaceCurveInterference_Create() -> "opencascade::handle< TopOpeBRepDS_SurfaceCurveInterference >":
    return _TopOpeBRepDS.Handle_TopOpeBRepDS_SurfaceCurveInterference_Create()

def Handle_TopOpeBRepDS_SurfaceCurveInterference_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< TopOpeBRepDS_SurfaceCurveInterference >":
    return _TopOpeBRepDS.Handle_TopOpeBRepDS_SurfaceCurveInterference_DownCast(t)

def Handle_TopOpeBRepDS_SurfaceCurveInterference_IsNull(t: "opencascade::handle< TopOpeBRepDS_SurfaceCurveInterference > const &") -> "bool":
    return _TopOpeBRepDS.Handle_TopOpeBRepDS_SurfaceCurveInterference_IsNull(t)

def Handle_TopOpeBRepDS_EdgeVertexInterference_Create() -> "opencascade::handle< TopOpeBRepDS_EdgeVertexInterference >":
    return _TopOpeBRepDS.Handle_TopOpeBRepDS_EdgeVertexInterference_Create()

def Handle_TopOpeBRepDS_EdgeVertexInterference_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< TopOpeBRepDS_EdgeVertexInterference >":
    return _TopOpeBRepDS.Handle_TopOpeBRepDS_EdgeVertexInterference_DownCast(t)

def Handle_TopOpeBRepDS_EdgeVertexInterference_IsNull(t: "opencascade::handle< TopOpeBRepDS_EdgeVertexInterference > const &") -> "bool":
    return _TopOpeBRepDS.Handle_TopOpeBRepDS_EdgeVertexInterference_IsNull(t)

def Handle_TopOpeBRepDS_FaceEdgeInterference_Create() -> "opencascade::handle< TopOpeBRepDS_FaceEdgeInterference >":
    return _TopOpeBRepDS.Handle_TopOpeBRepDS_FaceEdgeInterference_Create()

def Handle_TopOpeBRepDS_FaceEdgeInterference_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< TopOpeBRepDS_FaceEdgeInterference >":
    return _TopOpeBRepDS.Handle_TopOpeBRepDS_FaceEdgeInterference_DownCast(t)

def Handle_TopOpeBRepDS_FaceEdgeInterference_IsNull(t: "opencascade::handle< TopOpeBRepDS_FaceEdgeInterference > const &") -> "bool":
    return _TopOpeBRepDS.Handle_TopOpeBRepDS_FaceEdgeInterference_IsNull(t)

def Handle_TopOpeBRepDS_HArray1OfDataMapOfIntegerListOfInterference_Create() -> "opencascade::handle< TopOpeBRepDS_HArray1OfDataMapOfIntegerListOfInterference >":
    return _TopOpeBRepDS.Handle_TopOpeBRepDS_HArray1OfDataMapOfIntegerListOfInterference_Create()

def Handle_TopOpeBRepDS_HArray1OfDataMapOfIntegerListOfInterference_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< TopOpeBRepDS_HArray1OfDataMapOfIntegerListOfInterference >":
    return _TopOpeBRepDS.Handle_TopOpeBRepDS_HArray1OfDataMapOfIntegerListOfInterference_DownCast(t)

def Handle_TopOpeBRepDS_HArray1OfDataMapOfIntegerListOfInterference_IsNull(t: "opencascade::handle< TopOpeBRepDS_HArray1OfDataMapOfIntegerListOfInterference > const &") -> "bool":
    return _TopOpeBRepDS.Handle_TopOpeBRepDS_HArray1OfDataMapOfIntegerListOfInterference_IsNull(t)
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

    def begin(self) -> "NCollection_Array1< TopOpeBRepDS_DataMapOfIntegerListOfInterference >::iterator":
        return _TopOpeBRepDS.TopOpeBRepDS_Array1OfDataMapOfIntegerListOfInterference_begin(self)

    def end(self) -> "NCollection_Array1< TopOpeBRepDS_DataMapOfIntegerListOfInterference >::iterator":
        return _TopOpeBRepDS.TopOpeBRepDS_Array1OfDataMapOfIntegerListOfInterference_end(self)

    def cbegin(self) -> "NCollection_Array1< TopOpeBRepDS_DataMapOfIntegerListOfInterference >::const_iterator":
        return _TopOpeBRepDS.TopOpeBRepDS_Array1OfDataMapOfIntegerListOfInterference_cbegin(self)

    def cend(self) -> "NCollection_Array1< TopOpeBRepDS_DataMapOfIntegerListOfInterference >::const_iterator":
        return _TopOpeBRepDS.TopOpeBRepDS_Array1OfDataMapOfIntegerListOfInterference_cend(self)

    def __init__(self, *args):
        _TopOpeBRepDS.TopOpeBRepDS_Array1OfDataMapOfIntegerListOfInterference_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_Array1OfDataMapOfIntegerListOfInterference(*args))

    def Init(self, theValue: "TopOpeBRepDS_DataMapOfIntegerListOfInterference const &") -> "void":
        return _TopOpeBRepDS.TopOpeBRepDS_Array1OfDataMapOfIntegerListOfInterference_Init(self, theValue)

    def Size(self) -> "Standard_Integer":
        return _TopOpeBRepDS.TopOpeBRepDS_Array1OfDataMapOfIntegerListOfInterference_Size(self)

    def Length(self) -> "Standard_Integer":
        return _TopOpeBRepDS.TopOpeBRepDS_Array1OfDataMapOfIntegerListOfInterference_Length(self)

    def IsEmpty(self) -> "Standard_Boolean":
        return _TopOpeBRepDS.TopOpeBRepDS_Array1OfDataMapOfIntegerListOfInterference_IsEmpty(self)

    def Lower(self) -> "Standard_Integer":
        return _TopOpeBRepDS.TopOpeBRepDS_Array1OfDataMapOfIntegerListOfInterference_Lower(self)

    def Upper(self) -> "Standard_Integer":
        return _TopOpeBRepDS.TopOpeBRepDS_Array1OfDataMapOfIntegerListOfInterference_Upper(self)

    def IsDeletable(self) -> "Standard_Boolean":
        return _TopOpeBRepDS.TopOpeBRepDS_Array1OfDataMapOfIntegerListOfInterference_IsDeletable(self)

    def IsAllocated(self) -> "Standard_Boolean":
        return _TopOpeBRepDS.TopOpeBRepDS_Array1OfDataMapOfIntegerListOfInterference_IsAllocated(self)

    def Assign(self, theOther: "TopOpeBRepDS_Array1OfDataMapOfIntegerListOfInterference") -> "NCollection_Array1< TopOpeBRepDS_DataMapOfIntegerListOfInterference > &":
        return _TopOpeBRepDS.TopOpeBRepDS_Array1OfDataMapOfIntegerListOfInterference_Assign(self, theOther)

    def Move(self, theOther: "TopOpeBRepDS_Array1OfDataMapOfIntegerListOfInterference") -> "NCollection_Array1< TopOpeBRepDS_DataMapOfIntegerListOfInterference > &":
        return _TopOpeBRepDS.TopOpeBRepDS_Array1OfDataMapOfIntegerListOfInterference_Move(self, theOther)

    def Set(self, *args) -> "NCollection_Array1< TopOpeBRepDS_DataMapOfIntegerListOfInterference > &":
        return _TopOpeBRepDS.TopOpeBRepDS_Array1OfDataMapOfIntegerListOfInterference_Set(self, *args)

    def First(self) -> "TopOpeBRepDS_DataMapOfIntegerListOfInterference const &":
        return _TopOpeBRepDS.TopOpeBRepDS_Array1OfDataMapOfIntegerListOfInterference_First(self)

    def ChangeFirst(self) -> "TopOpeBRepDS_DataMapOfIntegerListOfInterference &":
        return _TopOpeBRepDS.TopOpeBRepDS_Array1OfDataMapOfIntegerListOfInterference_ChangeFirst(self)

    def Last(self) -> "TopOpeBRepDS_DataMapOfIntegerListOfInterference const &":
        return _TopOpeBRepDS.TopOpeBRepDS_Array1OfDataMapOfIntegerListOfInterference_Last(self)

    def ChangeLast(self) -> "TopOpeBRepDS_DataMapOfIntegerListOfInterference &":
        return _TopOpeBRepDS.TopOpeBRepDS_Array1OfDataMapOfIntegerListOfInterference_ChangeLast(self)

    def Value(self, theIndex: "Standard_Integer const") -> "TopOpeBRepDS_DataMapOfIntegerListOfInterference const &":
        return _TopOpeBRepDS.TopOpeBRepDS_Array1OfDataMapOfIntegerListOfInterference_Value(self, theIndex)

    def ChangeValue(self, theIndex: "Standard_Integer const") -> "TopOpeBRepDS_DataMapOfIntegerListOfInterference &":
        return _TopOpeBRepDS.TopOpeBRepDS_Array1OfDataMapOfIntegerListOfInterference_ChangeValue(self, theIndex)

    def __call__(self, *args) -> "TopOpeBRepDS_DataMapOfIntegerListOfInterference &":
        return _TopOpeBRepDS.TopOpeBRepDS_Array1OfDataMapOfIntegerListOfInterference___call__(self, *args)

    def SetValue(self, theIndex: "Standard_Integer const", theItem: "TopOpeBRepDS_DataMapOfIntegerListOfInterference const &") -> "void":
        return _TopOpeBRepDS.TopOpeBRepDS_Array1OfDataMapOfIntegerListOfInterference_SetValue(self, theIndex, theItem)

    def Resize(self, theLower: "Standard_Integer const", theUpper: "Standard_Integer const", theToCopyData: "Standard_Boolean const") -> "void":
        return _TopOpeBRepDS.TopOpeBRepDS_Array1OfDataMapOfIntegerListOfInterference_Resize(self, theLower, theUpper, theToCopyData)
    __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_DataMapOfCheckStatus(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def begin(self) -> "NCollection_DataMap< int,enum TopOpeBRepDS_CheckStatus,NCollection_DefaultHasher< int > >::iterator":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfCheckStatus_begin(self)

    def end(self) -> "NCollection_DataMap< int,enum TopOpeBRepDS_CheckStatus,NCollection_DefaultHasher< int > >::iterator":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfCheckStatus_end(self)

    def cbegin(self) -> "NCollection_DataMap< int,enum TopOpeBRepDS_CheckStatus,NCollection_DefaultHasher< int > >::const_iterator":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfCheckStatus_cbegin(self)

    def cend(self) -> "NCollection_DataMap< int,enum TopOpeBRepDS_CheckStatus,NCollection_DefaultHasher< int > >::const_iterator":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfCheckStatus_cend(self)

    def __init__(self, *args):
        _TopOpeBRepDS.TopOpeBRepDS_DataMapOfCheckStatus_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_DataMapOfCheckStatus(*args))

    def Exchange(self, theOther: "TopOpeBRepDS_DataMapOfCheckStatus") -> "void":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfCheckStatus_Exchange(self, theOther)

    def Assign(self, theOther: "TopOpeBRepDS_DataMapOfCheckStatus") -> "NCollection_DataMap< Standard_Integer,TopOpeBRepDS_CheckStatus,TColStd_MapIntegerHasher > &":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfCheckStatus_Assign(self, theOther)

    def Set(self, theOther: "TopOpeBRepDS_DataMapOfCheckStatus") -> "NCollection_DataMap< Standard_Integer,TopOpeBRepDS_CheckStatus,TColStd_MapIntegerHasher > &":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfCheckStatus_Set(self, theOther)

    def ReSize(self, N: "Standard_Integer const") -> "void":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfCheckStatus_ReSize(self, N)

    def Bind(self, theKey: "int const &", theItem: "TopOpeBRepDS_CheckStatus const &") -> "Standard_Boolean":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfCheckStatus_Bind(self, theKey, theItem)

    def Bound(self, theKey: "int const &", theItem: "TopOpeBRepDS_CheckStatus const &") -> "TopOpeBRepDS_CheckStatus *":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfCheckStatus_Bound(self, theKey, theItem)

    def IsBound(self, theKey: "int const &") -> "Standard_Boolean":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfCheckStatus_IsBound(self, theKey)

    def UnBind(self, theKey: "int const &") -> "Standard_Boolean":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfCheckStatus_UnBind(self, theKey)

    def Seek(self, theKey: "int const &") -> "TopOpeBRepDS_CheckStatus const *":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfCheckStatus_Seek(self, theKey)

    def Find(self, *args) -> "Standard_Boolean":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfCheckStatus_Find(self, *args)

    def ChangeSeek(self, theKey: "int const &") -> "TopOpeBRepDS_CheckStatus *":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfCheckStatus_ChangeSeek(self, theKey)

    def ChangeFind(self, theKey: "int const &") -> "TopOpeBRepDS_CheckStatus &":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfCheckStatus_ChangeFind(self, theKey)

    def __call__(self, *args) -> "TopOpeBRepDS_CheckStatus &":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfCheckStatus___call__(self, *args)

    def Clear(self, *args) -> "void":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfCheckStatus_Clear(self, *args)
    __swig_destroy__ = _TopOpeBRepDS.delete_TopOpeBRepDS_DataMapOfCheckStatus

    def Size(self) -> "Standard_Integer":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfCheckStatus_Size(self)

    def Keys(self) -> "PyObject *":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfCheckStatus_Keys(self)

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

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

    def begin(self) -> "NCollection_DataMap< int,TopOpeBRepDS_ListOfInterference,NCollection_DefaultHasher< int > >::iterator":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfIntegerListOfInterference_begin(self)

    def end(self) -> "NCollection_DataMap< int,TopOpeBRepDS_ListOfInterference,NCollection_DefaultHasher< int > >::iterator":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfIntegerListOfInterference_end(self)

    def cbegin(self) -> "NCollection_DataMap< int,TopOpeBRepDS_ListOfInterference,NCollection_DefaultHasher< int > >::const_iterator":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfIntegerListOfInterference_cbegin(self)

    def cend(self) -> "NCollection_DataMap< int,TopOpeBRepDS_ListOfInterference,NCollection_DefaultHasher< int > >::const_iterator":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfIntegerListOfInterference_cend(self)

    def __init__(self, *args):
        _TopOpeBRepDS.TopOpeBRepDS_DataMapOfIntegerListOfInterference_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_DataMapOfIntegerListOfInterference(*args))

    def Exchange(self, theOther: "NCollection_DataMap< Standard_Integer,TopOpeBRepDS_ListOfInterference,TColStd_MapIntegerHasher > &") -> "void":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfIntegerListOfInterference_Exchange(self, theOther)

    def Assign(self, theOther: "NCollection_DataMap< Standard_Integer,TopOpeBRepDS_ListOfInterference,TColStd_MapIntegerHasher > const &") -> "NCollection_DataMap< Standard_Integer,TopOpeBRepDS_ListOfInterference,TColStd_MapIntegerHasher > &":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfIntegerListOfInterference_Assign(self, theOther)

    def Set(self, theOther: "NCollection_DataMap< Standard_Integer,TopOpeBRepDS_ListOfInterference,TColStd_MapIntegerHasher > const &") -> "NCollection_DataMap< Standard_Integer,TopOpeBRepDS_ListOfInterference,TColStd_MapIntegerHasher > &":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfIntegerListOfInterference_Set(self, theOther)

    def ReSize(self, N: "Standard_Integer const") -> "void":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfIntegerListOfInterference_ReSize(self, N)

    def Bind(self, theKey: "int const &", theItem: "TopOpeBRepDS_ListOfInterference") -> "Standard_Boolean":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfIntegerListOfInterference_Bind(self, theKey, theItem)

    def Bound(self, theKey: "int const &", theItem: "TopOpeBRepDS_ListOfInterference") -> "TopOpeBRepDS_ListOfInterference *":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfIntegerListOfInterference_Bound(self, theKey, theItem)

    def IsBound(self, theKey: "int const &") -> "Standard_Boolean":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfIntegerListOfInterference_IsBound(self, theKey)

    def UnBind(self, theKey: "int const &") -> "Standard_Boolean":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfIntegerListOfInterference_UnBind(self, theKey)

    def Seek(self, theKey: "int const &") -> "TopOpeBRepDS_ListOfInterference const *":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfIntegerListOfInterference_Seek(self, theKey)

    def Find(self, *args) -> "Standard_Boolean":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfIntegerListOfInterference_Find(self, *args)

    def ChangeSeek(self, theKey: "int const &") -> "TopOpeBRepDS_ListOfInterference *":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfIntegerListOfInterference_ChangeSeek(self, theKey)

    def ChangeFind(self, theKey: "int const &") -> "TopOpeBRepDS_ListOfInterference &":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfIntegerListOfInterference_ChangeFind(self, theKey)

    def __call__(self, *args) -> "TopOpeBRepDS_ListOfInterference &":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfIntegerListOfInterference___call__(self, *args)

    def Clear(self, *args) -> "void":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfIntegerListOfInterference_Clear(self, *args)
    __swig_destroy__ = _TopOpeBRepDS.delete_TopOpeBRepDS_DataMapOfIntegerListOfInterference

    def Size(self) -> "Standard_Integer":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfIntegerListOfInterference_Size(self)

    def Keys(self) -> "PyObject *":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfIntegerListOfInterference_Keys(self)

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

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

    def begin(self) -> "NCollection_DataMap< opencascade::handle< TopOpeBRepDS_Interference >,TopOpeBRepDS_ListOfInterference,NCollection_DefaultHasher< opencascade::handle< Standard_Transient > > >::iterator":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfInterferenceListOfInterference_begin(self)

    def end(self) -> "NCollection_DataMap< opencascade::handle< TopOpeBRepDS_Interference >,TopOpeBRepDS_ListOfInterference,NCollection_DefaultHasher< opencascade::handle< Standard_Transient > > >::iterator":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfInterferenceListOfInterference_end(self)

    def cbegin(self) -> "NCollection_DataMap< opencascade::handle< TopOpeBRepDS_Interference >,TopOpeBRepDS_ListOfInterference,NCollection_DefaultHasher< opencascade::handle< Standard_Transient > > >::const_iterator":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfInterferenceListOfInterference_cbegin(self)

    def cend(self) -> "NCollection_DataMap< opencascade::handle< TopOpeBRepDS_Interference >,TopOpeBRepDS_ListOfInterference,NCollection_DefaultHasher< opencascade::handle< Standard_Transient > > >::const_iterator":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfInterferenceListOfInterference_cend(self)

    def __init__(self, *args):
        _TopOpeBRepDS.TopOpeBRepDS_DataMapOfInterferenceListOfInterference_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_DataMapOfInterferenceListOfInterference(*args))

    def Exchange(self, theOther: "NCollection_DataMap< opencascade::handle< TopOpeBRepDS_Interference >,TopOpeBRepDS_ListOfInterference,TColStd_MapTransientHasher > &") -> "void":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfInterferenceListOfInterference_Exchange(self, theOther)

    def Assign(self, theOther: "NCollection_DataMap< opencascade::handle< TopOpeBRepDS_Interference >,TopOpeBRepDS_ListOfInterference,TColStd_MapTransientHasher > const &") -> "NCollection_DataMap< opencascade::handle< TopOpeBRepDS_Interference >,TopOpeBRepDS_ListOfInterference,TColStd_MapTransientHasher > &":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfInterferenceListOfInterference_Assign(self, theOther)

    def Set(self, theOther: "NCollection_DataMap< opencascade::handle< TopOpeBRepDS_Interference >,TopOpeBRepDS_ListOfInterference,TColStd_MapTransientHasher > const &") -> "NCollection_DataMap< opencascade::handle< TopOpeBRepDS_Interference >,TopOpeBRepDS_ListOfInterference,TColStd_MapTransientHasher > &":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfInterferenceListOfInterference_Set(self, theOther)

    def ReSize(self, N: "Standard_Integer const") -> "void":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfInterferenceListOfInterference_ReSize(self, N)

    def Bind(self, theKey: "opencascade::handle< TopOpeBRepDS_Interference > const &", theItem: "TopOpeBRepDS_ListOfInterference") -> "Standard_Boolean":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfInterferenceListOfInterference_Bind(self, theKey, theItem)

    def Bound(self, theKey: "opencascade::handle< TopOpeBRepDS_Interference > const &", theItem: "TopOpeBRepDS_ListOfInterference") -> "TopOpeBRepDS_ListOfInterference *":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfInterferenceListOfInterference_Bound(self, theKey, theItem)

    def IsBound(self, theKey: "opencascade::handle< TopOpeBRepDS_Interference > const &") -> "Standard_Boolean":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfInterferenceListOfInterference_IsBound(self, theKey)

    def UnBind(self, theKey: "opencascade::handle< TopOpeBRepDS_Interference > const &") -> "Standard_Boolean":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfInterferenceListOfInterference_UnBind(self, theKey)

    def Seek(self, theKey: "opencascade::handle< TopOpeBRepDS_Interference > const &") -> "TopOpeBRepDS_ListOfInterference const *":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfInterferenceListOfInterference_Seek(self, theKey)

    def Find(self, *args) -> "Standard_Boolean":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfInterferenceListOfInterference_Find(self, *args)

    def ChangeSeek(self, theKey: "opencascade::handle< TopOpeBRepDS_Interference > const &") -> "TopOpeBRepDS_ListOfInterference *":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfInterferenceListOfInterference_ChangeSeek(self, theKey)

    def ChangeFind(self, theKey: "opencascade::handle< TopOpeBRepDS_Interference > const &") -> "TopOpeBRepDS_ListOfInterference &":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfInterferenceListOfInterference_ChangeFind(self, theKey)

    def __call__(self, *args) -> "TopOpeBRepDS_ListOfInterference &":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfInterferenceListOfInterference___call__(self, *args)

    def Clear(self, *args) -> "void":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfInterferenceListOfInterference_Clear(self, *args)
    __swig_destroy__ = _TopOpeBRepDS.delete_TopOpeBRepDS_DataMapOfInterferenceListOfInterference

    def Size(self) -> "Standard_Integer":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfInterferenceListOfInterference_Size(self)

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

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

    def begin(self) -> "NCollection_DataMap< opencascade::handle< TopOpeBRepDS_Interference >,TopoDS_Shape,NCollection_DefaultHasher< opencascade::handle< Standard_Transient > > >::iterator":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfInterferenceShape_begin(self)

    def end(self) -> "NCollection_DataMap< opencascade::handle< TopOpeBRepDS_Interference >,TopoDS_Shape,NCollection_DefaultHasher< opencascade::handle< Standard_Transient > > >::iterator":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfInterferenceShape_end(self)

    def cbegin(self) -> "NCollection_DataMap< opencascade::handle< TopOpeBRepDS_Interference >,TopoDS_Shape,NCollection_DefaultHasher< opencascade::handle< Standard_Transient > > >::const_iterator":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfInterferenceShape_cbegin(self)

    def cend(self) -> "NCollection_DataMap< opencascade::handle< TopOpeBRepDS_Interference >,TopoDS_Shape,NCollection_DefaultHasher< opencascade::handle< Standard_Transient > > >::const_iterator":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfInterferenceShape_cend(self)

    def __init__(self, *args):
        _TopOpeBRepDS.TopOpeBRepDS_DataMapOfInterferenceShape_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_DataMapOfInterferenceShape(*args))

    def Exchange(self, theOther: "TopOpeBRepDS_DataMapOfInterferenceShape") -> "void":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfInterferenceShape_Exchange(self, theOther)

    def Assign(self, theOther: "TopOpeBRepDS_DataMapOfInterferenceShape") -> "NCollection_DataMap< opencascade::handle< TopOpeBRepDS_Interference >,TopoDS_Shape,TColStd_MapTransientHasher > &":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfInterferenceShape_Assign(self, theOther)

    def Set(self, theOther: "TopOpeBRepDS_DataMapOfInterferenceShape") -> "NCollection_DataMap< opencascade::handle< TopOpeBRepDS_Interference >,TopoDS_Shape,TColStd_MapTransientHasher > &":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfInterferenceShape_Set(self, theOther)

    def ReSize(self, N: "Standard_Integer const") -> "void":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfInterferenceShape_ReSize(self, N)

    def Bind(self, theKey: "opencascade::handle< TopOpeBRepDS_Interference > const &", theItem: "TopoDS_Shape") -> "Standard_Boolean":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfInterferenceShape_Bind(self, theKey, theItem)

    def Bound(self, theKey: "opencascade::handle< TopOpeBRepDS_Interference > const &", theItem: "TopoDS_Shape") -> "TopoDS_Shape *":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfInterferenceShape_Bound(self, theKey, theItem)

    def IsBound(self, theKey: "opencascade::handle< TopOpeBRepDS_Interference > const &") -> "Standard_Boolean":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfInterferenceShape_IsBound(self, theKey)

    def UnBind(self, theKey: "opencascade::handle< TopOpeBRepDS_Interference > const &") -> "Standard_Boolean":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfInterferenceShape_UnBind(self, theKey)

    def Seek(self, theKey: "opencascade::handle< TopOpeBRepDS_Interference > const &") -> "TopoDS_Shape const *":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfInterferenceShape_Seek(self, theKey)

    def Find(self, *args) -> "Standard_Boolean":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfInterferenceShape_Find(self, *args)

    def ChangeSeek(self, theKey: "opencascade::handle< TopOpeBRepDS_Interference > const &") -> "TopoDS_Shape *":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfInterferenceShape_ChangeSeek(self, theKey)

    def ChangeFind(self, theKey: "opencascade::handle< TopOpeBRepDS_Interference > const &") -> "TopoDS_Shape &":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfInterferenceShape_ChangeFind(self, theKey)

    def __call__(self, *args) -> "TopoDS_Shape &":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfInterferenceShape___call__(self, *args)

    def Clear(self, *args) -> "void":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfInterferenceShape_Clear(self, *args)
    __swig_destroy__ = _TopOpeBRepDS.delete_TopOpeBRepDS_DataMapOfInterferenceShape

    def Size(self) -> "Standard_Integer":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfInterferenceShape_Size(self)

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

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

    def begin(self) -> "NCollection_DataMap< TopoDS_Shape,TopOpeBRepDS_ListOfShapeOn1State,TopTools_ShapeMapHasher >::iterator":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfShapeListOfShapeOn1State_begin(self)

    def end(self) -> "NCollection_DataMap< TopoDS_Shape,TopOpeBRepDS_ListOfShapeOn1State,TopTools_ShapeMapHasher >::iterator":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfShapeListOfShapeOn1State_end(self)

    def cbegin(self) -> "NCollection_DataMap< TopoDS_Shape,TopOpeBRepDS_ListOfShapeOn1State,TopTools_ShapeMapHasher >::const_iterator":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfShapeListOfShapeOn1State_cbegin(self)

    def cend(self) -> "NCollection_DataMap< TopoDS_Shape,TopOpeBRepDS_ListOfShapeOn1State,TopTools_ShapeMapHasher >::const_iterator":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfShapeListOfShapeOn1State_cend(self)

    def __init__(self, *args):
        _TopOpeBRepDS.TopOpeBRepDS_DataMapOfShapeListOfShapeOn1State_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_DataMapOfShapeListOfShapeOn1State(*args))

    def Exchange(self, theOther: "TopOpeBRepDS_DataMapOfShapeListOfShapeOn1State") -> "void":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfShapeListOfShapeOn1State_Exchange(self, theOther)

    def Assign(self, theOther: "TopOpeBRepDS_DataMapOfShapeListOfShapeOn1State") -> "NCollection_DataMap< TopoDS_Shape,TopOpeBRepDS_ListOfShapeOn1State,TopTools_ShapeMapHasher > &":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfShapeListOfShapeOn1State_Assign(self, theOther)

    def Set(self, theOther: "TopOpeBRepDS_DataMapOfShapeListOfShapeOn1State") -> "NCollection_DataMap< TopoDS_Shape,TopOpeBRepDS_ListOfShapeOn1State,TopTools_ShapeMapHasher > &":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfShapeListOfShapeOn1State_Set(self, theOther)

    def ReSize(self, N: "Standard_Integer const") -> "void":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfShapeListOfShapeOn1State_ReSize(self, N)

    def Bind(self, theKey: "TopoDS_Shape", theItem: "TopOpeBRepDS_ListOfShapeOn1State") -> "Standard_Boolean":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfShapeListOfShapeOn1State_Bind(self, theKey, theItem)

    def Bound(self, theKey: "TopoDS_Shape", theItem: "TopOpeBRepDS_ListOfShapeOn1State") -> "TopOpeBRepDS_ListOfShapeOn1State *":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfShapeListOfShapeOn1State_Bound(self, theKey, theItem)

    def IsBound(self, theKey: "TopoDS_Shape") -> "Standard_Boolean":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfShapeListOfShapeOn1State_IsBound(self, theKey)

    def UnBind(self, theKey: "TopoDS_Shape") -> "Standard_Boolean":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfShapeListOfShapeOn1State_UnBind(self, theKey)

    def Seek(self, theKey: "TopoDS_Shape") -> "TopOpeBRepDS_ListOfShapeOn1State const *":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfShapeListOfShapeOn1State_Seek(self, theKey)

    def Find(self, *args) -> "Standard_Boolean":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfShapeListOfShapeOn1State_Find(self, *args)

    def ChangeSeek(self, theKey: "TopoDS_Shape") -> "TopOpeBRepDS_ListOfShapeOn1State *":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfShapeListOfShapeOn1State_ChangeSeek(self, theKey)

    def ChangeFind(self, theKey: "TopoDS_Shape") -> "TopOpeBRepDS_ListOfShapeOn1State &":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfShapeListOfShapeOn1State_ChangeFind(self, theKey)

    def __call__(self, *args) -> "TopOpeBRepDS_ListOfShapeOn1State &":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfShapeListOfShapeOn1State___call__(self, *args)

    def Clear(self, *args) -> "void":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfShapeListOfShapeOn1State_Clear(self, *args)
    __swig_destroy__ = _TopOpeBRepDS.delete_TopOpeBRepDS_DataMapOfShapeListOfShapeOn1State

    def Size(self) -> "Standard_Integer":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfShapeListOfShapeOn1State_Size(self)

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

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

    def begin(self) -> "NCollection_DataMap< TopoDS_Shape,enum TopAbs_State,TopTools_ShapeMapHasher >::iterator":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfShapeState_begin(self)

    def end(self) -> "NCollection_DataMap< TopoDS_Shape,enum TopAbs_State,TopTools_ShapeMapHasher >::iterator":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfShapeState_end(self)

    def cbegin(self) -> "NCollection_DataMap< TopoDS_Shape,enum TopAbs_State,TopTools_ShapeMapHasher >::const_iterator":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfShapeState_cbegin(self)

    def cend(self) -> "NCollection_DataMap< TopoDS_Shape,enum TopAbs_State,TopTools_ShapeMapHasher >::const_iterator":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfShapeState_cend(self)

    def __init__(self, *args):
        _TopOpeBRepDS.TopOpeBRepDS_DataMapOfShapeState_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_DataMapOfShapeState(*args))

    def Exchange(self, theOther: "TopOpeBRepDS_DataMapOfShapeState") -> "void":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfShapeState_Exchange(self, theOther)

    def Assign(self, theOther: "TopOpeBRepDS_DataMapOfShapeState") -> "NCollection_DataMap< TopoDS_Shape,TopAbs_State,TopTools_ShapeMapHasher > &":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfShapeState_Assign(self, theOther)

    def Set(self, theOther: "TopOpeBRepDS_DataMapOfShapeState") -> "NCollection_DataMap< TopoDS_Shape,TopAbs_State,TopTools_ShapeMapHasher > &":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfShapeState_Set(self, theOther)

    def ReSize(self, N: "Standard_Integer const") -> "void":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfShapeState_ReSize(self, N)

    def Bind(self, theKey: "TopoDS_Shape", theItem: "TopAbs_State const &") -> "Standard_Boolean":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfShapeState_Bind(self, theKey, theItem)

    def Bound(self, theKey: "TopoDS_Shape", theItem: "TopAbs_State const &") -> "TopAbs_State *":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfShapeState_Bound(self, theKey, theItem)

    def IsBound(self, theKey: "TopoDS_Shape") -> "Standard_Boolean":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfShapeState_IsBound(self, theKey)

    def UnBind(self, theKey: "TopoDS_Shape") -> "Standard_Boolean":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfShapeState_UnBind(self, theKey)

    def Seek(self, theKey: "TopoDS_Shape") -> "TopAbs_State const *":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfShapeState_Seek(self, theKey)

    def Find(self, *args) -> "Standard_Boolean":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfShapeState_Find(self, *args)

    def ChangeSeek(self, theKey: "TopoDS_Shape") -> "TopAbs_State *":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfShapeState_ChangeSeek(self, theKey)

    def ChangeFind(self, theKey: "TopoDS_Shape") -> "TopAbs_State &":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfShapeState_ChangeFind(self, theKey)

    def __call__(self, *args) -> "TopAbs_State &":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfShapeState___call__(self, *args)

    def Clear(self, *args) -> "void":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfShapeState_Clear(self, *args)
    __swig_destroy__ = _TopOpeBRepDS.delete_TopOpeBRepDS_DataMapOfShapeState

    def Size(self) -> "Standard_Integer":
        return _TopOpeBRepDS.TopOpeBRepDS_DataMapOfShapeState_Size(self)

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

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

    def Exchange(self, theOther: "TopOpeBRepDS_DoubleMapOfIntegerShape") -> "void":
        return _TopOpeBRepDS.TopOpeBRepDS_DoubleMapOfIntegerShape_Exchange(self, theOther)

    def Assign(self, theOther: "TopOpeBRepDS_DoubleMapOfIntegerShape") -> "NCollection_DoubleMap< Standard_Integer,TopoDS_Shape,TColStd_MapIntegerHasher,TopTools_ShapeMapHasher > &":
        return _TopOpeBRepDS.TopOpeBRepDS_DoubleMapOfIntegerShape_Assign(self, theOther)

    def Set(self, theOther: "TopOpeBRepDS_DoubleMapOfIntegerShape") -> "NCollection_DoubleMap< Standard_Integer,TopoDS_Shape,TColStd_MapIntegerHasher,TopTools_ShapeMapHasher > &":
        return _TopOpeBRepDS.TopOpeBRepDS_DoubleMapOfIntegerShape_Set(self, theOther)

    def ReSize(self, N: "Standard_Integer const") -> "void":
        return _TopOpeBRepDS.TopOpeBRepDS_DoubleMapOfIntegerShape_ReSize(self, N)

    def Bind(self, theKey1: "int const &", theKey2: "TopoDS_Shape") -> "void":
        return _TopOpeBRepDS.TopOpeBRepDS_DoubleMapOfIntegerShape_Bind(self, theKey1, theKey2)

    def AreBound(self, theKey1: "int const &", theKey2: "TopoDS_Shape") -> "Standard_Boolean":
        return _TopOpeBRepDS.TopOpeBRepDS_DoubleMapOfIntegerShape_AreBound(self, theKey1, theKey2)

    def IsBound1(self, theKey1: "int const &") -> "Standard_Boolean":
        return _TopOpeBRepDS.TopOpeBRepDS_DoubleMapOfIntegerShape_IsBound1(self, theKey1)

    def IsBound2(self, theKey2: "TopoDS_Shape") -> "Standard_Boolean":
        return _TopOpeBRepDS.TopOpeBRepDS_DoubleMapOfIntegerShape_IsBound2(self, theKey2)

    def UnBind1(self, theKey1: "int const &") -> "Standard_Boolean":
        return _TopOpeBRepDS.TopOpeBRepDS_DoubleMapOfIntegerShape_UnBind1(self, theKey1)

    def UnBind2(self, theKey2: "TopoDS_Shape") -> "Standard_Boolean":
        return _TopOpeBRepDS.TopOpeBRepDS_DoubleMapOfIntegerShape_UnBind2(self, theKey2)

    def Find1(self, *args) -> "Standard_Boolean":
        return _TopOpeBRepDS.TopOpeBRepDS_DoubleMapOfIntegerShape_Find1(self, *args)

    def Seek1(self, theKey1: "int const &") -> "TopoDS_Shape const *":
        return _TopOpeBRepDS.TopOpeBRepDS_DoubleMapOfIntegerShape_Seek1(self, theKey1)

    def Find2(self, *args) -> "Standard_Boolean":
        return _TopOpeBRepDS.TopOpeBRepDS_DoubleMapOfIntegerShape_Find2(self, *args)

    def Seek2(self, theKey2: "TopoDS_Shape") -> "int const *":
        return _TopOpeBRepDS.TopOpeBRepDS_DoubleMapOfIntegerShape_Seek2(self, theKey2)

    def Clear(self, *args) -> "void":
        return _TopOpeBRepDS.TopOpeBRepDS_DoubleMapOfIntegerShape_Clear(self, *args)
    __swig_destroy__ = _TopOpeBRepDS.delete_TopOpeBRepDS_DoubleMapOfIntegerShape

    def Size(self) -> "Standard_Integer":
        return _TopOpeBRepDS.TopOpeBRepDS_DoubleMapOfIntegerShape_Size(self)

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

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

    def begin(self) -> "NCollection_IndexedDataMap< TopoDS_Shape,TopOpeBRepDS_ShapeWithState,TopTools_ShapeMapHasher >::iterator":
        return _TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfShapeWithState_begin(self)

    def end(self) -> "NCollection_IndexedDataMap< TopoDS_Shape,TopOpeBRepDS_ShapeWithState,TopTools_ShapeMapHasher >::iterator":
        return _TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfShapeWithState_end(self)

    def cbegin(self) -> "NCollection_IndexedDataMap< TopoDS_Shape,TopOpeBRepDS_ShapeWithState,TopTools_ShapeMapHasher >::const_iterator":
        return _TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfShapeWithState_cbegin(self)

    def cend(self) -> "NCollection_IndexedDataMap< TopoDS_Shape,TopOpeBRepDS_ShapeWithState,TopTools_ShapeMapHasher >::const_iterator":
        return _TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfShapeWithState_cend(self)

    def __init__(self, *args):
        _TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfShapeWithState_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_IndexedDataMapOfShapeWithState(*args))

    def Exchange(self, theOther: "TopOpeBRepDS_IndexedDataMapOfShapeWithState") -> "void":
        return _TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfShapeWithState_Exchange(self, theOther)

    def Assign(self, theOther: "TopOpeBRepDS_IndexedDataMapOfShapeWithState") -> "NCollection_IndexedDataMap< TopoDS_Shape,TopOpeBRepDS_ShapeWithState,TopTools_ShapeMapHasher > &":
        return _TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfShapeWithState_Assign(self, theOther)

    def Set(self, theOther: "TopOpeBRepDS_IndexedDataMapOfShapeWithState") -> "NCollection_IndexedDataMap< TopoDS_Shape,TopOpeBRepDS_ShapeWithState,TopTools_ShapeMapHasher > &":
        return _TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfShapeWithState_Set(self, theOther)

    def ReSize(self, N: "Standard_Integer const") -> "void":
        return _TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfShapeWithState_ReSize(self, N)

    def Add(self, theKey1: "TopoDS_Shape", theItem: "TopOpeBRepDS_ShapeWithState") -> "Standard_Integer":
        return _TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfShapeWithState_Add(self, theKey1, theItem)

    def Contains(self, theKey1: "TopoDS_Shape") -> "Standard_Boolean":
        return _TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfShapeWithState_Contains(self, theKey1)

    def Substitute(self, theIndex: "Standard_Integer const", theKey1: "TopoDS_Shape", theItem: "TopOpeBRepDS_ShapeWithState") -> "void":
        return _TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfShapeWithState_Substitute(self, theIndex, theKey1, theItem)

    def Swap(self, theIndex1: "Standard_Integer const", theIndex2: "Standard_Integer const") -> "void":
        return _TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfShapeWithState_Swap(self, theIndex1, theIndex2)

    def RemoveLast(self) -> "void":
        return _TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfShapeWithState_RemoveLast(self)

    def RemoveFromIndex(self, theIndex: "Standard_Integer const") -> "void":
        return _TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfShapeWithState_RemoveFromIndex(self, theIndex)

    def RemoveKey(self, theKey1: "TopoDS_Shape") -> "void":
        return _TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfShapeWithState_RemoveKey(self, theKey1)

    def FindKey(self, theIndex: "Standard_Integer const") -> "TopoDS_Shape const &":
        return _TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfShapeWithState_FindKey(self, theIndex)

    def FindFromIndex(self, theIndex: "Standard_Integer const") -> "TopOpeBRepDS_ShapeWithState const &":
        return _TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfShapeWithState_FindFromIndex(self, theIndex)

    def ChangeFromIndex(self, theIndex: "Standard_Integer const") -> "TopOpeBRepDS_ShapeWithState &":
        return _TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfShapeWithState_ChangeFromIndex(self, theIndex)

    def __call__(self, *args) -> "TopOpeBRepDS_ShapeWithState &":
        return _TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfShapeWithState___call__(self, *args)

    def FindIndex(self, theKey1: "TopoDS_Shape") -> "Standard_Integer":
        return _TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfShapeWithState_FindIndex(self, theKey1)

    def ChangeFromKey(self, theKey1: "TopoDS_Shape") -> "TopOpeBRepDS_ShapeWithState &":
        return _TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfShapeWithState_ChangeFromKey(self, theKey1)

    def Seek(self, theKey1: "TopoDS_Shape") -> "TopOpeBRepDS_ShapeWithState const *":
        return _TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfShapeWithState_Seek(self, theKey1)

    def ChangeSeek(self, theKey1: "TopoDS_Shape") -> "TopOpeBRepDS_ShapeWithState *":
        return _TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfShapeWithState_ChangeSeek(self, theKey1)

    def FindFromKey(self, *args) -> "Standard_Boolean":
        return _TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfShapeWithState_FindFromKey(self, *args)

    def Clear(self, *args) -> "void":
        return _TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfShapeWithState_Clear(self, *args)
    __swig_destroy__ = _TopOpeBRepDS.delete_TopOpeBRepDS_IndexedDataMapOfShapeWithState

    def Size(self) -> "Standard_Integer":
        return _TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfShapeWithState_Size(self)

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

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

    def begin(self) -> "NCollection_IndexedDataMap< TopoDS_Shape,TopOpeBRepDS_Point,TopTools_ShapeMapHasher >::iterator":
        return _TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfVertexPoint_begin(self)

    def end(self) -> "NCollection_IndexedDataMap< TopoDS_Shape,TopOpeBRepDS_Point,TopTools_ShapeMapHasher >::iterator":
        return _TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfVertexPoint_end(self)

    def cbegin(self) -> "NCollection_IndexedDataMap< TopoDS_Shape,TopOpeBRepDS_Point,TopTools_ShapeMapHasher >::const_iterator":
        return _TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfVertexPoint_cbegin(self)

    def cend(self) -> "NCollection_IndexedDataMap< TopoDS_Shape,TopOpeBRepDS_Point,TopTools_ShapeMapHasher >::const_iterator":
        return _TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfVertexPoint_cend(self)

    def __init__(self, *args):
        _TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfVertexPoint_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_IndexedDataMapOfVertexPoint(*args))

    def Exchange(self, theOther: "TopOpeBRepDS_IndexedDataMapOfVertexPoint") -> "void":
        return _TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfVertexPoint_Exchange(self, theOther)

    def Assign(self, theOther: "TopOpeBRepDS_IndexedDataMapOfVertexPoint") -> "NCollection_IndexedDataMap< TopoDS_Shape,TopOpeBRepDS_Point,TopTools_ShapeMapHasher > &":
        return _TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfVertexPoint_Assign(self, theOther)

    def Set(self, theOther: "TopOpeBRepDS_IndexedDataMapOfVertexPoint") -> "NCollection_IndexedDataMap< TopoDS_Shape,TopOpeBRepDS_Point,TopTools_ShapeMapHasher > &":
        return _TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfVertexPoint_Set(self, theOther)

    def ReSize(self, N: "Standard_Integer const") -> "void":
        return _TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfVertexPoint_ReSize(self, N)

    def Add(self, theKey1: "TopoDS_Shape", theItem: "TopOpeBRepDS_Point") -> "Standard_Integer":
        return _TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfVertexPoint_Add(self, theKey1, theItem)

    def Contains(self, theKey1: "TopoDS_Shape") -> "Standard_Boolean":
        return _TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfVertexPoint_Contains(self, theKey1)

    def Substitute(self, theIndex: "Standard_Integer const", theKey1: "TopoDS_Shape", theItem: "TopOpeBRepDS_Point") -> "void":
        return _TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfVertexPoint_Substitute(self, theIndex, theKey1, theItem)

    def Swap(self, theIndex1: "Standard_Integer const", theIndex2: "Standard_Integer const") -> "void":
        return _TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfVertexPoint_Swap(self, theIndex1, theIndex2)

    def RemoveLast(self) -> "void":
        return _TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfVertexPoint_RemoveLast(self)

    def RemoveFromIndex(self, theIndex: "Standard_Integer const") -> "void":
        return _TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfVertexPoint_RemoveFromIndex(self, theIndex)

    def RemoveKey(self, theKey1: "TopoDS_Shape") -> "void":
        return _TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfVertexPoint_RemoveKey(self, theKey1)

    def FindKey(self, theIndex: "Standard_Integer const") -> "TopoDS_Shape const &":
        return _TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfVertexPoint_FindKey(self, theIndex)

    def FindFromIndex(self, theIndex: "Standard_Integer const") -> "TopOpeBRepDS_Point const &":
        return _TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfVertexPoint_FindFromIndex(self, theIndex)

    def ChangeFromIndex(self, theIndex: "Standard_Integer const") -> "TopOpeBRepDS_Point &":
        return _TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfVertexPoint_ChangeFromIndex(self, theIndex)

    def __call__(self, *args) -> "TopOpeBRepDS_Point &":
        return _TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfVertexPoint___call__(self, *args)

    def FindIndex(self, theKey1: "TopoDS_Shape") -> "Standard_Integer":
        return _TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfVertexPoint_FindIndex(self, theKey1)

    def ChangeFromKey(self, theKey1: "TopoDS_Shape") -> "TopOpeBRepDS_Point &":
        return _TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfVertexPoint_ChangeFromKey(self, theKey1)

    def Seek(self, theKey1: "TopoDS_Shape") -> "TopOpeBRepDS_Point const *":
        return _TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfVertexPoint_Seek(self, theKey1)

    def ChangeSeek(self, theKey1: "TopoDS_Shape") -> "TopOpeBRepDS_Point *":
        return _TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfVertexPoint_ChangeSeek(self, theKey1)

    def FindFromKey(self, *args) -> "Standard_Boolean":
        return _TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfVertexPoint_FindFromKey(self, *args)

    def Clear(self, *args) -> "void":
        return _TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfVertexPoint_Clear(self, *args)
    __swig_destroy__ = _TopOpeBRepDS.delete_TopOpeBRepDS_IndexedDataMapOfVertexPoint

    def Size(self) -> "Standard_Integer":
        return _TopOpeBRepDS.TopOpeBRepDS_IndexedDataMapOfVertexPoint_Size(self)

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

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

    def More(self) -> "Standard_Boolean":
        return _TopOpeBRepDS.TopOpeBRepDS_ListIteratorOfListOfInterference_More(self)

    def Next(self) -> "void":
        return _TopOpeBRepDS.TopOpeBRepDS_ListIteratorOfListOfInterference_Next(self)

    def Value(self) -> "opencascade::handle< TopOpeBRepDS_Interference > const &":
        return _TopOpeBRepDS.TopOpeBRepDS_ListIteratorOfListOfInterference_Value(self)

    def ChangeValue(self) -> "opencascade::handle< TopOpeBRepDS_Interference > &":
        return _TopOpeBRepDS.TopOpeBRepDS_ListIteratorOfListOfInterference_ChangeValue(self)
    __swig_destroy__ = _TopOpeBRepDS.delete_TopOpeBRepDS_ListIteratorOfListOfInterference

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

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

    def begin(self) -> "NCollection_List< opencascade::handle< TopOpeBRepDS_Interference > >::iterator":
        return _TopOpeBRepDS.TopOpeBRepDS_ListOfInterference_begin(self)

    def end(self) -> "NCollection_List< opencascade::handle< TopOpeBRepDS_Interference > >::iterator":
        return _TopOpeBRepDS.TopOpeBRepDS_ListOfInterference_end(self)

    def cbegin(self) -> "NCollection_List< opencascade::handle< TopOpeBRepDS_Interference > >::const_iterator":
        return _TopOpeBRepDS.TopOpeBRepDS_ListOfInterference_cbegin(self)

    def cend(self) -> "NCollection_List< opencascade::handle< TopOpeBRepDS_Interference > >::const_iterator":
        return _TopOpeBRepDS.TopOpeBRepDS_ListOfInterference_cend(self)

    def __init__(self, *args):
        _TopOpeBRepDS.TopOpeBRepDS_ListOfInterference_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_ListOfInterference(*args))

    def Size(self) -> "Standard_Integer":
        return _TopOpeBRepDS.TopOpeBRepDS_ListOfInterference_Size(self)

    def Assign(self, theOther: "TopOpeBRepDS_ListOfInterference") -> "NCollection_List< opencascade::handle< TopOpeBRepDS_Interference > > &":
        return _TopOpeBRepDS.TopOpeBRepDS_ListOfInterference_Assign(self, theOther)

    def Set(self, theOther: "TopOpeBRepDS_ListOfInterference") -> "NCollection_List< opencascade::handle< TopOpeBRepDS_Interference > > &":
        return _TopOpeBRepDS.TopOpeBRepDS_ListOfInterference_Set(self, theOther)

    def Clear(self, theAllocator: "IntSurf_Allocator"=0) -> "void":
        return _TopOpeBRepDS.TopOpeBRepDS_ListOfInterference_Clear(self, theAllocator)

    def First(self) -> "opencascade::handle< TopOpeBRepDS_Interference > const &":
        return _TopOpeBRepDS.TopOpeBRepDS_ListOfInterference_First(self)

    def Last(self) -> "opencascade::handle< TopOpeBRepDS_Interference > const &":
        return _TopOpeBRepDS.TopOpeBRepDS_ListOfInterference_Last(self)

    def Append(self, *args) -> "void":
        return _TopOpeBRepDS.TopOpeBRepDS_ListOfInterference_Append(self, *args)

    def Prepend(self, *args) -> "void":
        return _TopOpeBRepDS.TopOpeBRepDS_ListOfInterference_Prepend(self, *args)

    def RemoveFirst(self) -> "void":
        return _TopOpeBRepDS.TopOpeBRepDS_ListOfInterference_RemoveFirst(self)

    def Remove(self, theIter: "TopOpeBRepDS_ListIteratorOfListOfInterference") -> "void":
        return _TopOpeBRepDS.TopOpeBRepDS_ListOfInterference_Remove(self, theIter)

    def InsertBefore(self, *args) -> "void":
        return _TopOpeBRepDS.TopOpeBRepDS_ListOfInterference_InsertBefore(self, *args)

    def InsertAfter(self, *args) -> "void":
        return _TopOpeBRepDS.TopOpeBRepDS_ListOfInterference_InsertAfter(self, *args)

    def Reverse(self) -> "void":
        return _TopOpeBRepDS.TopOpeBRepDS_ListOfInterference_Reverse(self)
    __swig_destroy__ = _TopOpeBRepDS.delete_TopOpeBRepDS_ListOfInterference

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


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

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

    def begin(self) -> "NCollection_DataMap< int,TopOpeBRepDS_CurveData,NCollection_DefaultHasher< int > >::iterator":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfCurve_begin(self)

    def end(self) -> "NCollection_DataMap< int,TopOpeBRepDS_CurveData,NCollection_DefaultHasher< int > >::iterator":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfCurve_end(self)

    def cbegin(self) -> "NCollection_DataMap< int,TopOpeBRepDS_CurveData,NCollection_DefaultHasher< int > >::const_iterator":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfCurve_cbegin(self)

    def cend(self) -> "NCollection_DataMap< int,TopOpeBRepDS_CurveData,NCollection_DefaultHasher< int > >::const_iterator":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfCurve_cend(self)

    def __init__(self, *args):
        _TopOpeBRepDS.TopOpeBRepDS_MapOfCurve_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_MapOfCurve(*args))

    def Exchange(self, theOther: "TopOpeBRepDS_MapOfCurve") -> "void":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfCurve_Exchange(self, theOther)

    def Assign(self, theOther: "TopOpeBRepDS_MapOfCurve") -> "NCollection_DataMap< Standard_Integer,TopOpeBRepDS_CurveData,TColStd_MapIntegerHasher > &":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfCurve_Assign(self, theOther)

    def Set(self, theOther: "TopOpeBRepDS_MapOfCurve") -> "NCollection_DataMap< Standard_Integer,TopOpeBRepDS_CurveData,TColStd_MapIntegerHasher > &":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfCurve_Set(self, theOther)

    def ReSize(self, N: "Standard_Integer const") -> "void":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfCurve_ReSize(self, N)

    def Bind(self, theKey: "int const &", theItem: "TopOpeBRepDS_CurveData") -> "Standard_Boolean":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfCurve_Bind(self, theKey, theItem)

    def Bound(self, theKey: "int const &", theItem: "TopOpeBRepDS_CurveData") -> "TopOpeBRepDS_CurveData *":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfCurve_Bound(self, theKey, theItem)

    def IsBound(self, theKey: "int const &") -> "Standard_Boolean":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfCurve_IsBound(self, theKey)

    def UnBind(self, theKey: "int const &") -> "Standard_Boolean":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfCurve_UnBind(self, theKey)

    def Seek(self, theKey: "int const &") -> "TopOpeBRepDS_CurveData const *":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfCurve_Seek(self, theKey)

    def Find(self, *args) -> "Standard_Boolean":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfCurve_Find(self, *args)

    def ChangeSeek(self, theKey: "int const &") -> "TopOpeBRepDS_CurveData *":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfCurve_ChangeSeek(self, theKey)

    def ChangeFind(self, theKey: "int const &") -> "TopOpeBRepDS_CurveData &":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfCurve_ChangeFind(self, theKey)

    def __call__(self, *args) -> "TopOpeBRepDS_CurveData &":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfCurve___call__(self, *args)

    def Clear(self, *args) -> "void":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfCurve_Clear(self, *args)
    __swig_destroy__ = _TopOpeBRepDS.delete_TopOpeBRepDS_MapOfCurve

    def Size(self) -> "Standard_Integer":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfCurve_Size(self)

    def Keys(self) -> "PyObject *":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfCurve_Keys(self)

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

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

    def begin(self) -> "NCollection_DataMap< int,TopOpeBRepDS_ShapeData,NCollection_DefaultHasher< int > >::iterator":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfIntegerShapeData_begin(self)

    def end(self) -> "NCollection_DataMap< int,TopOpeBRepDS_ShapeData,NCollection_DefaultHasher< int > >::iterator":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfIntegerShapeData_end(self)

    def cbegin(self) -> "NCollection_DataMap< int,TopOpeBRepDS_ShapeData,NCollection_DefaultHasher< int > >::const_iterator":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfIntegerShapeData_cbegin(self)

    def cend(self) -> "NCollection_DataMap< int,TopOpeBRepDS_ShapeData,NCollection_DefaultHasher< int > >::const_iterator":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfIntegerShapeData_cend(self)

    def __init__(self, *args):
        _TopOpeBRepDS.TopOpeBRepDS_MapOfIntegerShapeData_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_MapOfIntegerShapeData(*args))

    def Exchange(self, theOther: "TopOpeBRepDS_MapOfIntegerShapeData") -> "void":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfIntegerShapeData_Exchange(self, theOther)

    def Assign(self, theOther: "TopOpeBRepDS_MapOfIntegerShapeData") -> "NCollection_DataMap< Standard_Integer,TopOpeBRepDS_ShapeData,TColStd_MapIntegerHasher > &":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfIntegerShapeData_Assign(self, theOther)

    def Set(self, theOther: "TopOpeBRepDS_MapOfIntegerShapeData") -> "NCollection_DataMap< Standard_Integer,TopOpeBRepDS_ShapeData,TColStd_MapIntegerHasher > &":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfIntegerShapeData_Set(self, theOther)

    def ReSize(self, N: "Standard_Integer const") -> "void":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfIntegerShapeData_ReSize(self, N)

    def Bind(self, theKey: "int const &", theItem: "TopOpeBRepDS_ShapeData") -> "Standard_Boolean":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfIntegerShapeData_Bind(self, theKey, theItem)

    def Bound(self, theKey: "int const &", theItem: "TopOpeBRepDS_ShapeData") -> "TopOpeBRepDS_ShapeData *":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfIntegerShapeData_Bound(self, theKey, theItem)

    def IsBound(self, theKey: "int const &") -> "Standard_Boolean":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfIntegerShapeData_IsBound(self, theKey)

    def UnBind(self, theKey: "int const &") -> "Standard_Boolean":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfIntegerShapeData_UnBind(self, theKey)

    def Seek(self, theKey: "int const &") -> "TopOpeBRepDS_ShapeData const *":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfIntegerShapeData_Seek(self, theKey)

    def Find(self, *args) -> "Standard_Boolean":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfIntegerShapeData_Find(self, *args)

    def ChangeSeek(self, theKey: "int const &") -> "TopOpeBRepDS_ShapeData *":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfIntegerShapeData_ChangeSeek(self, theKey)

    def ChangeFind(self, theKey: "int const &") -> "TopOpeBRepDS_ShapeData &":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfIntegerShapeData_ChangeFind(self, theKey)

    def __call__(self, *args) -> "TopOpeBRepDS_ShapeData &":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfIntegerShapeData___call__(self, *args)

    def Clear(self, *args) -> "void":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfIntegerShapeData_Clear(self, *args)
    __swig_destroy__ = _TopOpeBRepDS.delete_TopOpeBRepDS_MapOfIntegerShapeData

    def Size(self) -> "Standard_Integer":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfIntegerShapeData_Size(self)

    def Keys(self) -> "PyObject *":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfIntegerShapeData_Keys(self)

# 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

    def begin(self) -> "NCollection_DataMap< int,TopOpeBRepDS_PointData,NCollection_DefaultHasher< int > >::iterator":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfPoint_begin(self)

    def end(self) -> "NCollection_DataMap< int,TopOpeBRepDS_PointData,NCollection_DefaultHasher< int > >::iterator":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfPoint_end(self)

    def cbegin(self) -> "NCollection_DataMap< int,TopOpeBRepDS_PointData,NCollection_DefaultHasher< int > >::const_iterator":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfPoint_cbegin(self)

    def cend(self) -> "NCollection_DataMap< int,TopOpeBRepDS_PointData,NCollection_DefaultHasher< int > >::const_iterator":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfPoint_cend(self)

    def __init__(self, *args):
        _TopOpeBRepDS.TopOpeBRepDS_MapOfPoint_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_MapOfPoint(*args))

    def Exchange(self, theOther: "TopOpeBRepDS_MapOfPoint") -> "void":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfPoint_Exchange(self, theOther)

    def Assign(self, theOther: "TopOpeBRepDS_MapOfPoint") -> "NCollection_DataMap< Standard_Integer,TopOpeBRepDS_PointData,TColStd_MapIntegerHasher > &":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfPoint_Assign(self, theOther)

    def Set(self, theOther: "TopOpeBRepDS_MapOfPoint") -> "NCollection_DataMap< Standard_Integer,TopOpeBRepDS_PointData,TColStd_MapIntegerHasher > &":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfPoint_Set(self, theOther)

    def ReSize(self, N: "Standard_Integer const") -> "void":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfPoint_ReSize(self, N)

    def Bind(self, theKey: "int const &", theItem: "TopOpeBRepDS_PointData") -> "Standard_Boolean":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfPoint_Bind(self, theKey, theItem)

    def Bound(self, theKey: "int const &", theItem: "TopOpeBRepDS_PointData") -> "TopOpeBRepDS_PointData *":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfPoint_Bound(self, theKey, theItem)

    def IsBound(self, theKey: "int const &") -> "Standard_Boolean":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfPoint_IsBound(self, theKey)

    def UnBind(self, theKey: "int const &") -> "Standard_Boolean":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfPoint_UnBind(self, theKey)

    def Seek(self, theKey: "int const &") -> "TopOpeBRepDS_PointData const *":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfPoint_Seek(self, theKey)

    def Find(self, *args) -> "Standard_Boolean":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfPoint_Find(self, *args)

    def ChangeSeek(self, theKey: "int const &") -> "TopOpeBRepDS_PointData *":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfPoint_ChangeSeek(self, theKey)

    def ChangeFind(self, theKey: "int const &") -> "TopOpeBRepDS_PointData &":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfPoint_ChangeFind(self, theKey)

    def __call__(self, *args) -> "TopOpeBRepDS_PointData &":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfPoint___call__(self, *args)

    def Clear(self, *args) -> "void":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfPoint_Clear(self, *args)
    __swig_destroy__ = _TopOpeBRepDS.delete_TopOpeBRepDS_MapOfPoint

    def Size(self) -> "Standard_Integer":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfPoint_Size(self)

    def Keys(self) -> "PyObject *":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfPoint_Keys(self)

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

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

    def begin(self) -> "NCollection_IndexedDataMap< TopoDS_Shape,TopOpeBRepDS_ShapeData,TopTools_ShapeMapHasher >::iterator":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfShapeData_begin(self)

    def end(self) -> "NCollection_IndexedDataMap< TopoDS_Shape,TopOpeBRepDS_ShapeData,TopTools_ShapeMapHasher >::iterator":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfShapeData_end(self)

    def cbegin(self) -> "NCollection_IndexedDataMap< TopoDS_Shape,TopOpeBRepDS_ShapeData,TopTools_ShapeMapHasher >::const_iterator":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfShapeData_cbegin(self)

    def cend(self) -> "NCollection_IndexedDataMap< TopoDS_Shape,TopOpeBRepDS_ShapeData,TopTools_ShapeMapHasher >::const_iterator":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfShapeData_cend(self)

    def __init__(self, *args):
        _TopOpeBRepDS.TopOpeBRepDS_MapOfShapeData_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_MapOfShapeData(*args))

    def Exchange(self, theOther: "TopOpeBRepDS_MapOfShapeData") -> "void":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfShapeData_Exchange(self, theOther)

    def Assign(self, theOther: "TopOpeBRepDS_MapOfShapeData") -> "NCollection_IndexedDataMap< TopoDS_Shape,TopOpeBRepDS_ShapeData,TopTools_ShapeMapHasher > &":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfShapeData_Assign(self, theOther)

    def Set(self, theOther: "TopOpeBRepDS_MapOfShapeData") -> "NCollection_IndexedDataMap< TopoDS_Shape,TopOpeBRepDS_ShapeData,TopTools_ShapeMapHasher > &":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfShapeData_Set(self, theOther)

    def ReSize(self, N: "Standard_Integer const") -> "void":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfShapeData_ReSize(self, N)

    def Add(self, theKey1: "TopoDS_Shape", theItem: "TopOpeBRepDS_ShapeData") -> "Standard_Integer":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfShapeData_Add(self, theKey1, theItem)

    def Contains(self, theKey1: "TopoDS_Shape") -> "Standard_Boolean":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfShapeData_Contains(self, theKey1)

    def Substitute(self, theIndex: "Standard_Integer const", theKey1: "TopoDS_Shape", theItem: "TopOpeBRepDS_ShapeData") -> "void":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfShapeData_Substitute(self, theIndex, theKey1, theItem)

    def Swap(self, theIndex1: "Standard_Integer const", theIndex2: "Standard_Integer const") -> "void":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfShapeData_Swap(self, theIndex1, theIndex2)

    def RemoveLast(self) -> "void":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfShapeData_RemoveLast(self)

    def RemoveFromIndex(self, theIndex: "Standard_Integer const") -> "void":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfShapeData_RemoveFromIndex(self, theIndex)

    def RemoveKey(self, theKey1: "TopoDS_Shape") -> "void":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfShapeData_RemoveKey(self, theKey1)

    def FindKey(self, theIndex: "Standard_Integer const") -> "TopoDS_Shape const &":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfShapeData_FindKey(self, theIndex)

    def FindFromIndex(self, theIndex: "Standard_Integer const") -> "TopOpeBRepDS_ShapeData const &":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfShapeData_FindFromIndex(self, theIndex)

    def ChangeFromIndex(self, theIndex: "Standard_Integer const") -> "TopOpeBRepDS_ShapeData &":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfShapeData_ChangeFromIndex(self, theIndex)

    def __call__(self, *args) -> "TopOpeBRepDS_ShapeData &":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfShapeData___call__(self, *args)

    def FindIndex(self, theKey1: "TopoDS_Shape") -> "Standard_Integer":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfShapeData_FindIndex(self, theKey1)

    def ChangeFromKey(self, theKey1: "TopoDS_Shape") -> "TopOpeBRepDS_ShapeData &":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfShapeData_ChangeFromKey(self, theKey1)

    def Seek(self, theKey1: "TopoDS_Shape") -> "TopOpeBRepDS_ShapeData const *":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfShapeData_Seek(self, theKey1)

    def ChangeSeek(self, theKey1: "TopoDS_Shape") -> "TopOpeBRepDS_ShapeData *":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfShapeData_ChangeSeek(self, theKey1)

    def FindFromKey(self, *args) -> "Standard_Boolean":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfShapeData_FindFromKey(self, *args)

    def Clear(self, *args) -> "void":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfShapeData_Clear(self, *args)
    __swig_destroy__ = _TopOpeBRepDS.delete_TopOpeBRepDS_MapOfShapeData

    def Size(self) -> "Standard_Integer":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfShapeData_Size(self)

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

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

    def begin(self) -> "NCollection_DataMap< int,TopOpeBRepDS_SurfaceData,NCollection_DefaultHasher< int > >::iterator":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfSurface_begin(self)

    def end(self) -> "NCollection_DataMap< int,TopOpeBRepDS_SurfaceData,NCollection_DefaultHasher< int > >::iterator":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfSurface_end(self)

    def cbegin(self) -> "NCollection_DataMap< int,TopOpeBRepDS_SurfaceData,NCollection_DefaultHasher< int > >::const_iterator":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfSurface_cbegin(self)

    def cend(self) -> "NCollection_DataMap< int,TopOpeBRepDS_SurfaceData,NCollection_DefaultHasher< int > >::const_iterator":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfSurface_cend(self)

    def __init__(self, *args):
        _TopOpeBRepDS.TopOpeBRepDS_MapOfSurface_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_MapOfSurface(*args))

    def Exchange(self, theOther: "TopOpeBRepDS_MapOfSurface") -> "void":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfSurface_Exchange(self, theOther)

    def Assign(self, theOther: "TopOpeBRepDS_MapOfSurface") -> "NCollection_DataMap< Standard_Integer,TopOpeBRepDS_SurfaceData,TColStd_MapIntegerHasher > &":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfSurface_Assign(self, theOther)

    def Set(self, theOther: "TopOpeBRepDS_MapOfSurface") -> "NCollection_DataMap< Standard_Integer,TopOpeBRepDS_SurfaceData,TColStd_MapIntegerHasher > &":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfSurface_Set(self, theOther)

    def ReSize(self, N: "Standard_Integer const") -> "void":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfSurface_ReSize(self, N)

    def Bind(self, theKey: "int const &", theItem: "TopOpeBRepDS_SurfaceData") -> "Standard_Boolean":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfSurface_Bind(self, theKey, theItem)

    def Bound(self, theKey: "int const &", theItem: "TopOpeBRepDS_SurfaceData") -> "TopOpeBRepDS_SurfaceData *":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfSurface_Bound(self, theKey, theItem)

    def IsBound(self, theKey: "int const &") -> "Standard_Boolean":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfSurface_IsBound(self, theKey)

    def UnBind(self, theKey: "int const &") -> "Standard_Boolean":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfSurface_UnBind(self, theKey)

    def Seek(self, theKey: "int const &") -> "TopOpeBRepDS_SurfaceData const *":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfSurface_Seek(self, theKey)

    def Find(self, *args) -> "Standard_Boolean":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfSurface_Find(self, *args)

    def ChangeSeek(self, theKey: "int const &") -> "TopOpeBRepDS_SurfaceData *":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfSurface_ChangeSeek(self, theKey)

    def ChangeFind(self, theKey: "int const &") -> "TopOpeBRepDS_SurfaceData &":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfSurface_ChangeFind(self, theKey)

    def __call__(self, *args) -> "TopOpeBRepDS_SurfaceData &":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfSurface___call__(self, *args)

    def Clear(self, *args) -> "void":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfSurface_Clear(self, *args)
    __swig_destroy__ = _TopOpeBRepDS.delete_TopOpeBRepDS_MapOfSurface

    def Size(self) -> "Standard_Integer":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfSurface_Size(self)

    def Keys(self) -> "PyObject *":
        return _TopOpeBRepDS.TopOpeBRepDS_MapOfSurface_Keys(self)

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

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

    def begin(self) -> "NCollection_DataMap< TopoDS_Shape,opencascade::handle< Geom_Surface >,TopTools_ShapeMapHasher >::iterator":
        return _TopOpeBRepDS.TopOpeBRepDS_ShapeSurface_begin(self)

    def end(self) -> "NCollection_DataMap< TopoDS_Shape,opencascade::handle< Geom_Surface >,TopTools_ShapeMapHasher >::iterator":
        return _TopOpeBRepDS.TopOpeBRepDS_ShapeSurface_end(self)

    def cbegin(self) -> "NCollection_DataMap< TopoDS_Shape,opencascade::handle< Geom_Surface >,TopTools_ShapeMapHasher >::const_iterator":
        return _TopOpeBRepDS.TopOpeBRepDS_ShapeSurface_cbegin(self)

    def cend(self) -> "NCollection_DataMap< TopoDS_Shape,opencascade::handle< Geom_Surface >,TopTools_ShapeMapHasher >::const_iterator":
        return _TopOpeBRepDS.TopOpeBRepDS_ShapeSurface_cend(self)

    def __init__(self, *args):
        _TopOpeBRepDS.TopOpeBRepDS_ShapeSurface_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_ShapeSurface(*args))

    def Exchange(self, theOther: "TopOpeBRepDS_ShapeSurface") -> "void":
        return _TopOpeBRepDS.TopOpeBRepDS_ShapeSurface_Exchange(self, theOther)

    def Assign(self, theOther: "TopOpeBRepDS_ShapeSurface") -> "NCollection_DataMap< TopoDS_Shape,opencascade::handle< Geom_Surface >,TopTools_ShapeMapHasher > &":
        return _TopOpeBRepDS.TopOpeBRepDS_ShapeSurface_Assign(self, theOther)

    def Set(self, theOther: "TopOpeBRepDS_ShapeSurface") -> "NCollection_DataMap< TopoDS_Shape,opencascade::handle< Geom_Surface >,TopTools_ShapeMapHasher > &":
        return _TopOpeBRepDS.TopOpeBRepDS_ShapeSurface_Set(self, theOther)

    def ReSize(self, N: "Standard_Integer const") -> "void":
        return _TopOpeBRepDS.TopOpeBRepDS_ShapeSurface_ReSize(self, N)

    def Bind(self, theKey: "TopoDS_Shape", theItem: "opencascade::handle< Geom_Surface > const &") -> "Standard_Boolean":
        return _TopOpeBRepDS.TopOpeBRepDS_ShapeSurface_Bind(self, theKey, theItem)

    def Bound(self, theKey: "TopoDS_Shape", theItem: "opencascade::handle< Geom_Surface > const &") -> "opencascade::handle< Geom_Surface > *":
        return _TopOpeBRepDS.TopOpeBRepDS_ShapeSurface_Bound(self, theKey, theItem)

    def IsBound(self, theKey: "TopoDS_Shape") -> "Standard_Boolean":
        return _TopOpeBRepDS.TopOpeBRepDS_ShapeSurface_IsBound(self, theKey)

    def UnBind(self, theKey: "TopoDS_Shape") -> "Standard_Boolean":
        return _TopOpeBRepDS.TopOpeBRepDS_ShapeSurface_UnBind(self, theKey)

    def Seek(self, theKey: "TopoDS_Shape") -> "opencascade::handle< Geom_Surface > const *":
        return _TopOpeBRepDS.TopOpeBRepDS_ShapeSurface_Seek(self, theKey)

    def Find(self, *args) -> "Standard_Boolean":
        return _TopOpeBRepDS.TopOpeBRepDS_ShapeSurface_Find(self, *args)

    def ChangeSeek(self, theKey: "TopoDS_Shape") -> "opencascade::handle< Geom_Surface > *":
        return _TopOpeBRepDS.TopOpeBRepDS_ShapeSurface_ChangeSeek(self, theKey)

    def ChangeFind(self, theKey: "TopoDS_Shape") -> "opencascade::handle< Geom_Surface > &":
        return _TopOpeBRepDS.TopOpeBRepDS_ShapeSurface_ChangeFind(self, theKey)

    def __call__(self, *args) -> "opencascade::handle< Geom_Surface > &":
        return _TopOpeBRepDS.TopOpeBRepDS_ShapeSurface___call__(self, *args)

    def Clear(self, *args) -> "void":
        return _TopOpeBRepDS.TopOpeBRepDS_ShapeSurface_Clear(self, *args)
    __swig_destroy__ = _TopOpeBRepDS.delete_TopOpeBRepDS_ShapeSurface

    def Size(self) -> "Standard_Integer":
        return _TopOpeBRepDS.TopOpeBRepDS_ShapeSurface_Size(self)

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

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

    @staticmethod
    def IsGeometry(*args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Parameters
        ----------
        K: TopOpeBRepDS_Kind

        Returns
        -------
        bool

        """
        return _TopOpeBRepDS.topopebrepds_IsGeometry(*args)

    @staticmethod
    def IsTopology(*args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Parameters
        ----------
        K: TopOpeBRepDS_Kind

        Returns
        -------
        bool

        """
        return _TopOpeBRepDS.topopebrepds_IsTopology(*args)

    @staticmethod
    def KindToShape(*args) -> "TopAbs_ShapeEnum":
        r"""
        No available documentation.

        Parameters
        ----------
        K: TopOpeBRepDS_Kind

        Returns
        -------
        TopAbs_ShapeEnum

        """
        return _TopOpeBRepDS.topopebrepds_KindToShape(*args)

    @staticmethod
    def SPrint(*args) -> "TCollection_AsciiString":
        r"""
        In ou on un.

        Parameters
        ----------
        S: TopAbs_State

        Returns
        -------
        TCollection_AsciiString
        <k>.

        Parameters
        ----------
        K: TopOpeBRepDS_Kind

        Returns
        -------
        TCollection_AsciiString
        S1(<k>,<i>)s2.

        Parameters
        ----------
        K: TopOpeBRepDS_Kind
        I: int
        B: TCollection_AsciiString,optional
        	default value is 
        A: TCollection_AsciiString,optional
        	default value is 

        Returns
        -------
        TCollection_AsciiString
        No available documentation.

        Parameters
        ----------
        T: TopAbs_ShapeEnum

        Returns
        -------
        TCollection_AsciiString
        (<t>,<i>).

        Parameters
        ----------
        T: TopAbs_ShapeEnum
        I: int

        Returns
        -------
        TCollection_AsciiString
        No available documentation.

        Parameters
        ----------
        O: TopAbs_Orientation

        Returns
        -------
        TCollection_AsciiString
        No available documentation.

        Parameters
        ----------
        C: TopOpeBRepDS_Config

        Returns
        -------
        TCollection_AsciiString

        """
        return _TopOpeBRepDS.topopebrepds_SPrint(*args)

    @staticmethod
    def ShapeToKind(*args) -> "TopOpeBRepDS_Kind":
        r"""
        No available documentation.

        Parameters
        ----------
        S: TopAbs_ShapeEnum

        Returns
        -------
        TopOpeBRepDS_Kind

        """
        return _TopOpeBRepDS.topopebrepds_ShapeToKind(*args)

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

def topopebrepds_IsGeometry(*args) -> "Standard_Boolean":
    r"""
    No available documentation.

    Parameters
    ----------
    K: TopOpeBRepDS_Kind

    Returns
    -------
    bool

    """
    return _TopOpeBRepDS.topopebrepds_IsGeometry(*args)

def topopebrepds_IsTopology(*args) -> "Standard_Boolean":
    r"""
    No available documentation.

    Parameters
    ----------
    K: TopOpeBRepDS_Kind

    Returns
    -------
    bool

    """
    return _TopOpeBRepDS.topopebrepds_IsTopology(*args)

def topopebrepds_KindToShape(*args) -> "TopAbs_ShapeEnum":
    r"""
    No available documentation.

    Parameters
    ----------
    K: TopOpeBRepDS_Kind

    Returns
    -------
    TopAbs_ShapeEnum

    """
    return _TopOpeBRepDS.topopebrepds_KindToShape(*args)

def topopebrepds_SPrint(*args) -> "TCollection_AsciiString":
    r"""
    In ou on un.

    Parameters
    ----------
    S: TopAbs_State

    Returns
    -------
    TCollection_AsciiString
    <k>.

    Parameters
    ----------
    K: TopOpeBRepDS_Kind

    Returns
    -------
    TCollection_AsciiString
    S1(<k>,<i>)s2.

    Parameters
    ----------
    K: TopOpeBRepDS_Kind
    I: int
    B: TCollection_AsciiString,optional
    	default value is 
    A: TCollection_AsciiString,optional
    	default value is 

    Returns
    -------
    TCollection_AsciiString
    No available documentation.

    Parameters
    ----------
    T: TopAbs_ShapeEnum

    Returns
    -------
    TCollection_AsciiString
    (<t>,<i>).

    Parameters
    ----------
    T: TopAbs_ShapeEnum
    I: int

    Returns
    -------
    TCollection_AsciiString
    No available documentation.

    Parameters
    ----------
    O: TopAbs_Orientation

    Returns
    -------
    TCollection_AsciiString
    No available documentation.

    Parameters
    ----------
    C: TopOpeBRepDS_Config

    Returns
    -------
    TCollection_AsciiString

    """
    return _TopOpeBRepDS.topopebrepds_SPrint(*args)

def topopebrepds_ShapeToKind(*args) -> "TopOpeBRepDS_Kind":
    r"""
    No available documentation.

    Parameters
    ----------
    S: TopAbs_ShapeEnum

    Returns
    -------
    TopOpeBRepDS_Kind

    """
    return _TopOpeBRepDS.topopebrepds_ShapeToKind(*args)

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

    def __init__(self, *args):
        r"""
        No available documentation.

        Returns
        -------
        None

        """
        _TopOpeBRepDS.TopOpeBRepDS_Association_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_Association(*args))

    def AreAssociated(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Parameters
        ----------
        I: TopOpeBRepDS_Interference
        K: TopOpeBRepDS_Interference

        Returns
        -------
        bool

        """
        return _TopOpeBRepDS.TopOpeBRepDS_Association_AreAssociated(self, *args)

    def Associate(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        I: TopOpeBRepDS_Interference
        K: TopOpeBRepDS_Interference

        Returns
        -------
        None
        No available documentation.

        Parameters
        ----------
        I: TopOpeBRepDS_Interference
        LI: TopOpeBRepDS_ListOfInterference

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_Association_Associate(self, *args)

    def Associated(self, *args) -> "TopOpeBRepDS_ListOfInterference &":
        r"""
        No available documentation.

        Parameters
        ----------
        I: TopOpeBRepDS_Interference

        Returns
        -------
        TopOpeBRepDS_ListOfInterference

        """
        return _TopOpeBRepDS.TopOpeBRepDS_Association_Associated(self, *args)

    def HasAssociation(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Parameters
        ----------
        I: TopOpeBRepDS_Interference

        Returns
        -------
        bool

        """
        return _TopOpeBRepDS.TopOpeBRepDS_Association_HasAssociation(self, *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

    def __init__(self, *args):
        r"""
        No available documentation.

        Returns
        -------
        None
        No available documentation.

        Parameters
        ----------
        OutCurveType: TopOpeBRepTool_OutCurveType

        Returns
        -------
        None
        No available documentation.

        Parameters
        ----------
        GT: TopOpeBRepTool_GeomTool

        Returns
        -------
        None

        """
        _TopOpeBRepDS.TopOpeBRepDS_BuildTool_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_BuildTool(*args))

    def AddEdgeVertex(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        Ein: TopoDS_Shape
        Eou: TopoDS_Shape
        V: TopoDS_Shape

        Returns
        -------
        None
        No available documentation.

        Parameters
        ----------
        E: TopoDS_Shape
        V: TopoDS_Shape

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_BuildTool_AddEdgeVertex(self, *args)

    def AddFaceWire(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        F: TopoDS_Shape
        W: TopoDS_Shape

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_BuildTool_AddFaceWire(self, *args)

    def AddShellFace(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        Sh: TopoDS_Shape
        F: TopoDS_Shape

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_BuildTool_AddShellFace(self, *args)

    def AddSolidShell(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        S: TopoDS_Shape
        Sh: TopoDS_Shape

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_BuildTool_AddSolidShell(self, *args)

    def AddWireEdge(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        W: TopoDS_Shape
        E: TopoDS_Shape

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_BuildTool_AddWireEdge(self, *args)

    def ApproxCurves(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        C: TopOpeBRepDS_Curve
        E: TopoDS_Edge
        HDS: TopOpeBRepDS_HDataStructure

        Returns
        -------
        inewC: int

        """
        return _TopOpeBRepDS.TopOpeBRepDS_BuildTool_ApproxCurves(self, *args)

    def Approximation(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Returns
        -------
        bool

        """
        return _TopOpeBRepDS.TopOpeBRepDS_BuildTool_Approximation(self, *args)

    def ChangeGeomTool(self, *args) -> "TopOpeBRepTool_GeomTool &":
        r"""
        No available documentation.

        Returns
        -------
        TopOpeBRepTool_GeomTool

        """
        return _TopOpeBRepDS.TopOpeBRepDS_BuildTool_ChangeGeomTool(self, *args)

    def Closed(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        S: TopoDS_Shape
        B: bool

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_BuildTool_Closed(self, *args)

    def ComputePCurves(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        C: TopOpeBRepDS_Curve
        E: TopoDS_Edge
        newC: TopOpeBRepDS_Curve
        CompPC1: bool
        CompPC2: bool
        CompC3D: bool

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_BuildTool_ComputePCurves(self, *args)

    def CopyEdge(self, *args) -> "void":
        r"""
        Make an edge <eou> with the curve of the edge <ein>.

        Parameters
        ----------
        Ein: TopoDS_Shape
        Eou: TopoDS_Shape

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_BuildTool_CopyEdge(self, *args)

    def CopyFace(self, *args) -> "void":
        r"""
        Make a face <fou> with the surface of the face <fin>.

        Parameters
        ----------
        Fin: TopoDS_Shape
        Fou: TopoDS_Shape

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_BuildTool_CopyFace(self, *args)

    def Curve3D(self, *args) -> "void":
        r"""
        Sets the curve <c> for the edge <e>.

        Parameters
        ----------
        E: TopoDS_Shape
        C: Geom_Curve
        Tol: float

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_BuildTool_Curve3D(self, *args)

    def GetGeomTool(self, *args) -> "TopOpeBRepTool_GeomTool const &":
        r"""
        No available documentation.

        Returns
        -------
        TopOpeBRepTool_GeomTool

        """
        return _TopOpeBRepDS.TopOpeBRepDS_BuildTool_GetGeomTool(self, *args)

    def GetOrientedEdgeVertices(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        E: TopoDS_Edge
        Vmin: TopoDS_Vertex
        Vmax: TopoDS_Vertex

        Returns
        -------
        Parmin: float
        Parmax: float

        """
        return _TopOpeBRepDS.TopOpeBRepDS_BuildTool_GetOrientedEdgeVertices(self, *args)

    def MakeEdge(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        E: TopoDS_Shape
        C: TopOpeBRepDS_Curve

        Returns
        -------
        None
        No available documentation.

        Parameters
        ----------
        E: TopoDS_Shape
        C: TopOpeBRepDS_Curve
        DS: TopOpeBRepDS_DataStructure

        Returns
        -------
        None
        No available documentation.

        Parameters
        ----------
        E: TopoDS_Shape
        C: Geom_Curve
        Tol: float

        Returns
        -------
        None
        No available documentation.

        Parameters
        ----------
        E: TopoDS_Shape

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_BuildTool_MakeEdge(self, *args)

    def MakeFace(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        F: TopoDS_Shape
        S: TopOpeBRepDS_Surface

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_BuildTool_MakeFace(self, *args)

    def MakeShell(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        Sh: TopoDS_Shape

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_BuildTool_MakeShell(self, *args)

    def MakeSolid(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        S: TopoDS_Shape

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_BuildTool_MakeSolid(self, *args)

    def MakeVertex(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        V: TopoDS_Shape
        P: TopOpeBRepDS_Point

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_BuildTool_MakeVertex(self, *args)

    def MakeWire(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        W: TopoDS_Shape

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_BuildTool_MakeWire(self, *args)

    def Orientation(self, *args) -> "TopAbs_Orientation":
        r"""
        No available documentation.

        Parameters
        ----------
        S: TopoDS_Shape
        O: TopAbs_Orientation

        Returns
        -------
        None
        No available documentation.

        Parameters
        ----------
        S: TopoDS_Shape

        Returns
        -------
        TopAbs_Orientation

        """
        return _TopOpeBRepDS.TopOpeBRepDS_BuildTool_Orientation(self, *args)

    def OverWrite(self, *args) -> "void":
        r"""
        No available documentation.

        Returns
        -------
        bool
        No available documentation.

        Parameters
        ----------
        O: bool

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_BuildTool_OverWrite(self, *args)

    def PCurve(self, *args) -> "void":
        r"""
        Sets the pcurve <c> for the edge <e> on the face <f>. if overwrite is true the old pcurve if there is one is overwritten, else the two pcurves are set.

        Parameters
        ----------
        F: TopoDS_Shape
        E: TopoDS_Shape
        C: Geom2d_Curve

        Returns
        -------
        None
        No available documentation.

        Parameters
        ----------
        F: TopoDS_Shape
        E: TopoDS_Shape
        CDS: TopOpeBRepDS_Curve
        C: Geom2d_Curve

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_BuildTool_PCurve(self, *args)

    def Parameter(self, *args) -> "void":
        r"""
        Sets the parameter <p> for the vertex <v> on the edge <e>.

        Parameters
        ----------
        E: TopoDS_Shape
        V: TopoDS_Shape
        P: float

        Returns
        -------
        None
        Compute the parameter of the vertex <v>, supported by the edge <e>, on the curve <c>.

        Parameters
        ----------
        C: TopOpeBRepDS_Curve
        E: TopoDS_Shape
        V: TopoDS_Shape

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_BuildTool_Parameter(self, *args)

    def PutPCurves(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        newC: TopOpeBRepDS_Curve
        E: TopoDS_Edge
        CompPC1: bool
        CompPC2: bool

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_BuildTool_PutPCurves(self, *args)

    def Range(self, *args) -> "void":
        r"""
        Sets the range of edge <e>.

        Parameters
        ----------
        E: TopoDS_Shape
        first: float
        last: float

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_BuildTool_Range(self, *args)

    def RecomputeCurves(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        C: TopOpeBRepDS_Curve
        oldE: TopoDS_Edge
        E: TopoDS_Edge
        HDS: TopOpeBRepDS_HDataStructure

        Returns
        -------
        inewC: int

        """
        return _TopOpeBRepDS.TopOpeBRepDS_BuildTool_RecomputeCurves(self, *args)

    def Translate(self, *args) -> "void":
        r"""
        No available documentation.

        Returns
        -------
        bool
        No available documentation.

        Parameters
        ----------
        T: bool

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_BuildTool_Translate(self, *args)

    def UpdateEdge(self, *args) -> "void":
        r"""
        Sets the range of edge <eou> from <ein> only when <ein> has a closed geometry.

        Parameters
        ----------
        Ein: TopoDS_Shape
        Eou: TopoDS_Shape

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_BuildTool_UpdateEdge(self, *args)

    def UpdateEdgeCurveTol(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        F1: TopoDS_Face
        F2: TopoDS_Face
        E: TopoDS_Edge
        C3Dnew: Geom_Curve
        tol3d: float
        tol2d1: float
        tol2d2: float

        Returns
        -------
        newtol: float
        newparmin: float
        newparmax: float

        """
        return _TopOpeBRepDS.TopOpeBRepDS_BuildTool_UpdateEdgeCurveTol(self, *args)

    def UpdateSurface(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        F: TopoDS_Shape
        SU: Geom_Surface

        Returns
        -------
        None
        No available documentation.

        Parameters
        ----------
        E: TopoDS_Shape
        oldF: TopoDS_Shape
        newF: TopoDS_Shape

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_BuildTool_UpdateSurface(self, *args)

    __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

    def __init__(self, *args):
        r"""
        No available documentation.

        Returns
        -------
        None
        No available documentation.

        Parameters
        ----------
        HDS: TopOpeBRepDS_HDataStructure

        Returns
        -------
        None

        """
        _TopOpeBRepDS.TopOpeBRepDS_Check_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_Check(*args))

    def ChangeHDS(self, *args) -> "opencascade::handle< TopOpeBRepDS_HDataStructure > &":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<TopOpeBRepDS_HDataStructure>

        """
        return _TopOpeBRepDS.TopOpeBRepDS_Check_ChangeHDS(self, *args)

    def CheckDS(self, *args) -> "Standard_Boolean":
        r"""
        Verifie que le ieme element de la ds existe, et pour un k de type topologique, verifie qu'il est du bon type (vertex, edge, wire, face, shell ou solid).

        Parameters
        ----------
        i: int
        K: TopOpeBRepDS_Kind

        Returns
        -------
        bool

        """
        return _TopOpeBRepDS.TopOpeBRepDS_Check_CheckDS(self, *args)

    def CheckShapes(self, *args) -> "Standard_Boolean":
        r"""
        Verifie que les shapes existent bien dans la ds utile pour les shapes samedomain si la liste est vide, renvoie vrai.

        Parameters
        ----------
        LS: TopTools_ListOfShape

        Returns
        -------
        bool

        """
        return _TopOpeBRepDS.TopOpeBRepDS_Check_CheckShapes(self, *args)

    def ChkIntg(self, *args) -> "Standard_Boolean":
        r"""
        Check integrition of ds.

        Returns
        -------
        bool

        """
        return _TopOpeBRepDS.TopOpeBRepDS_Check_ChkIntg(self, *args)

    def ChkIntgInterf(self, *args) -> "Standard_Boolean":
        r"""
        Check integrition of interferences (les supports et les geometries de li).

        Parameters
        ----------
        LI: TopOpeBRepDS_ListOfInterference

        Returns
        -------
        bool

        """
        return _TopOpeBRepDS.TopOpeBRepDS_Check_ChkIntgInterf(self, *args)

    def ChkIntgSamDom(self, *args) -> "Standard_Boolean":
        r"""
        Check integrition des champs samedomain de la ds.

        Returns
        -------
        bool

        """
        return _TopOpeBRepDS.TopOpeBRepDS_Check_ChkIntgSamDom(self, *args)

    def HDS(self, *args) -> "opencascade::handle< TopOpeBRepDS_HDataStructure > const &":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<TopOpeBRepDS_HDataStructure>

        """
        return _TopOpeBRepDS.TopOpeBRepDS_Check_HDS(self, *args)

    def OneVertexOnPnt(self, *args) -> "Standard_Boolean":
        r"""
        Verifie que les vertex non samedomain sont bien nonsamedomain, que les vertex samedomain sont bien samedomain, que les points sont non confondus ni entre eux, ni avec des vertex.

        Returns
        -------
        bool

        """
        return _TopOpeBRepDS.TopOpeBRepDS_Check_OneVertexOnPnt(self, *args)

    def PrintIntgToString(self) -> "std::string":
        r"""PrintIntgToString(TopOpeBRepDS_Check self) -> std::string"""
        return _TopOpeBRepDS.TopOpeBRepDS_Check_PrintIntgToString(self)


    @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

    def __init__(self, *args):
        r"""
        No available documentation.

        Returns
        -------
        None
        No available documentation.

        Parameters
        ----------
        P: Geom_Curve
        T: float
        IsWalk: bool,optional
        	default value is Standard_False

        Returns
        -------
        None

        """
        _TopOpeBRepDS.TopOpeBRepDS_Curve_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_Curve(*args))

    def ChangeCurve(self, *args) -> "opencascade::handle< Geom_Curve > &":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<Geom_Curve>

        """
        return _TopOpeBRepDS.TopOpeBRepDS_Curve_ChangeCurve(self, *args)

    def ChangeDSIndex(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        I: int

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_Curve_ChangeDSIndex(self, *args)

    def ChangeIsWalk(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        B: bool

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_Curve_ChangeIsWalk(self, *args)

    def ChangeKeep(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        B: bool

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_Curve_ChangeKeep(self, *args)

    def ChangeMother(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        I: int

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_Curve_ChangeMother(self, *args)

    def ChangeShape1(self, *args) -> "TopoDS_Shape":
        r"""
        No available documentation.

        Returns
        -------
        TopoDS_Shape

        """
        return _TopOpeBRepDS.TopOpeBRepDS_Curve_ChangeShape1(self, *args)

    def ChangeShape2(self, *args) -> "TopoDS_Shape":
        r"""
        No available documentation.

        Returns
        -------
        TopoDS_Shape

        """
        return _TopOpeBRepDS.TopOpeBRepDS_Curve_ChangeShape2(self, *args)

    def Curve(self, *args) -> "void":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<Geom_Curve>
        No available documentation.

        Parameters
        ----------
        C3D: Geom_Curve
        Tol: float

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_Curve_Curve(self, *args)

    def Curve1(self, *args) -> "void":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<Geom2d_Curve>
        No available documentation.

        Parameters
        ----------
        PC1: Geom2d_Curve

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_Curve_Curve1(self, *args)

    def Curve2(self, *args) -> "void":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<Geom2d_Curve>
        No available documentation.

        Parameters
        ----------
        PC2: Geom2d_Curve

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_Curve_Curve2(self, *args)

    def DSIndex(self, *args) -> "Standard_Integer":
        r"""
        No available documentation.

        Returns
        -------
        int

        """
        return _TopOpeBRepDS.TopOpeBRepDS_Curve_DSIndex(self, *args)

    def DefineCurve(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        P: Geom_Curve
        T: float
        IsWalk: bool

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_Curve_DefineCurve(self, *args)

    def GetSCI(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        I1: TopOpeBRepDS_Interference
        I2: TopOpeBRepDS_Interference

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_Curve_GetSCI(self, *args)

    def GetSCI1(self, *args) -> "opencascade::handle< TopOpeBRepDS_Interference > const &":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<TopOpeBRepDS_Interference>

        """
        return _TopOpeBRepDS.TopOpeBRepDS_Curve_GetSCI1(self, *args)

    def GetSCI2(self, *args) -> "opencascade::handle< TopOpeBRepDS_Interference > const &":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<TopOpeBRepDS_Interference>

        """
        return _TopOpeBRepDS.TopOpeBRepDS_Curve_GetSCI2(self, *args)

    def GetShapes(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        S1: TopoDS_Shape
        S2: TopoDS_Shape

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_Curve_GetShapes(self, *args)

    def IsWalk(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Returns
        -------
        bool

        """
        return _TopOpeBRepDS.TopOpeBRepDS_Curve_IsWalk(self, *args)

    def Keep(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Returns
        -------
        bool

        """
        return _TopOpeBRepDS.TopOpeBRepDS_Curve_Keep(self, *args)

    def Mother(self, *args) -> "Standard_Integer":
        r"""
        No available documentation.

        Returns
        -------
        int

        """
        return _TopOpeBRepDS.TopOpeBRepDS_Curve_Mother(self, *args)

    def Range(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Parameters
        ----------

        Returns
        -------
        First: float
        Last: float

        """
        return _TopOpeBRepDS.TopOpeBRepDS_Curve_Range(self, *args)

    def SetRange(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        First: float
        Last: float

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_Curve_SetRange(self, *args)

    def SetSCI(self, *args) -> "void":
        r"""
        Define the interferences face/curve.

        Parameters
        ----------
        I1: TopOpeBRepDS_Interference
        I2: TopOpeBRepDS_Interference

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_Curve_SetSCI(self, *args)

    def SetShapes(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        S1: TopoDS_Shape
        S2: TopoDS_Shape

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_Curve_SetShapes(self, *args)

    def Shape1(self, *args) -> "TopoDS_Shape const":
        r"""
        No available documentation.

        Returns
        -------
        TopoDS_Shape

        """
        return _TopOpeBRepDS.TopOpeBRepDS_Curve_Shape1(self, *args)

    def Shape2(self, *args) -> "TopoDS_Shape const":
        r"""
        No available documentation.

        Returns
        -------
        TopoDS_Shape

        """
        return _TopOpeBRepDS.TopOpeBRepDS_Curve_Shape2(self, *args)

    def Tolerance(self, *args) -> "Standard_Real":
        r"""
        Update the tolerance.

        Parameters
        ----------
        tol: float

        Returns
        -------
        None
        No available documentation.

        Returns
        -------
        float

        """
        return _TopOpeBRepDS.TopOpeBRepDS_Curve_Tolerance(self, *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

    def __init__(self, *args):
        r"""
        No available documentation.

        Returns
        -------
        None
        No available documentation.

        Parameters
        ----------
        DS: TopOpeBRepDS_DataStructure
        FindOnlyKeep: bool,optional
        	default value is Standard_True

        Returns
        -------
        None

        """
        _TopOpeBRepDS.TopOpeBRepDS_CurveExplorer_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_CurveExplorer(*args))

    def Curve(self, *args) -> "TopOpeBRepDS_Curve const &":
        r"""
        No available documentation.

        Returns
        -------
        TopOpeBRepDS_Curve
        No available documentation.

        Parameters
        ----------
        I: int

        Returns
        -------
        TopOpeBRepDS_Curve

        """
        return _TopOpeBRepDS.TopOpeBRepDS_CurveExplorer_Curve(self, *args)

    def Index(self, *args) -> "Standard_Integer":
        r"""
        No available documentation.

        Returns
        -------
        int

        """
        return _TopOpeBRepDS.TopOpeBRepDS_CurveExplorer_Index(self, *args)

    def Init(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        DS: TopOpeBRepDS_DataStructure
        FindOnlyKeep: bool,optional
        	default value is Standard_True

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_CurveExplorer_Init(self, *args)

    def IsCurve(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Parameters
        ----------
        I: int

        Returns
        -------
        bool

        """
        return _TopOpeBRepDS.TopOpeBRepDS_CurveExplorer_IsCurve(self, *args)

    def IsCurveKeep(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Parameters
        ----------
        I: int

        Returns
        -------
        bool

        """
        return _TopOpeBRepDS.TopOpeBRepDS_CurveExplorer_IsCurveKeep(self, *args)

    def More(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Returns
        -------
        bool

        """
        return _TopOpeBRepDS.TopOpeBRepDS_CurveExplorer_More(self, *args)

    def NbCurve(self, *args) -> "Standard_Integer":
        r"""
        No available documentation.

        Returns
        -------
        int

        """
        return _TopOpeBRepDS.TopOpeBRepDS_CurveExplorer_NbCurve(self, *args)

    def Next(self, *args) -> "void":
        r"""
        No available documentation.

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_CurveExplorer_Next(self, *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

    def __init__(self, *args):
        r"""
        No available documentation.

        Returns
        -------
        None

        """
        _TopOpeBRepDS.TopOpeBRepDS_DataStructure_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_DataStructure(*args))

    def AddCurve(self, *args) -> "Standard_Integer":
        r"""
        Insert a new curve. returns the index.

        Parameters
        ----------
        S: TopOpeBRepDS_Curve

        Returns
        -------
        int

        """
        return _TopOpeBRepDS.TopOpeBRepDS_DataStructure_AddCurve(self, *args)

    def AddPoint(self, *args) -> "Standard_Integer":
        r"""
        Insert a new point. returns the index.

        Parameters
        ----------
        PDS: TopOpeBRepDS_Point

        Returns
        -------
        int

        """
        return _TopOpeBRepDS.TopOpeBRepDS_DataStructure_AddPoint(self, *args)

    def AddPointSS(self, *args) -> "Standard_Integer":
        r"""
        Insert a new point. returns the index.

        Parameters
        ----------
        PDS: TopOpeBRepDS_Point
        S1: TopoDS_Shape
        S2: TopoDS_Shape

        Returns
        -------
        int

        """
        return _TopOpeBRepDS.TopOpeBRepDS_DataStructure_AddPointSS(self, *args)

    def AddSectionEdge(self, *args) -> "Standard_Integer":
        r"""
        No available documentation.

        Parameters
        ----------
        E: TopoDS_Edge

        Returns
        -------
        int

        """
        return _TopOpeBRepDS.TopOpeBRepDS_DataStructure_AddSectionEdge(self, *args)

    def AddShape(self, *args) -> "Standard_Integer":
        r"""
        Insert a shape s. returns the index.

        Parameters
        ----------
        S: TopoDS_Shape

        Returns
        -------
        int
        Insert a shape s which ancestor is i = 1 or 2. returns the index.

        Parameters
        ----------
        S: TopoDS_Shape
        I: int

        Returns
        -------
        int

        """
        return _TopOpeBRepDS.TopOpeBRepDS_DataStructure_AddShape(self, *args)

    def AddShapeInterference(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        S: TopoDS_Shape
        I: TopOpeBRepDS_Interference

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_DataStructure_AddShapeInterference(self, *args)

    def AddShapeSameDomain(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        S: TopoDS_Shape
        SSD: TopoDS_Shape

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_DataStructure_AddShapeSameDomain(self, *args)

    def AddSurface(self, *args) -> "Standard_Integer":
        r"""
        Insert a new surface. returns the index.

        Parameters
        ----------
        S: TopOpeBRepDS_Surface

        Returns
        -------
        int

        """
        return _TopOpeBRepDS.TopOpeBRepDS_DataStructure_AddSurface(self, *args)

    def AncestorRank(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        I: int

        Returns
        -------
        int
        No available documentation.

        Parameters
        ----------
        S: TopoDS_Shape

        Returns
        -------
        int
        No available documentation.

        Parameters
        ----------
        I: int
        Ianc: int

        Returns
        -------
        None
        No available documentation.

        Parameters
        ----------
        S: TopoDS_Shape
        Ianc: int

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_DataStructure_AncestorRank(self, *args)

    def ChangeCurve(self, *args) -> "TopOpeBRepDS_Curve &":
        r"""
        Returns the curve of index <i>.

        Parameters
        ----------
        I: int

        Returns
        -------
        TopOpeBRepDS_Curve

        """
        return _TopOpeBRepDS.TopOpeBRepDS_DataStructure_ChangeCurve(self, *args)

    def ChangeCurveInterferences(self, *args) -> "TopOpeBRepDS_ListOfInterference &":
        r"""
        No available documentation.

        Parameters
        ----------
        I: int

        Returns
        -------
        TopOpeBRepDS_ListOfInterference

        """
        return _TopOpeBRepDS.TopOpeBRepDS_DataStructure_ChangeCurveInterferences(self, *args)

    def ChangeKeepCurve(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        I: int
        FindKeep: bool

        Returns
        -------
        None
        No available documentation.

        Parameters
        ----------
        C: TopOpeBRepDS_Curve
        FindKeep: bool

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_DataStructure_ChangeKeepCurve(self, *args)

    def ChangeKeepPoint(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        I: int
        FindKeep: bool

        Returns
        -------
        None
        No available documentation.

        Parameters
        ----------
        P: TopOpeBRepDS_Point
        FindKeep: bool

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_DataStructure_ChangeKeepPoint(self, *args)

    def ChangeKeepShape(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        I: int
        FindKeep: bool

        Returns
        -------
        None
        No available documentation.

        Parameters
        ----------
        S: TopoDS_Shape
        FindKeep: bool

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_DataStructure_ChangeKeepShape(self, *args)

    def ChangeKeepSurface(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        I: int
        FindKeep: bool

        Returns
        -------
        None
        No available documentation.

        Parameters
        ----------
        S: TopOpeBRepDS_Surface
        FindKeep: bool

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_DataStructure_ChangeKeepSurface(self, *args)

    def ChangeMapOfRejectedShapesObj(self, *args) -> "TopTools_IndexedMapOfShape &":
        r"""
        No available documentation.

        Returns
        -------
        TopTools_IndexedMapOfShape

        """
        return _TopOpeBRepDS.TopOpeBRepDS_DataStructure_ChangeMapOfRejectedShapesObj(self, *args)

    def ChangeMapOfRejectedShapesTool(self, *args) -> "TopTools_IndexedMapOfShape &":
        r"""
        No available documentation.

        Returns
        -------
        TopTools_IndexedMapOfShape

        """
        return _TopOpeBRepDS.TopOpeBRepDS_DataStructure_ChangeMapOfRejectedShapesTool(self, *args)

    def ChangeMapOfShapeWithState(self, *args) -> "TopOpeBRepDS_IndexedDataMapOfShapeWithState &":
        r"""
        No available documentation.

        Parameters
        ----------
        aShape: TopoDS_Shape

        Returns
        -------
        aFlag: bool

        """
        return _TopOpeBRepDS.TopOpeBRepDS_DataStructure_ChangeMapOfShapeWithState(self, *args)

    def ChangeMapOfShapeWithStateObj(self, *args) -> "TopOpeBRepDS_IndexedDataMapOfShapeWithState &":
        r"""
        No available documentation.

        Returns
        -------
        TopOpeBRepDS_IndexedDataMapOfShapeWithState

        """
        return _TopOpeBRepDS.TopOpeBRepDS_DataStructure_ChangeMapOfShapeWithStateObj(self, *args)

    def ChangeMapOfShapeWithStateTool(self, *args) -> "TopOpeBRepDS_IndexedDataMapOfShapeWithState &":
        r"""
        No available documentation.

        Returns
        -------
        TopOpeBRepDS_IndexedDataMapOfShapeWithState

        """
        return _TopOpeBRepDS.TopOpeBRepDS_DataStructure_ChangeMapOfShapeWithStateTool(self, *args)

    def ChangeNbCurves(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        N: int

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_DataStructure_ChangeNbCurves(self, *args)

    def ChangePoint(self, *args) -> "TopOpeBRepDS_Point &":
        r"""
        Returns the point of index <i>.

        Parameters
        ----------
        I: int

        Returns
        -------
        TopOpeBRepDS_Point

        """
        return _TopOpeBRepDS.TopOpeBRepDS_DataStructure_ChangePoint(self, *args)

    def ChangePointInterferences(self, *args) -> "TopOpeBRepDS_ListOfInterference &":
        r"""
        No available documentation.

        Parameters
        ----------
        I: int

        Returns
        -------
        TopOpeBRepDS_ListOfInterference

        """
        return _TopOpeBRepDS.TopOpeBRepDS_DataStructure_ChangePointInterferences(self, *args)

    def ChangeShapeInterferences(self, *args) -> "TopOpeBRepDS_ListOfInterference &":
        r"""
        No available documentation.

        Parameters
        ----------
        S: TopoDS_Shape

        Returns
        -------
        TopOpeBRepDS_ListOfInterference
        No available documentation.

        Parameters
        ----------
        I: int

        Returns
        -------
        TopOpeBRepDS_ListOfInterference

        """
        return _TopOpeBRepDS.TopOpeBRepDS_DataStructure_ChangeShapeInterferences(self, *args)

    def ChangeShapeSameDomain(self, *args) -> "TopTools_ListOfShape &":
        r"""
        No available documentation.

        Parameters
        ----------
        S: TopoDS_Shape

        Returns
        -------
        TopTools_ListOfShape
        No available documentation.

        Parameters
        ----------
        I: int

        Returns
        -------
        TopTools_ListOfShape

        """
        return _TopOpeBRepDS.TopOpeBRepDS_DataStructure_ChangeShapeSameDomain(self, *args)

    def ChangeShapes(self, *args) -> "TopOpeBRepDS_MapOfShapeData &":
        r"""
        No available documentation.

        Returns
        -------
        TopOpeBRepDS_MapOfShapeData

        """
        return _TopOpeBRepDS.TopOpeBRepDS_DataStructure_ChangeShapes(self, *args)

    def ChangeSurface(self, *args) -> "TopOpeBRepDS_Surface &":
        r"""
        Returns the surface of index <i>.

        Parameters
        ----------
        I: int

        Returns
        -------
        TopOpeBRepDS_Surface

        """
        return _TopOpeBRepDS.TopOpeBRepDS_DataStructure_ChangeSurface(self, *args)

    def ChangeSurfaceInterferences(self, *args) -> "TopOpeBRepDS_ListOfInterference &":
        r"""
        No available documentation.

        Parameters
        ----------
        I: int

        Returns
        -------
        TopOpeBRepDS_ListOfInterference

        """
        return _TopOpeBRepDS.TopOpeBRepDS_DataStructure_ChangeSurfaceInterferences(self, *args)

    def Curve(self, *args) -> "TopOpeBRepDS_Curve const &":
        r"""
        Returns the curve of index <i>.

        Parameters
        ----------
        I: int

        Returns
        -------
        TopOpeBRepDS_Curve

        """
        return _TopOpeBRepDS.TopOpeBRepDS_DataStructure_Curve(self, *args)

    def CurveInterferences(self, *args) -> "TopOpeBRepDS_ListOfInterference const &":
        r"""
        No available documentation.

        Parameters
        ----------
        I: int

        Returns
        -------
        TopOpeBRepDS_ListOfInterference

        """
        return _TopOpeBRepDS.TopOpeBRepDS_DataStructure_CurveInterferences(self, *args)

    def FillShapesSameDomain(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        S1: TopoDS_Shape
        S2: TopoDS_Shape
        refFirst: bool,optional
        	default value is Standard_True

        Returns
        -------
        None
        No available documentation.

        Parameters
        ----------
        S1: TopoDS_Shape
        S2: TopoDS_Shape
        c1: TopOpeBRepDS_Config
        c2: TopOpeBRepDS_Config
        refFirst: bool,optional
        	default value is Standard_True

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_DataStructure_FillShapesSameDomain(self, *args)

    def GetShapeWithState(self, *args) -> "TopOpeBRepDS_ShapeWithState const &":
        r"""
        No available documentation.

        Parameters
        ----------
        aShape: TopoDS_Shape

        Returns
        -------
        TopOpeBRepDS_ShapeWithState

        """
        return _TopOpeBRepDS.TopOpeBRepDS_DataStructure_GetShapeWithState(self, *args)

    def HasGeometry(self, *args) -> "Standard_Boolean":
        r"""
        Returns true if <s> has new geometries, i.e : true si : hasshape(s) true s a une liste d'interferences non vide. s = solid, face, edge : true/false s = shell, wire, vertex : false.

        Parameters
        ----------
        S: TopoDS_Shape

        Returns
        -------
        bool

        """
        return _TopOpeBRepDS.TopOpeBRepDS_DataStructure_HasGeometry(self, *args)

    def HasNewSurface(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Parameters
        ----------
        F: TopoDS_Shape

        Returns
        -------
        bool

        """
        return _TopOpeBRepDS.TopOpeBRepDS_DataStructure_HasNewSurface(self, *args)

    def HasShape(self, *args) -> "Standard_Boolean":
        r"""
        Returns true if <s> est dans myshapes.

        Parameters
        ----------
        S: TopoDS_Shape
        FindKeep: bool,optional
        	default value is Standard_True

        Returns
        -------
        bool

        """
        return _TopOpeBRepDS.TopOpeBRepDS_DataStructure_HasShape(self, *args)

    def Init(self, *args) -> "void":
        r"""
        Reset the data structure.

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_DataStructure_Init(self, *args)

    def InitSectionEdges(self, *args) -> "void":
        r"""
        No available documentation.

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_DataStructure_InitSectionEdges(self, *args)

    def IsSectionEdge(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Parameters
        ----------
        E: TopoDS_Edge
        FindKeep: bool,optional
        	default value is Standard_True

        Returns
        -------
        bool

        """
        return _TopOpeBRepDS.TopOpeBRepDS_DataStructure_IsSectionEdge(self, *args)

    def Isfafa(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Parameters
        ----------
        isfafa: bool

        Returns
        -------
        None
        No available documentation.

        Returns
        -------
        bool

        """
        return _TopOpeBRepDS.TopOpeBRepDS_DataStructure_Isfafa(self, *args)

    def KeepCurve(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Parameters
        ----------
        I: int

        Returns
        -------
        bool
        No available documentation.

        Parameters
        ----------
        C: TopOpeBRepDS_Curve

        Returns
        -------
        bool

        """
        return _TopOpeBRepDS.TopOpeBRepDS_DataStructure_KeepCurve(self, *args)

    def KeepPoint(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Parameters
        ----------
        I: int

        Returns
        -------
        bool
        No available documentation.

        Parameters
        ----------
        P: TopOpeBRepDS_Point

        Returns
        -------
        bool

        """
        return _TopOpeBRepDS.TopOpeBRepDS_DataStructure_KeepPoint(self, *args)

    def KeepShape(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Parameters
        ----------
        I: int
        FindKeep: bool,optional
        	default value is Standard_True

        Returns
        -------
        bool
        No available documentation.

        Parameters
        ----------
        S: TopoDS_Shape
        FindKeep: bool,optional
        	default value is Standard_True

        Returns
        -------
        bool

        """
        return _TopOpeBRepDS.TopOpeBRepDS_DataStructure_KeepShape(self, *args)

    def KeepSurface(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Parameters
        ----------
        I: int

        Returns
        -------
        bool
        No available documentation.

        Parameters
        ----------
        S: TopOpeBRepDS_Surface

        Returns
        -------
        bool

        """
        return _TopOpeBRepDS.TopOpeBRepDS_DataStructure_KeepSurface(self, *args)

    def NbCurves(self, *args) -> "Standard_Integer":
        r"""
        No available documentation.

        Returns
        -------
        int

        """
        return _TopOpeBRepDS.TopOpeBRepDS_DataStructure_NbCurves(self, *args)

    def NbPoints(self, *args) -> "Standard_Integer":
        r"""
        No available documentation.

        Returns
        -------
        int

        """
        return _TopOpeBRepDS.TopOpeBRepDS_DataStructure_NbPoints(self, *args)

    def NbSectionEdges(self, *args) -> "Standard_Integer":
        r"""
        No available documentation.

        Returns
        -------
        int

        """
        return _TopOpeBRepDS.TopOpeBRepDS_DataStructure_NbSectionEdges(self, *args)

    def NbShapes(self, *args) -> "Standard_Integer":
        r"""
        No available documentation.

        Returns
        -------
        int

        """
        return _TopOpeBRepDS.TopOpeBRepDS_DataStructure_NbShapes(self, *args)

    def NbSurfaces(self, *args) -> "Standard_Integer":
        r"""
        No available documentation.

        Returns
        -------
        int

        """
        return _TopOpeBRepDS.TopOpeBRepDS_DataStructure_NbSurfaces(self, *args)

    def NewSurface(self, *args) -> "opencascade::handle< Geom_Surface > const &":
        r"""
        No available documentation.

        Parameters
        ----------
        F: TopoDS_Shape

        Returns
        -------
        opencascade::handle<Geom_Surface>

        """
        return _TopOpeBRepDS.TopOpeBRepDS_DataStructure_NewSurface(self, *args)

    def Point(self, *args) -> "TopOpeBRepDS_Point const &":
        r"""
        Returns the point of index <i>.

        Parameters
        ----------
        I: int

        Returns
        -------
        TopOpeBRepDS_Point

        """
        return _TopOpeBRepDS.TopOpeBRepDS_DataStructure_Point(self, *args)

    def PointInterferences(self, *args) -> "TopOpeBRepDS_ListOfInterference const &":
        r"""
        No available documentation.

        Parameters
        ----------
        I: int

        Returns
        -------
        TopOpeBRepDS_ListOfInterference

        """
        return _TopOpeBRepDS.TopOpeBRepDS_DataStructure_PointInterferences(self, *args)

    def RemoveCurve(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        I: int

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_DataStructure_RemoveCurve(self, *args)

    def RemovePoint(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        I: int

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_DataStructure_RemovePoint(self, *args)

    def RemoveShapeInterference(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        S: TopoDS_Shape
        I: TopOpeBRepDS_Interference

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_DataStructure_RemoveShapeInterference(self, *args)

    def RemoveShapeSameDomain(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        S: TopoDS_Shape
        SSD: TopoDS_Shape

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_DataStructure_RemoveShapeSameDomain(self, *args)

    def RemoveSurface(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        I: int

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_DataStructure_RemoveSurface(self, *args)

    def SameDomainInd(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        I: int

        Returns
        -------
        int
        No available documentation.

        Parameters
        ----------
        S: TopoDS_Shape

        Returns
        -------
        int
        No available documentation.

        Parameters
        ----------
        I: int
        Ind: int

        Returns
        -------
        None
        No available documentation.

        Parameters
        ----------
        S: TopoDS_Shape
        Ind: int

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_DataStructure_SameDomainInd(self, *args)

    def SameDomainOri(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        I: int

        Returns
        -------
        TopOpeBRepDS_Config
        No available documentation.

        Parameters
        ----------
        S: TopoDS_Shape

        Returns
        -------
        TopOpeBRepDS_Config
        No available documentation.

        Parameters
        ----------
        I: int
        Ori: TopOpeBRepDS_Config

        Returns
        -------
        None
        No available documentation.

        Parameters
        ----------
        S: TopoDS_Shape
        Ori: TopOpeBRepDS_Config

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_DataStructure_SameDomainOri(self, *args)

    def SameDomainRef(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        I: int

        Returns
        -------
        int
        No available documentation.

        Parameters
        ----------
        S: TopoDS_Shape

        Returns
        -------
        int
        No available documentation.

        Parameters
        ----------
        I: int
        Ref: int

        Returns
        -------
        None
        No available documentation.

        Parameters
        ----------
        S: TopoDS_Shape
        Ref: int

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_DataStructure_SameDomainRef(self, *args)

    def SectionEdge(self, *args) -> "Standard_Integer":
        r"""
        No available documentation.

        Parameters
        ----------
        I: int
        FindKeep: bool,optional
        	default value is Standard_True

        Returns
        -------
        TopoDS_Edge
        No available documentation.

        Parameters
        ----------
        E: TopoDS_Edge
        FindKeep: bool,optional
        	default value is Standard_True

        Returns
        -------
        int

        """
        return _TopOpeBRepDS.TopOpeBRepDS_DataStructure_SectionEdge(self, *args)

    def SetNewSurface(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        F: TopoDS_Shape
        S: Geom_Surface

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_DataStructure_SetNewSurface(self, *args)

    def Shape(self, *args) -> "Standard_Integer":
        r"""
        Returns the shape of index i stored in the map myshapes, accessing a list of interference.

        Parameters
        ----------
        I: int
        FindKeep: bool,optional
        	default value is Standard_True

        Returns
        -------
        TopoDS_Shape
        Returns the index of shape <s> stored in the map myshapes, accessing a list of interference. returns 0 if <s> is not in the map.

        Parameters
        ----------
        S: TopoDS_Shape
        FindKeep: bool,optional
        	default value is Standard_True

        Returns
        -------
        int

        """
        return _TopOpeBRepDS.TopOpeBRepDS_DataStructure_Shape(self, *args)

    def ShapeInterferences(self, *args) -> "TopOpeBRepDS_ListOfInterference const &":
        r"""
        No available documentation.

        Parameters
        ----------
        S: TopoDS_Shape
        FindKeep: bool,optional
        	default value is Standard_True

        Returns
        -------
        TopOpeBRepDS_ListOfInterference
        No available documentation.

        Parameters
        ----------
        I: int
        FindKeep: bool,optional
        	default value is Standard_True

        Returns
        -------
        TopOpeBRepDS_ListOfInterference

        """
        return _TopOpeBRepDS.TopOpeBRepDS_DataStructure_ShapeInterferences(self, *args)

    def ShapeSameDomain(self, *args) -> "TopTools_ListOfShape const &":
        r"""
        No available documentation.

        Parameters
        ----------
        S: TopoDS_Shape

        Returns
        -------
        TopTools_ListOfShape
        No available documentation.

        Parameters
        ----------
        I: int

        Returns
        -------
        TopTools_ListOfShape

        """
        return _TopOpeBRepDS.TopOpeBRepDS_DataStructure_ShapeSameDomain(self, *args)

    def Surface(self, *args) -> "TopOpeBRepDS_Surface const &":
        r"""
        Returns the surface of index <i>.

        Parameters
        ----------
        I: int

        Returns
        -------
        TopOpeBRepDS_Surface

        """
        return _TopOpeBRepDS.TopOpeBRepDS_DataStructure_Surface(self, *args)

    def SurfaceInterferences(self, *args) -> "TopOpeBRepDS_ListOfInterference const &":
        r"""
        No available documentation.

        Parameters
        ----------
        I: int

        Returns
        -------
        TopOpeBRepDS_ListOfInterference

        """
        return _TopOpeBRepDS.TopOpeBRepDS_DataStructure_SurfaceInterferences(self, *args)

    def UnfillShapesSameDomain(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        S1: TopoDS_Shape
        S2: TopoDS_Shape

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_DataStructure_UnfillShapesSameDomain(self, *args)

    __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

    def __init__(self, *args):
        r"""
        No available documentation.

        Parameters
        ----------
        HDS: TopOpeBRepDS_HDataStructure

        Returns
        -------
        None

        """
        _TopOpeBRepDS.TopOpeBRepDS_Dumper_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_Dumper(*args))

    def SDumpRefOri(self, *args) -> "TCollection_AsciiString":
        r"""
        No available documentation.

        Parameters
        ----------
        K: TopOpeBRepDS_Kind
        I: int

        Returns
        -------
        TCollection_AsciiString
        No available documentation.

        Parameters
        ----------
        S: TopoDS_Shape

        Returns
        -------
        TCollection_AsciiString

        """
        return _TopOpeBRepDS.TopOpeBRepDS_Dumper_SDumpRefOri(self, *args)

    def SPrintShape(self, *args) -> "TCollection_AsciiString":
        r"""
        No available documentation.

        Parameters
        ----------
        I: int

        Returns
        -------
        TCollection_AsciiString
        No available documentation.

        Parameters
        ----------
        S: TopoDS_Shape

        Returns
        -------
        TCollection_AsciiString

        """
        return _TopOpeBRepDS.TopOpeBRepDS_Dumper_SPrintShape(self, *args)

    def SPrintShapeRefOri(self, *args) -> "TCollection_AsciiString":
        r"""
        No available documentation.

        Parameters
        ----------
        S: TopoDS_Shape
        B: TCollection_AsciiString,optional
        	default value is 

        Returns
        -------
        TCollection_AsciiString
        No available documentation.

        Parameters
        ----------
        L: TopTools_ListOfShape
        B: TCollection_AsciiString,optional
        	default value is 

        Returns
        -------
        TCollection_AsciiString

        """
        return _TopOpeBRepDS.TopOpeBRepDS_Dumper_SPrintShapeRefOri(self, *args)

    __repr__ = _dumps_object

    @methodnotwrapped
    def Print(self):
    	pass

    __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

    def __init__(self, *args):
        r"""
        No available documentation.

        Parameters
        ----------
        HDS: TopOpeBRepDS_HDataStructure

        Returns
        -------
        None

        """
        _TopOpeBRepDS.TopOpeBRepDS_EIR_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_EIR(*args))

    def ProcessEdgeInterferences(self, *args) -> "void":
        r"""
        No available documentation.

        Returns
        -------
        None
        No available documentation.

        Parameters
        ----------
        I: int

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_EIR_ProcessEdgeInterferences(self, *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

    def __init__(self, *args):
        r"""
        No available documentation.

        Returns
        -------
        None

        """
        _TopOpeBRepDS.TopOpeBRepDS_Edge3dInterferenceTool_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_Edge3dInterferenceTool(*args))

    def Add(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        Eref: TopoDS_Shape
        E: TopoDS_Shape
        F: TopoDS_Shape
        I: TopOpeBRepDS_Interference

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_Edge3dInterferenceTool_Add(self, *args)

    def Init(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        Eref: TopoDS_Shape
        E: TopoDS_Shape
        F: TopoDS_Shape
        I: TopOpeBRepDS_Interference

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_Edge3dInterferenceTool_Init(self, *args)

    def InitPointVertex(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        IsVertex: int
        VonOO: TopoDS_Shape

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_Edge3dInterferenceTool_InitPointVertex(self, *args)

    def Transition(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        I: TopOpeBRepDS_Interference

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_Edge3dInterferenceTool_Transition(self, *args)

    __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

    def __init__(self, *args):
        r"""
        No available documentation.

        Returns
        -------
        None

        """
        _TopOpeBRepDS.TopOpeBRepDS_EdgeInterferenceTool_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_EdgeInterferenceTool(*args))

    def Add(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        E: TopoDS_Shape
        V: TopoDS_Shape
        I: TopOpeBRepDS_Interference

        Returns
        -------
        None
        No available documentation.

        Parameters
        ----------
        E: TopoDS_Shape
        P: TopOpeBRepDS_Point
        I: TopOpeBRepDS_Interference

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_EdgeInterferenceTool_Add(self, *args)

    def Init(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        E: TopoDS_Shape
        I: TopOpeBRepDS_Interference

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_EdgeInterferenceTool_Init(self, *args)

    def Transition(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        I: TopOpeBRepDS_Interference

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_EdgeInterferenceTool_Transition(self, *args)

    __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

    def __init__(self, *args):
        r"""
        No available documentation.

        Returns
        -------
        None
        No available documentation.

        Parameters
        ----------
        HDS: TopOpeBRepDS_HDataStructure
        T: TopAbs_ShapeEnum,optional
        	default value is TopAbs_SHAPE
        findkeep: bool,optional
        	default value is Standard_True

        Returns
        -------
        None

        """
        _TopOpeBRepDS.TopOpeBRepDS_Explorer_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_Explorer(*args))

    def Current(self, *args) -> "TopoDS_Shape const":
        r"""
        No available documentation.

        Returns
        -------
        TopoDS_Shape

        """
        return _TopOpeBRepDS.TopOpeBRepDS_Explorer_Current(self, *args)

    def Edge(self, *args) -> "TopoDS_Edge const":
        r"""
        No available documentation.

        Returns
        -------
        TopoDS_Edge

        """
        return _TopOpeBRepDS.TopOpeBRepDS_Explorer_Edge(self, *args)

    def Face(self, *args) -> "TopoDS_Face const":
        r"""
        No available documentation.

        Returns
        -------
        TopoDS_Face

        """
        return _TopOpeBRepDS.TopOpeBRepDS_Explorer_Face(self, *args)

    def Index(self, *args) -> "Standard_Integer":
        r"""
        No available documentation.

        Returns
        -------
        int

        """
        return _TopOpeBRepDS.TopOpeBRepDS_Explorer_Index(self, *args)

    def Init(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        HDS: TopOpeBRepDS_HDataStructure
        T: TopAbs_ShapeEnum,optional
        	default value is TopAbs_SHAPE
        findkeep: bool,optional
        	default value is Standard_True

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_Explorer_Init(self, *args)

    def More(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Returns
        -------
        bool

        """
        return _TopOpeBRepDS.TopOpeBRepDS_Explorer_More(self, *args)

    def Next(self, *args) -> "void":
        r"""
        No available documentation.

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_Explorer_Next(self, *args)

    def Type(self, *args) -> "TopAbs_ShapeEnum":
        r"""
        No available documentation.

        Returns
        -------
        TopAbs_ShapeEnum

        """
        return _TopOpeBRepDS.TopOpeBRepDS_Explorer_Type(self, *args)

    def Vertex(self, *args) -> "TopoDS_Vertex const":
        r"""
        No available documentation.

        Returns
        -------
        TopoDS_Vertex

        """
        return _TopOpeBRepDS.TopOpeBRepDS_Explorer_Vertex(self, *args)

    __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

    def __init__(self, *args):
        r"""
        No available documentation.

        Parameters
        ----------
        HDS: TopOpeBRepDS_HDataStructure

        Returns
        -------
        None

        """
        _TopOpeBRepDS.TopOpeBRepDS_FIR_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_FIR(*args))

    def ProcessFaceInterferences(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        M: TopOpeBRepDS_DataMapOfShapeListOfShapeOn1State

        Returns
        -------
        None
        No available documentation.

        Parameters
        ----------
        I: int
        M: TopOpeBRepDS_DataMapOfShapeListOfShapeOn1State

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_FIR_ProcessFaceInterferences(self, *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

    def __init__(self, *args):
        r"""
        No available documentation.

        Parameters
        ----------
        P: TopOpeBRepDS_PDataStructure

        Returns
        -------
        None

        """
        _TopOpeBRepDS.TopOpeBRepDS_FaceInterferenceTool_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_FaceInterferenceTool(*args))

    def Add(self, *args) -> "void":
        r"""
        Eisnew = true if e is a new edge built on edge i->geometry() false if e is shape <=> i->geometry().

        Parameters
        ----------
        FI: TopoDS_Shape
        F: TopoDS_Shape
        E: TopoDS_Shape
        Eisnew: bool
        I: TopOpeBRepDS_Interference

        Returns
        -------
        None
        No available documentation.

        Parameters
        ----------
        E: TopoDS_Shape
        C: TopOpeBRepDS_Curve
        I: TopOpeBRepDS_Interference

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_FaceInterferenceTool_Add(self, *args)

    def GetEdgePntPar(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        P: gp_Pnt

        Returns
        -------
        par: float

        """
        return _TopOpeBRepDS.TopOpeBRepDS_FaceInterferenceTool_GetEdgePntPar(self, *args)

    def Init(self, *args) -> "void":
        r"""
        Eisnew = true if e is a new edge built on edge i->geometry() false if e is shape <=> i->geometry().

        Parameters
        ----------
        FI: TopoDS_Shape
        E: TopoDS_Shape
        Eisnew: bool
        I: TopOpeBRepDS_Interference

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_FaceInterferenceTool_Init(self, *args)

    def IsEdgePntParDef(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Returns
        -------
        bool

        """
        return _TopOpeBRepDS.TopOpeBRepDS_FaceInterferenceTool_IsEdgePntParDef(self, *args)

    def SetEdgePntPar(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        P: gp_Pnt
        par: float

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_FaceInterferenceTool_SetEdgePntPar(self, *args)

    def Transition(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        I: TopOpeBRepDS_Interference

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_FaceInterferenceTool_Transition(self, *args)

    __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

    def __init__(self, *args):
        r"""
        No available documentation.

        Parameters
        ----------
        HDS: TopOpeBRepDS_HDataStructure
        pClassif: TopOpeBRepTool_PShapeClassifier,optional
        	default value is 0

        Returns
        -------
        None

        """
        _TopOpeBRepDS.TopOpeBRepDS_Filter_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_Filter(*args))

    def ProcessCurveInterferences(self, *args) -> "void":
        r"""
        No available documentation.

        Returns
        -------
        None
        No available documentation.

        Parameters
        ----------
        I: int

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_Filter_ProcessCurveInterferences(self, *args)

    def ProcessEdgeInterferences(self, *args) -> "void":
        r"""
        No available documentation.

        Returns
        -------
        None
        No available documentation.

        Parameters
        ----------
        I: int

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_Filter_ProcessEdgeInterferences(self, *args)

    def ProcessFaceInterferences(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        MEsp: TopOpeBRepDS_DataMapOfShapeListOfShapeOn1State

        Returns
        -------
        None
        No available documentation.

        Parameters
        ----------
        I: int
        MEsp: TopOpeBRepDS_DataMapOfShapeListOfShapeOn1State

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_Filter_ProcessFaceInterferences(self, *args)

    def ProcessInterferences(self, *args) -> "void":
        r"""
        No available documentation.

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_Filter_ProcessInterferences(self, *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

    def __init__(self, *args):
        r"""
        No available documentation.

        Parameters
        ----------
        HDS: TopOpeBRepDS_HDataStructure

        Returns
        -------
        None

        """
        _TopOpeBRepDS.TopOpeBRepDS_GapFiller_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_GapFiller(*args))

    def AddPointsOnConnexShape(self, *args) -> "void":
        r"""
        Methodes pour reduire la liste des points qui peuvent correspondre a une point donne.

        Parameters
        ----------
        F: TopoDS_Shape
        LI: TopOpeBRepDS_ListOfInterference

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_GapFiller_AddPointsOnConnexShape(self, *args)

    def AddPointsOnShape(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        S: TopoDS_Shape
        LI: TopOpeBRepDS_ListOfInterference

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_GapFiller_AddPointsOnShape(self, *args)

    def BuildNewGeometries(self, *args) -> "void":
        r"""
        No available documentation.

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_GapFiller_BuildNewGeometries(self, *args)

    def CheckConnexity(self, *args) -> "Standard_Boolean":
        r"""
        Enchaine les sections via les points d'interferences deja associe; renvoit dans <l> les points extremites des lignes. methodes pour construire la liste des points qui peuvent correspondre a une point donne.

        Parameters
        ----------
        LI: TopOpeBRepDS_ListOfInterference

        Returns
        -------
        bool

        """
        return _TopOpeBRepDS.TopOpeBRepDS_GapFiller_CheckConnexity(self, *args)

    def FilterByEdge(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        E: TopoDS_Edge
        LI: TopOpeBRepDS_ListOfInterference

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_GapFiller_FilterByEdge(self, *args)

    def FilterByFace(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        F: TopoDS_Face
        LI: TopOpeBRepDS_ListOfInterference

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_GapFiller_FilterByFace(self, *args)

    def FilterByIncidentDistance(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        F: TopoDS_Face
        I: TopOpeBRepDS_Interference
        LI: TopOpeBRepDS_ListOfInterference

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_GapFiller_FilterByIncidentDistance(self, *args)

    def FindAssociatedPoints(self, *args) -> "void":
        r"""
        Recherche parmi l'ensemble des points d'interference la liste <li> des points qui correspondent au point d'indice <index>.

        Parameters
        ----------
        I: TopOpeBRepDS_Interference
        LI: TopOpeBRepDS_ListOfInterference

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_GapFiller_FindAssociatedPoints(self, *args)

    def IsOnEdge(self, *args) -> "Standard_Boolean":
        r"""
        Return true si i ou une de ses representaions a pour support <e>. methodes de reconstructions des geometries des point et des courbes de section.

        Parameters
        ----------
        I: TopOpeBRepDS_Interference
        E: TopoDS_Edge

        Returns
        -------
        bool

        """
        return _TopOpeBRepDS.TopOpeBRepDS_GapFiller_IsOnEdge(self, *args)

    def IsOnFace(self, *args) -> "Standard_Boolean":
        r"""
        Return true si i a ete obtenu par une intersection avec <f>.

        Parameters
        ----------
        I: TopOpeBRepDS_Interference
        F: TopoDS_Face

        Returns
        -------
        bool

        """
        return _TopOpeBRepDS.TopOpeBRepDS_GapFiller_IsOnFace(self, *args)

    def Perform(self, *args) -> "void":
        r"""
        No available documentation.

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_GapFiller_Perform(self, *args)

    def ReBuildGeom(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        I1: TopOpeBRepDS_Interference
        Done: TColStd_MapOfInteger

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_GapFiller_ReBuildGeom(self, *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

    def __init__(self, *args):
        r"""
        No available documentation.

        Returns
        -------
        None
        No available documentation.

        Parameters
        ----------
        HDS: TopOpeBRepDS_HDataStructure

        Returns
        -------
        None

        """
        _TopOpeBRepDS.TopOpeBRepDS_GapTool_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_GapTool(*args))

    def ChangeSameInterferences(self, *args) -> "TopOpeBRepDS_ListOfInterference &":
        r"""
        No available documentation.

        Parameters
        ----------
        I: TopOpeBRepDS_Interference

        Returns
        -------
        TopOpeBRepDS_ListOfInterference

        """
        return _TopOpeBRepDS.TopOpeBRepDS_GapTool_ChangeSameInterferences(self, *args)

    def Curve(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Parameters
        ----------
        I: TopOpeBRepDS_Interference
        C: TopOpeBRepDS_Curve

        Returns
        -------
        bool

        """
        return _TopOpeBRepDS.TopOpeBRepDS_GapTool_Curve(self, *args)

    def EdgeSupport(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Parameters
        ----------
        I: TopOpeBRepDS_Interference
        E: TopoDS_Shape

        Returns
        -------
        bool

        """
        return _TopOpeBRepDS.TopOpeBRepDS_GapTool_EdgeSupport(self, *args)

    def FacesSupport(self, *args) -> "Standard_Boolean":
        r"""
        Return les faces qui ont genere la section origine de i.

        Parameters
        ----------
        I: TopOpeBRepDS_Interference
        F1: TopoDS_Shape
        F2: TopoDS_Shape

        Returns
        -------
        bool

        """
        return _TopOpeBRepDS.TopOpeBRepDS_GapTool_FacesSupport(self, *args)

    def Init(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        HDS: TopOpeBRepDS_HDataStructure

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_GapTool_Init(self, *args)

    def Interferences(self, *args) -> "TopOpeBRepDS_ListOfInterference const &":
        r"""
        No available documentation.

        Parameters
        ----------
        IndexPoint: int

        Returns
        -------
        TopOpeBRepDS_ListOfInterference

        """
        return _TopOpeBRepDS.TopOpeBRepDS_GapTool_Interferences(self, *args)

    def ParameterOnEdge(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Parameters
        ----------
        I: TopOpeBRepDS_Interference
        E: TopoDS_Shape

        Returns
        -------
        U: float

        """
        return _TopOpeBRepDS.TopOpeBRepDS_GapTool_ParameterOnEdge(self, *args)

    def SameInterferences(self, *args) -> "TopOpeBRepDS_ListOfInterference const &":
        r"""
        No available documentation.

        Parameters
        ----------
        I: TopOpeBRepDS_Interference

        Returns
        -------
        TopOpeBRepDS_ListOfInterference

        """
        return _TopOpeBRepDS.TopOpeBRepDS_GapTool_SameInterferences(self, *args)

    def SetParameterOnEdge(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        I: TopOpeBRepDS_Interference
        E: TopoDS_Shape
        U: float

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_GapTool_SetParameterOnEdge(self, *args)

    def SetPoint(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        I: TopOpeBRepDS_Interference
        IndexPoint: int

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_GapTool_SetPoint(self, *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

    def __init__(self, *args):
        r"""
        No available documentation.

        Returns
        -------
        None
        No available documentation.

        Parameters
        ----------
        Other: TopOpeBRepDS_GeometryData

        Returns
        -------
        None

        """
        _TopOpeBRepDS.TopOpeBRepDS_GeometryData_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_GeometryData(*args))

    def AddInterference(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        I: TopOpeBRepDS_Interference

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_GeometryData_AddInterference(self, *args)

    def Assign(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        Other: TopOpeBRepDS_GeometryData

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_GeometryData_Assign(self, *args)

    def ChangeInterferences(self, *args) -> "TopOpeBRepDS_ListOfInterference &":
        r"""
        No available documentation.

        Returns
        -------
        TopOpeBRepDS_ListOfInterference

        """
        return _TopOpeBRepDS.TopOpeBRepDS_GeometryData_ChangeInterferences(self, *args)

    def Interferences(self, *args) -> "TopOpeBRepDS_ListOfInterference const &":
        r"""
        No available documentation.

        Returns
        -------
        TopOpeBRepDS_ListOfInterference

        """
        return _TopOpeBRepDS.TopOpeBRepDS_GeometryData_Interferences(self, *args)

    __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

    def __init__(self, *args):
        r"""
        No available documentation.

        Returns
        -------
        None
        No available documentation.

        Parameters
        ----------
        Transition: TopOpeBRepDS_Transition
        SupportType: TopOpeBRepDS_Kind
        Support: int
        GeometryType: TopOpeBRepDS_Kind
        Geometry: int

        Returns
        -------
        None
        No available documentation.

        Parameters
        ----------
        I: TopOpeBRepDS_Interference

        Returns
        -------
        None

        """
        _TopOpeBRepDS.TopOpeBRepDS_Interference_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_Interference(*args))

    def ChangeTransition(self, *args) -> "TopOpeBRepDS_Transition &":
        r"""
        No available documentation.

        Returns
        -------
        TopOpeBRepDS_Transition

        """
        return _TopOpeBRepDS.TopOpeBRepDS_Interference_ChangeTransition(self, *args)

    def GKGSKS(self, *args) -> "void":
        r"""
        Return geometrytype + geometry + supporttype + support.

        Parameters
        ----------
        GK: TopOpeBRepDS_Kind
        SK: TopOpeBRepDS_Kind

        Returns
        -------
        G: int
        S: int

        """
        return _TopOpeBRepDS.TopOpeBRepDS_Interference_GKGSKS(self, *args)

    def Geometry(self, *args) -> "void":
        r"""
        No available documentation.

        Returns
        -------
        int
        No available documentation.

        Parameters
        ----------
        G: int

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_Interference_Geometry(self, *args)

    def GeometryType(self, *args) -> "void":
        r"""
        No available documentation.

        Returns
        -------
        TopOpeBRepDS_Kind
        No available documentation.

        Parameters
        ----------
        GT: TopOpeBRepDS_Kind

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_Interference_GeometryType(self, *args)

    def HasSameGeometry(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Parameters
        ----------
        Other: TopOpeBRepDS_Interference

        Returns
        -------
        bool

        """
        return _TopOpeBRepDS.TopOpeBRepDS_Interference_HasSameGeometry(self, *args)

    def HasSameSupport(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Parameters
        ----------
        Other: TopOpeBRepDS_Interference

        Returns
        -------
        bool

        """
        return _TopOpeBRepDS.TopOpeBRepDS_Interference_HasSameSupport(self, *args)

    def SetGeometry(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        GI: int

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_Interference_SetGeometry(self, *args)

    def Support(self, *args) -> "void":
        r"""
        No available documentation.

        Returns
        -------
        int
        No available documentation.

        Parameters
        ----------
        S: int

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_Interference_Support(self, *args)

    def SupportType(self, *args) -> "void":
        r"""
        No available documentation.

        Returns
        -------
        TopOpeBRepDS_Kind
        No available documentation.

        Parameters
        ----------
        ST: TopOpeBRepDS_Kind

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_Interference_SupportType(self, *args)

    def Transition(self, *args) -> "void":
        r"""
        No available documentation.

        Returns
        -------
        TopOpeBRepDS_Transition
        No available documentation.

        Parameters
        ----------
        T: TopOpeBRepDS_Transition

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_Interference_Transition(self, *args)


    @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

    def __init__(self, *args):
        r"""
        No available documentation.

        Returns
        -------
        None
        Creates an iterator on the interference of list <l>.

        Parameters
        ----------
        L: TopOpeBRepDS_ListOfInterference

        Returns
        -------
        None

        """
        _TopOpeBRepDS.TopOpeBRepDS_InterferenceIterator_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_InterferenceIterator(*args))

    def ChangeIterator(self, *args) -> "TopOpeBRepDS_ListIteratorOfListOfInterference &":
        r"""
        No available documentation.

        Returns
        -------
        TopOpeBRepDS_ListIteratorOfListOfInterference

        """
        return _TopOpeBRepDS.TopOpeBRepDS_InterferenceIterator_ChangeIterator(self, *args)

    def Geometry(self, *args) -> "void":
        r"""
        Define a condition on interference iteration process. interference must match the geometry <g>.

        Parameters
        ----------
        G: int

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_InterferenceIterator_Geometry(self, *args)

    def GeometryKind(self, *args) -> "void":
        r"""
        Define a condition on interference iteration process. interference must match the geometry kind <st>.

        Parameters
        ----------
        GK: TopOpeBRepDS_Kind

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_InterferenceIterator_GeometryKind(self, *args)

    def Init(self, *args) -> "void":
        r"""
        Re-initialize interference iteration process on the list of interference <l>. conditions are not modified.

        Parameters
        ----------
        L: TopOpeBRepDS_ListOfInterference

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_InterferenceIterator_Init(self, *args)

    def Match(self, *args) -> "void":
        r"""
        Reach for an interference matching the conditions (if defined).

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_InterferenceIterator_Match(self, *args)

    def MatchInterference(self, *args) -> "Standard_Boolean":
        r"""
        Returns true if the interference <i> matches the conditions (if defined). if no conditions defined, returns true.

        Parameters
        ----------
        I: TopOpeBRepDS_Interference

        Returns
        -------
        bool

        """
        return _TopOpeBRepDS.TopOpeBRepDS_InterferenceIterator_MatchInterference(self, *args)

    def More(self, *args) -> "Standard_Boolean":
        r"""
        Returns true if there is a current interference in the iteration.

        Returns
        -------
        bool

        """
        return _TopOpeBRepDS.TopOpeBRepDS_InterferenceIterator_More(self, *args)

    def Next(self, *args) -> "void":
        r"""
        Move to the next interference.

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_InterferenceIterator_Next(self, *args)

    def Support(self, *args) -> "void":
        r"""
        Define a condition on interference iteration process. interference must match the support <s>.

        Parameters
        ----------
        S: int

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_InterferenceIterator_Support(self, *args)

    def SupportKind(self, *args) -> "void":
        r"""
        Define a condition on interference iteration process. interference must match the support kind <st>.

        Parameters
        ----------
        ST: TopOpeBRepDS_Kind

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_InterferenceIterator_SupportKind(self, *args)

    def Value(self, *args) -> "opencascade::handle< TopOpeBRepDS_Interference > const &":
        r"""
        Returns the current interference, matching the conditions (if defined).

        Returns
        -------
        opencascade::handle<TopOpeBRepDS_Interference>

        """
        return _TopOpeBRepDS.TopOpeBRepDS_InterferenceIterator_Value(self, *args)

    __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

    @staticmethod
    def DuplicateCurvePointInterference(*args) -> "opencascade::handle< TopOpeBRepDS_Interference >":
        r"""
        Duplicate i in a new interference with complement() transition.

        Parameters
        ----------
        I: TopOpeBRepDS_Interference

        Returns
        -------
        opencascade::handle<TopOpeBRepDS_Interference>

        """
        return _TopOpeBRepDS.TopOpeBRepDS_InterferenceTool_DuplicateCurvePointInterference(*args)

    @staticmethod
    def MakeCurveInterference(*args) -> "opencascade::handle< TopOpeBRepDS_Interference >":
        r"""
        No available documentation.

        Parameters
        ----------
        T: TopOpeBRepDS_Transition
        SK: TopOpeBRepDS_Kind
        SI: int
        GK: TopOpeBRepDS_Kind
        GI: int
        P: float

        Returns
        -------
        opencascade::handle<TopOpeBRepDS_Interference>

        """
        return _TopOpeBRepDS.TopOpeBRepDS_InterferenceTool_MakeCurveInterference(*args)

    @staticmethod
    def MakeEdgeInterference(*args) -> "opencascade::handle< TopOpeBRepDS_Interference >":
        r"""
        No available documentation.

        Parameters
        ----------
        T: TopOpeBRepDS_Transition
        SK: TopOpeBRepDS_Kind
        SI: int
        GK: TopOpeBRepDS_Kind
        GI: int
        P: float

        Returns
        -------
        opencascade::handle<TopOpeBRepDS_Interference>

        """
        return _TopOpeBRepDS.TopOpeBRepDS_InterferenceTool_MakeEdgeInterference(*args)

    @staticmethod
    def MakeEdgeVertexInterference(*args) -> "opencascade::handle< TopOpeBRepDS_Interference >":
        r"""
        No available documentation.

        Parameters
        ----------
        Transition: TopOpeBRepDS_Transition
        EdgeI: int
        VertexI: int
        VertexIsBound: bool
        Config: TopOpeBRepDS_Config
        param: float

        Returns
        -------
        opencascade::handle<TopOpeBRepDS_Interference>

        """
        return _TopOpeBRepDS.TopOpeBRepDS_InterferenceTool_MakeEdgeVertexInterference(*args)

    @staticmethod
    def MakeFaceCurveInterference(*args) -> "opencascade::handle< TopOpeBRepDS_Interference >":
        r"""
        No available documentation.

        Parameters
        ----------
        Transition: TopOpeBRepDS_Transition
        FaceI: int
        CurveI: int
        PC: Geom2d_Curve

        Returns
        -------
        opencascade::handle<TopOpeBRepDS_Interference>

        """
        return _TopOpeBRepDS.TopOpeBRepDS_InterferenceTool_MakeFaceCurveInterference(*args)

    @staticmethod
    def MakeFaceEdgeInterference(*args) -> "opencascade::handle< TopOpeBRepDS_Interference >":
        r"""
        No available documentation.

        Parameters
        ----------
        Transition: TopOpeBRepDS_Transition
        FaceI: int
        EdgeI: int
        EdgeIsBound: bool
        Config: TopOpeBRepDS_Config

        Returns
        -------
        opencascade::handle<TopOpeBRepDS_Interference>

        """
        return _TopOpeBRepDS.TopOpeBRepDS_InterferenceTool_MakeFaceEdgeInterference(*args)

    @staticmethod
    def MakeSolidSurfaceInterference(*args) -> "opencascade::handle< TopOpeBRepDS_Interference >":
        r"""
        No available documentation.

        Parameters
        ----------
        Transition: TopOpeBRepDS_Transition
        SolidI: int
        SurfaceI: int

        Returns
        -------
        opencascade::handle<TopOpeBRepDS_Interference>

        """
        return _TopOpeBRepDS.TopOpeBRepDS_InterferenceTool_MakeSolidSurfaceInterference(*args)

    @staticmethod
    def Parameter(*args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        CPI: TopOpeBRepDS_Interference

        Returns
        -------
        float
        No available documentation.

        Parameters
        ----------
        CPI: TopOpeBRepDS_Interference
        Par: float

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_InterferenceTool_Parameter(*args)

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

def TopOpeBRepDS_InterferenceTool_DuplicateCurvePointInterference(*args) -> "opencascade::handle< TopOpeBRepDS_Interference >":
    r"""
    Duplicate i in a new interference with complement() transition.

    Parameters
    ----------
    I: TopOpeBRepDS_Interference

    Returns
    -------
    opencascade::handle<TopOpeBRepDS_Interference>

    """
    return _TopOpeBRepDS.TopOpeBRepDS_InterferenceTool_DuplicateCurvePointInterference(*args)

def TopOpeBRepDS_InterferenceTool_MakeCurveInterference(*args) -> "opencascade::handle< TopOpeBRepDS_Interference >":
    r"""
    No available documentation.

    Parameters
    ----------
    T: TopOpeBRepDS_Transition
    SK: TopOpeBRepDS_Kind
    SI: int
    GK: TopOpeBRepDS_Kind
    GI: int
    P: float

    Returns
    -------
    opencascade::handle<TopOpeBRepDS_Interference>

    """
    return _TopOpeBRepDS.TopOpeBRepDS_InterferenceTool_MakeCurveInterference(*args)

def TopOpeBRepDS_InterferenceTool_MakeEdgeInterference(*args) -> "opencascade::handle< TopOpeBRepDS_Interference >":
    r"""
    No available documentation.

    Parameters
    ----------
    T: TopOpeBRepDS_Transition
    SK: TopOpeBRepDS_Kind
    SI: int
    GK: TopOpeBRepDS_Kind
    GI: int
    P: float

    Returns
    -------
    opencascade::handle<TopOpeBRepDS_Interference>

    """
    return _TopOpeBRepDS.TopOpeBRepDS_InterferenceTool_MakeEdgeInterference(*args)

def TopOpeBRepDS_InterferenceTool_MakeEdgeVertexInterference(*args) -> "opencascade::handle< TopOpeBRepDS_Interference >":
    r"""
    No available documentation.

    Parameters
    ----------
    Transition: TopOpeBRepDS_Transition
    EdgeI: int
    VertexI: int
    VertexIsBound: bool
    Config: TopOpeBRepDS_Config
    param: float

    Returns
    -------
    opencascade::handle<TopOpeBRepDS_Interference>

    """
    return _TopOpeBRepDS.TopOpeBRepDS_InterferenceTool_MakeEdgeVertexInterference(*args)

def TopOpeBRepDS_InterferenceTool_MakeFaceCurveInterference(*args) -> "opencascade::handle< TopOpeBRepDS_Interference >":
    r"""
    No available documentation.

    Parameters
    ----------
    Transition: TopOpeBRepDS_Transition
    FaceI: int
    CurveI: int
    PC: Geom2d_Curve

    Returns
    -------
    opencascade::handle<TopOpeBRepDS_Interference>

    """
    return _TopOpeBRepDS.TopOpeBRepDS_InterferenceTool_MakeFaceCurveInterference(*args)

def TopOpeBRepDS_InterferenceTool_MakeFaceEdgeInterference(*args) -> "opencascade::handle< TopOpeBRepDS_Interference >":
    r"""
    No available documentation.

    Parameters
    ----------
    Transition: TopOpeBRepDS_Transition
    FaceI: int
    EdgeI: int
    EdgeIsBound: bool
    Config: TopOpeBRepDS_Config

    Returns
    -------
    opencascade::handle<TopOpeBRepDS_Interference>

    """
    return _TopOpeBRepDS.TopOpeBRepDS_InterferenceTool_MakeFaceEdgeInterference(*args)

def TopOpeBRepDS_InterferenceTool_MakeSolidSurfaceInterference(*args) -> "opencascade::handle< TopOpeBRepDS_Interference >":
    r"""
    No available documentation.

    Parameters
    ----------
    Transition: TopOpeBRepDS_Transition
    SolidI: int
    SurfaceI: int

    Returns
    -------
    opencascade::handle<TopOpeBRepDS_Interference>

    """
    return _TopOpeBRepDS.TopOpeBRepDS_InterferenceTool_MakeSolidSurfaceInterference(*args)

def TopOpeBRepDS_InterferenceTool_Parameter(*args) -> "void":
    r"""
    No available documentation.

    Parameters
    ----------
    CPI: TopOpeBRepDS_Interference

    Returns
    -------
    float
    No available documentation.

    Parameters
    ----------
    CPI: TopOpeBRepDS_Interference
    Par: float

    Returns
    -------
    None

    """
    return _TopOpeBRepDS.TopOpeBRepDS_InterferenceTool_Parameter(*args)

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

    def __init__(self, *args):
        r"""
        No available documentation.

        Returns
        -------
        None

        """
        _TopOpeBRepDS.TopOpeBRepDS_ListOfShapeOn1State_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_ListOfShapeOn1State(*args))

    def ChangeListOnState(self, *args) -> "TopTools_ListOfShape &":
        r"""
        No available documentation.

        Returns
        -------
        TopTools_ListOfShape

        """
        return _TopOpeBRepDS.TopOpeBRepDS_ListOfShapeOn1State_ChangeListOnState(self, *args)

    def Clear(self, *args) -> "void":
        r"""
        No available documentation.

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_ListOfShapeOn1State_Clear(self, *args)

    def IsSplit(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Returns
        -------
        bool

        """
        return _TopOpeBRepDS.TopOpeBRepDS_ListOfShapeOn1State_IsSplit(self, *args)

    def ListOnState(self, *args) -> "TopTools_ListOfShape const &":
        r"""
        No available documentation.

        Returns
        -------
        TopTools_ListOfShape

        """
        return _TopOpeBRepDS.TopOpeBRepDS_ListOfShapeOn1State_ListOnState(self, *args)

    def Split(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        B: bool,optional
        	default value is Standard_True

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_ListOfShapeOn1State_Split(self, *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

    def __init__(self, *args):
        r"""
        No available documentation.

        Returns
        -------
        None

        """
        _TopOpeBRepDS.TopOpeBRepDS_Marker_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_Marker(*args))

    def Allocate(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        n: int

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_Marker_Allocate(self, *args)

    def GetI(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Parameters
        ----------
        i: int

        Returns
        -------
        bool

        """
        return _TopOpeBRepDS.TopOpeBRepDS_Marker_GetI(self, *args)

    def Reset(self, *args) -> "void":
        r"""
        No available documentation.

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_Marker_Reset(self, *args)

    def Set(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        i: int
        b: bool

        Returns
        -------
        None
        No available documentation.

        Parameters
        ----------
        b: bool
        n: int
        a: Standard_Address

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_Marker_Set(self, *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

    def __init__(self, *args):
        r"""
        No available documentation.

        Returns
        -------
        None
        No available documentation.

        Parameters
        ----------
        P: gp_Pnt
        T: float

        Returns
        -------
        None
        No available documentation.

        Parameters
        ----------
        S: TopoDS_Shape

        Returns
        -------
        None

        """
        _TopOpeBRepDS.TopOpeBRepDS_Point_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_Point(*args))

    def ChangeKeep(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        B: bool

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_Point_ChangeKeep(self, *args)

    def ChangePoint(self, *args) -> "gp_Pnt":
        r"""
        No available documentation.

        Returns
        -------
        gp_Pnt

        """
        return _TopOpeBRepDS.TopOpeBRepDS_Point_ChangePoint(self, *args)

    def IsEqual(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Parameters
        ----------
        other: TopOpeBRepDS_Point

        Returns
        -------
        bool

        """
        return _TopOpeBRepDS.TopOpeBRepDS_Point_IsEqual(self, *args)

    def Keep(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Returns
        -------
        bool

        """
        return _TopOpeBRepDS.TopOpeBRepDS_Point_Keep(self, *args)

    def Point(self, *args) -> "gp_Pnt const":
        r"""
        No available documentation.

        Returns
        -------
        gp_Pnt

        """
        return _TopOpeBRepDS.TopOpeBRepDS_Point_Point(self, *args)

    def Tolerance(self, *args) -> "void":
        r"""
        No available documentation.

        Returns
        -------
        float
        No available documentation.

        Parameters
        ----------
        Tol: float

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_Point_Tolerance(self, *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

    def __init__(self, *args):
        r"""
        No available documentation.

        Returns
        -------
        None
        No available documentation.

        Parameters
        ----------
        DS: TopOpeBRepDS_DataStructure
        FindOnlyKeep: bool,optional
        	default value is Standard_True

        Returns
        -------
        None

        """
        _TopOpeBRepDS.TopOpeBRepDS_PointExplorer_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_PointExplorer(*args))

    def Index(self, *args) -> "Standard_Integer":
        r"""
        No available documentation.

        Returns
        -------
        int

        """
        return _TopOpeBRepDS.TopOpeBRepDS_PointExplorer_Index(self, *args)

    def Init(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        DS: TopOpeBRepDS_DataStructure
        FindOnlyKeep: bool,optional
        	default value is Standard_True

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_PointExplorer_Init(self, *args)

    def IsPoint(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Parameters
        ----------
        I: int

        Returns
        -------
        bool

        """
        return _TopOpeBRepDS.TopOpeBRepDS_PointExplorer_IsPoint(self, *args)

    def IsPointKeep(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Parameters
        ----------
        I: int

        Returns
        -------
        bool

        """
        return _TopOpeBRepDS.TopOpeBRepDS_PointExplorer_IsPointKeep(self, *args)

    def More(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Returns
        -------
        bool

        """
        return _TopOpeBRepDS.TopOpeBRepDS_PointExplorer_More(self, *args)

    def NbPoint(self, *args) -> "Standard_Integer":
        r"""
        No available documentation.

        Returns
        -------
        int

        """
        return _TopOpeBRepDS.TopOpeBRepDS_PointExplorer_NbPoint(self, *args)

    def Next(self, *args) -> "void":
        r"""
        No available documentation.

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_PointExplorer_Next(self, *args)

    def Point(self, *args) -> "TopOpeBRepDS_Point const &":
        r"""
        No available documentation.

        Returns
        -------
        TopOpeBRepDS_Point
        No available documentation.

        Parameters
        ----------
        I: int

        Returns
        -------
        TopOpeBRepDS_Point

        """
        return _TopOpeBRepDS.TopOpeBRepDS_PointExplorer_Point(self, *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

    def __init__(self, *args):
        r"""
        No available documentation.

        Parameters
        ----------
        HDS: TopOpeBRepDS_HDataStructure

        Returns
        -------
        None

        """
        _TopOpeBRepDS.TopOpeBRepDS_Reducer_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_Reducer(*args))

    def ProcessEdgeInterferences(self, *args) -> "void":
        r"""
        No available documentation.

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_Reducer_ProcessEdgeInterferences(self, *args)

    def ProcessFaceInterferences(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        M: TopOpeBRepDS_DataMapOfShapeListOfShapeOn1State

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_Reducer_ProcessFaceInterferences(self, *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

    def __init__(self, *args):
        r"""
        No available documentation.

        Returns
        -------
        None

        """
        _TopOpeBRepDS.TopOpeBRepDS_ShapeData_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_ShapeData(*args))

    def ChangeInterferences(self, *args) -> "TopOpeBRepDS_ListOfInterference &":
        r"""
        No available documentation.

        Returns
        -------
        TopOpeBRepDS_ListOfInterference

        """
        return _TopOpeBRepDS.TopOpeBRepDS_ShapeData_ChangeInterferences(self, *args)

    def ChangeKeep(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        B: bool

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_ShapeData_ChangeKeep(self, *args)

    def Interferences(self, *args) -> "TopOpeBRepDS_ListOfInterference const &":
        r"""
        No available documentation.

        Returns
        -------
        TopOpeBRepDS_ListOfInterference

        """
        return _TopOpeBRepDS.TopOpeBRepDS_ShapeData_Interferences(self, *args)

    def Keep(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Returns
        -------
        bool

        """
        return _TopOpeBRepDS.TopOpeBRepDS_ShapeData_Keep(self, *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

    def __init__(self, *args):
        r"""
        No available documentation.

        Returns
        -------
        None

        """
        _TopOpeBRepDS.TopOpeBRepDS_ShapeWithState_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_ShapeWithState(*args))

    def AddPart(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aShape: TopoDS_Shape
        aState: TopAbs_State

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_ShapeWithState_AddPart(self, *args)

    def AddParts(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aListOfShape: TopTools_ListOfShape
        aState: TopAbs_State

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_ShapeWithState_AddParts(self, *args)

    def IsSplitted(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Returns
        -------
        bool

        """
        return _TopOpeBRepDS.TopOpeBRepDS_ShapeWithState_IsSplitted(self, *args)

    def Part(self, *args) -> "TopTools_ListOfShape const &":
        r"""
        No available documentation.

        Parameters
        ----------
        aState: TopAbs_State

        Returns
        -------
        TopTools_ListOfShape

        """
        return _TopOpeBRepDS.TopOpeBRepDS_ShapeWithState_Part(self, *args)

    def SetIsSplitted(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        anIsSplitted: bool

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_ShapeWithState_SetIsSplitted(self, *args)

    def SetState(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aState: TopAbs_State

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_ShapeWithState_SetState(self, *args)

    def State(self, *args) -> "TopAbs_State":
        r"""
        No available documentation.

        Returns
        -------
        TopAbs_State

        """
        return _TopOpeBRepDS.TopOpeBRepDS_ShapeWithState_State(self, *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

    def __init__(self, *args):
        r"""
        No available documentation.

        Returns
        -------
        None
        No available documentation.

        Parameters
        ----------
        P: Geom_Surface
        T: float

        Returns
        -------
        None
        No available documentation.

        Parameters
        ----------
        Other: TopOpeBRepDS_Surface

        Returns
        -------
        None

        """
        _TopOpeBRepDS.TopOpeBRepDS_Surface_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_Surface(*args))

    def Assign(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        Other: TopOpeBRepDS_Surface

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_Surface_Assign(self, *args)

    def ChangeKeep(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        theToKeep: bool

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_Surface_ChangeKeep(self, *args)

    def Keep(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Returns
        -------
        bool

        """
        return _TopOpeBRepDS.TopOpeBRepDS_Surface_Keep(self, *args)

    def Surface(self, *args) -> "opencascade::handle< Geom_Surface > const &":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<Geom_Surface>

        """
        return _TopOpeBRepDS.TopOpeBRepDS_Surface_Surface(self, *args)

    def Tolerance(self, *args) -> "void":
        r"""
        No available documentation.

        Returns
        -------
        float
        Update the tolerance.

        Parameters
        ----------
        theTol: float

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_Surface_Tolerance(self, *args)

    __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

    def __init__(self, *args):
        r"""
        No available documentation.

        Returns
        -------
        None
        No available documentation.

        Parameters
        ----------
        DS: TopOpeBRepDS_DataStructure
        FindOnlyKeep: bool,optional
        	default value is Standard_True

        Returns
        -------
        None

        """
        _TopOpeBRepDS.TopOpeBRepDS_SurfaceExplorer_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_SurfaceExplorer(*args))

    def Index(self, *args) -> "Standard_Integer":
        r"""
        No available documentation.

        Returns
        -------
        int

        """
        return _TopOpeBRepDS.TopOpeBRepDS_SurfaceExplorer_Index(self, *args)

    def Init(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        DS: TopOpeBRepDS_DataStructure
        FindOnlyKeep: bool,optional
        	default value is Standard_True

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_SurfaceExplorer_Init(self, *args)

    def IsSurface(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Parameters
        ----------
        I: int

        Returns
        -------
        bool

        """
        return _TopOpeBRepDS.TopOpeBRepDS_SurfaceExplorer_IsSurface(self, *args)

    def IsSurfaceKeep(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Parameters
        ----------
        I: int

        Returns
        -------
        bool

        """
        return _TopOpeBRepDS.TopOpeBRepDS_SurfaceExplorer_IsSurfaceKeep(self, *args)

    def More(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Returns
        -------
        bool

        """
        return _TopOpeBRepDS.TopOpeBRepDS_SurfaceExplorer_More(self, *args)

    def NbSurface(self, *args) -> "Standard_Integer":
        r"""
        No available documentation.

        Returns
        -------
        int

        """
        return _TopOpeBRepDS.TopOpeBRepDS_SurfaceExplorer_NbSurface(self, *args)

    def Next(self, *args) -> "void":
        r"""
        No available documentation.

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_SurfaceExplorer_Next(self, *args)

    def Surface(self, *args) -> "TopOpeBRepDS_Surface const &":
        r"""
        No available documentation.

        Returns
        -------
        TopOpeBRepDS_Surface
        No available documentation.

        Parameters
        ----------
        I: int

        Returns
        -------
        TopOpeBRepDS_Surface

        """
        return _TopOpeBRepDS.TopOpeBRepDS_SurfaceExplorer_Surface(self, *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

    def __init__(self, *args):
        r"""
        No available documentation.

        Returns
        -------
        None

        """
        _TopOpeBRepDS.TopOpeBRepDS_TKI_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_TKI(*args))

    def Add(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        K: TopOpeBRepDS_Kind
        G: int

        Returns
        -------
        None
        No available documentation.

        Parameters
        ----------
        K: TopOpeBRepDS_Kind
        G: int
        HI: TopOpeBRepDS_Interference

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_TKI_Add(self, *args)

    def ChangeInterferences(self, *args) -> "TopOpeBRepDS_ListOfInterference &":
        r"""
        No available documentation.

        Parameters
        ----------
        K: TopOpeBRepDS_Kind
        G: int

        Returns
        -------
        TopOpeBRepDS_ListOfInterference

        """
        return _TopOpeBRepDS.TopOpeBRepDS_TKI_ChangeInterferences(self, *args)

    def ChangeValue(self, *args) -> "TopOpeBRepDS_ListOfInterference &":
        r"""
        No available documentation.

        Parameters
        ----------
        K: TopOpeBRepDS_Kind

        Returns
        -------
        G: int

        """
        return _TopOpeBRepDS.TopOpeBRepDS_TKI_ChangeValue(self, *args)

    def Clear(self, *args) -> "void":
        r"""
        No available documentation.

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_TKI_Clear(self, *args)

    def DumpTKIIterator(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        s1: TCollection_AsciiString,optional
        	default value is 
        s2: TCollection_AsciiString,optional
        	default value is 

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_TKI_DumpTKIIterator(self, *args)

    def FillOnGeometry(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        L: TopOpeBRepDS_ListOfInterference

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_TKI_FillOnGeometry(self, *args)

    def FillOnSupport(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        L: TopOpeBRepDS_ListOfInterference

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_TKI_FillOnSupport(self, *args)

    def HasInterferences(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Parameters
        ----------
        K: TopOpeBRepDS_Kind
        G: int

        Returns
        -------
        bool

        """
        return _TopOpeBRepDS.TopOpeBRepDS_TKI_HasInterferences(self, *args)

    def Init(self, *args) -> "void":
        r"""
        No available documentation.

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_TKI_Init(self, *args)

    def Interferences(self, *args) -> "TopOpeBRepDS_ListOfInterference const &":
        r"""
        No available documentation.

        Parameters
        ----------
        K: TopOpeBRepDS_Kind
        G: int

        Returns
        -------
        TopOpeBRepDS_ListOfInterference

        """
        return _TopOpeBRepDS.TopOpeBRepDS_TKI_Interferences(self, *args)

    def IsBound(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Parameters
        ----------
        K: TopOpeBRepDS_Kind
        G: int

        Returns
        -------
        bool

        """
        return _TopOpeBRepDS.TopOpeBRepDS_TKI_IsBound(self, *args)

    def More(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Returns
        -------
        bool

        """
        return _TopOpeBRepDS.TopOpeBRepDS_TKI_More(self, *args)

    def Next(self, *args) -> "void":
        r"""
        No available documentation.

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_TKI_Next(self, *args)

    def Value(self, *args) -> "TopOpeBRepDS_ListOfInterference const &":
        r"""
        No available documentation.

        Parameters
        ----------
        K: TopOpeBRepDS_Kind

        Returns
        -------
        G: int

        """
        return _TopOpeBRepDS.TopOpeBRepDS_TKI_Value(self, *args)

    __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

    @staticmethod
    def EShareG(*args) -> "Standard_Integer":
        r"""
        No available documentation.

        Parameters
        ----------
        HDS: TopOpeBRepDS_HDataStructure
        E: TopoDS_Edge
        lEsd: TopTools_ListOfShape

        Returns
        -------
        int

        """
        return _TopOpeBRepDS.TopOpeBRepDS_TOOL_EShareG(*args)

    @staticmethod
    def GetConfig(*args) -> "Standard_Integer &":
        r"""
        No available documentation.

        Parameters
        ----------
        HDS: TopOpeBRepDS_HDataStructure
        MEspON: TopOpeBRepDS_DataMapOfShapeListOfShapeOn1State
        ie: int
        iesd: int

        Returns
        -------
        conf: int

        """
        return _TopOpeBRepDS.TopOpeBRepDS_TOOL_GetConfig(*args)

    @staticmethod
    def GetEsd(*args) -> "Standard_Integer &":
        r"""
        No available documentation.

        Parameters
        ----------
        HDS: TopOpeBRepDS_HDataStructure
        S: TopoDS_Shape
        ie: int

        Returns
        -------
        iesd: int

        """
        return _TopOpeBRepDS.TopOpeBRepDS_TOOL_GetEsd(*args)

    @staticmethod
    def ShareG(*args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Parameters
        ----------
        HDS: TopOpeBRepDS_HDataStructure
        is1: int
        is2: int

        Returns
        -------
        bool

        """
        return _TopOpeBRepDS.TopOpeBRepDS_TOOL_ShareG(*args)

    @staticmethod
    def ShareSplitON(*args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Parameters
        ----------
        HDS: TopOpeBRepDS_HDataStructure
        MspON: TopOpeBRepDS_DataMapOfShapeListOfShapeOn1State
        i1: int
        i2: int
        spON: TopoDS_Shape

        Returns
        -------
        bool

        """
        return _TopOpeBRepDS.TopOpeBRepDS_TOOL_ShareSplitON(*args)

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

def TopOpeBRepDS_TOOL_EShareG(*args) -> "Standard_Integer":
    r"""
    No available documentation.

    Parameters
    ----------
    HDS: TopOpeBRepDS_HDataStructure
    E: TopoDS_Edge
    lEsd: TopTools_ListOfShape

    Returns
    -------
    int

    """
    return _TopOpeBRepDS.TopOpeBRepDS_TOOL_EShareG(*args)

def TopOpeBRepDS_TOOL_GetConfig(*args) -> "Standard_Integer &":
    r"""
    No available documentation.

    Parameters
    ----------
    HDS: TopOpeBRepDS_HDataStructure
    MEspON: TopOpeBRepDS_DataMapOfShapeListOfShapeOn1State
    ie: int
    iesd: int

    Returns
    -------
    conf: int

    """
    return _TopOpeBRepDS.TopOpeBRepDS_TOOL_GetConfig(*args)

def TopOpeBRepDS_TOOL_GetEsd(*args) -> "Standard_Integer &":
    r"""
    No available documentation.

    Parameters
    ----------
    HDS: TopOpeBRepDS_HDataStructure
    S: TopoDS_Shape
    ie: int

    Returns
    -------
    iesd: int

    """
    return _TopOpeBRepDS.TopOpeBRepDS_TOOL_GetEsd(*args)

def TopOpeBRepDS_TOOL_ShareG(*args) -> "Standard_Boolean":
    r"""
    No available documentation.

    Parameters
    ----------
    HDS: TopOpeBRepDS_HDataStructure
    is1: int
    is2: int

    Returns
    -------
    bool

    """
    return _TopOpeBRepDS.TopOpeBRepDS_TOOL_ShareG(*args)

def TopOpeBRepDS_TOOL_ShareSplitON(*args) -> "Standard_Boolean":
    r"""
    No available documentation.

    Parameters
    ----------
    HDS: TopOpeBRepDS_HDataStructure
    MspON: TopOpeBRepDS_DataMapOfShapeListOfShapeOn1State
    i1: int
    i2: int
    spON: TopoDS_Shape

    Returns
    -------
    bool

    """
    return _TopOpeBRepDS.TopOpeBRepDS_TOOL_ShareSplitON(*args)

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

    def __init__(self, *args):
        r"""
        No available documentation.

        Returns
        -------
        None
        No available documentation.

        Parameters
        ----------
        StateBefore: TopAbs_State
        StateAfter: TopAbs_State
        ShapeBefore: TopAbs_ShapeEnum,optional
        	default value is TopAbs_FACE
        ShapeAfter: TopAbs_ShapeEnum,optional
        	default value is TopAbs_FACE

        Returns
        -------
        None
        No available documentation.

        Parameters
        ----------
        O: TopAbs_Orientation

        Returns
        -------
        None

        """
        _TopOpeBRepDS.TopOpeBRepDS_Transition_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_Transition(*args))

    def After(self, *args) -> "TopAbs_State":
        r"""
        No available documentation.

        Parameters
        ----------
        S: TopAbs_State
        ShapeAfter: TopAbs_ShapeEnum,optional
        	default value is TopAbs_FACE

        Returns
        -------
        None
        No available documentation.

        Returns
        -------
        TopAbs_State

        """
        return _TopOpeBRepDS.TopOpeBRepDS_Transition_After(self, *args)

    def Before(self, *args) -> "TopAbs_State":
        r"""
        No available documentation.

        Parameters
        ----------
        S: TopAbs_State
        ShapeBefore: TopAbs_ShapeEnum,optional
        	default value is TopAbs_FACE

        Returns
        -------
        None
        No available documentation.

        Returns
        -------
        TopAbs_State

        """
        return _TopOpeBRepDS.TopOpeBRepDS_Transition_Before(self, *args)

    def Complement(self, *args) -> "TopOpeBRepDS_Transition":
        r"""
        No available documentation.

        Returns
        -------
        TopOpeBRepDS_Transition

        """
        return _TopOpeBRepDS.TopOpeBRepDS_Transition_Complement(self, *args)

    def Index(self, *args) -> "Standard_Integer":
        r"""
        No available documentation.

        Parameters
        ----------
        I: int

        Returns
        -------
        None
        No available documentation.

        Returns
        -------
        int

        """
        return _TopOpeBRepDS.TopOpeBRepDS_Transition_Index(self, *args)

    def IndexAfter(self, *args) -> "Standard_Integer":
        r"""
        No available documentation.

        Parameters
        ----------
        I: int

        Returns
        -------
        None
        No available documentation.

        Returns
        -------
        int

        """
        return _TopOpeBRepDS.TopOpeBRepDS_Transition_IndexAfter(self, *args)

    def IndexBefore(self, *args) -> "Standard_Integer":
        r"""
        No available documentation.

        Parameters
        ----------
        I: int

        Returns
        -------
        None
        No available documentation.

        Returns
        -------
        int

        """
        return _TopOpeBRepDS.TopOpeBRepDS_Transition_IndexBefore(self, *args)

    def IsUnknown(self, *args) -> "Standard_Boolean":
        r"""
        Returns true if both states are unknown.

        Returns
        -------
        bool

        """
        return _TopOpeBRepDS.TopOpeBRepDS_Transition_IsUnknown(self, *args)

    def ONAfter(self, *args) -> "TopAbs_ShapeEnum":
        r"""
        No available documentation.

        Returns
        -------
        TopAbs_ShapeEnum

        """
        return _TopOpeBRepDS.TopOpeBRepDS_Transition_ONAfter(self, *args)

    def ONBefore(self, *args) -> "TopAbs_ShapeEnum":
        r"""
        No available documentation.

        Returns
        -------
        TopAbs_ShapeEnum

        """
        return _TopOpeBRepDS.TopOpeBRepDS_Transition_ONBefore(self, *args)

    def Orientation(self, *args) -> "TopAbs_Orientation":
        r"""
        Returns the orientation corresponding to state <s> //! before and after not equal topabs_on : -------------------------------------- before after computed orientation //! s not s reversed (we leave state s) not s s forward (we enter state s) s s internal (we stay in state s) not s not s external (we stay outside state s).

        Parameters
        ----------
        S: TopAbs_State
        T: TopAbs_ShapeEnum,optional
        	default value is TopAbs_FACE

        Returns
        -------
        TopAbs_Orientation

        """
        return _TopOpeBRepDS.TopOpeBRepDS_Transition_Orientation(self, *args)

    def Set(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        StateBefore: TopAbs_State
        StateAfter: TopAbs_State
        ShapeBefore: TopAbs_ShapeEnum,optional
        	default value is TopAbs_FACE
        ShapeAfter: TopAbs_ShapeEnum,optional
        	default value is TopAbs_FACE

        Returns
        -------
        None
        Set the transition corresponding to orientation <o> //! o before after //! forward out in reversed in out internal in in external out out.

        Parameters
        ----------
        O: TopAbs_Orientation

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_Transition_Set(self, *args)

    def ShapeAfter(self, *args) -> "TopAbs_ShapeEnum":
        r"""
        No available documentation.

        Parameters
        ----------
        SE: TopAbs_ShapeEnum

        Returns
        -------
        None
        No available documentation.

        Returns
        -------
        TopAbs_ShapeEnum

        """
        return _TopOpeBRepDS.TopOpeBRepDS_Transition_ShapeAfter(self, *args)

    def ShapeBefore(self, *args) -> "TopAbs_ShapeEnum":
        r"""
        No available documentation.

        Parameters
        ----------
        SE: TopAbs_ShapeEnum

        Returns
        -------
        None
        No available documentation.

        Returns
        -------
        TopAbs_ShapeEnum

        """
        return _TopOpeBRepDS.TopOpeBRepDS_Transition_ShapeBefore(self, *args)

    def StateAfter(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        S: TopAbs_State

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_Transition_StateAfter(self, *args)

    def StateBefore(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        S: TopAbs_State

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_Transition_StateBefore(self, *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"""
        No available documentation.

        Returns
        -------
        None
        No available documentation.

        Parameters
        ----------
        C: TopOpeBRepDS_Curve

        Returns
        -------
        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

    def __init__(self, *args):
        r"""
        Creates an iterator on the curves on surface described by the interferences in <l>.

        Parameters
        ----------
        L: TopOpeBRepDS_ListOfInterference

        Returns
        -------
        None

        """
        _TopOpeBRepDS.TopOpeBRepDS_CurveIterator_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_CurveIterator(*args))

    def Current(self, *args) -> "Standard_Integer":
        r"""
        Index of the curve in the data structure.

        Returns
        -------
        int

        """
        return _TopOpeBRepDS.TopOpeBRepDS_CurveIterator_Current(self, *args)

    def Orientation(self, *args) -> "TopAbs_Orientation":
        r"""
        No available documentation.

        Parameters
        ----------
        S: TopAbs_State

        Returns
        -------
        TopAbs_Orientation

        """
        return _TopOpeBRepDS.TopOpeBRepDS_CurveIterator_Orientation(self, *args)

    def PCurve(self, *args) -> "opencascade::handle< Geom2d_Curve > const &":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<Geom2d_Curve>

        """
        return _TopOpeBRepDS.TopOpeBRepDS_CurveIterator_PCurve(self, *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

    def __init__(self, *args):
        r"""
        No available documentation.

        Parameters
        ----------
        T: TopOpeBRepDS_Transition
        ST: TopOpeBRepDS_Kind
        S: int
        GT: TopOpeBRepDS_Kind
        G: int
        P: float

        Returns
        -------
        None

        """
        _TopOpeBRepDS.TopOpeBRepDS_CurvePointInterference_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_CurvePointInterference(*args))

    def Parameter(self, *args) -> "void":
        r"""
        No available documentation.

        Returns
        -------
        float
        No available documentation.

        Parameters
        ----------
        P: float

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_CurvePointInterference_Parameter(self, *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

    def __init__(self, *args):
        r"""
        No available documentation.

        Returns
        -------
        None
        No available documentation.

        Parameters
        ----------
        P: TopOpeBRepDS_Point

        Returns
        -------
        None
        No available documentation.

        Parameters
        ----------
        P: TopOpeBRepDS_Point
        I1: int
        I2: int

        Returns
        -------
        None

        """
        _TopOpeBRepDS.TopOpeBRepDS_PointData_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_PointData(*args))

    def GetShapes(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------

        Returns
        -------
        I1: int
        I2: int

        """
        return _TopOpeBRepDS.TopOpeBRepDS_PointData_GetShapes(self, *args)

    def SetShapes(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        I1: int
        I2: int

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_PointData_SetShapes(self, *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

    def __init__(self, *args):
        r"""
        Creates an iterator on the points on curves described by the interferences in <l>.

        Parameters
        ----------
        L: TopOpeBRepDS_ListOfInterference

        Returns
        -------
        None

        """
        _TopOpeBRepDS.TopOpeBRepDS_PointIterator_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_PointIterator(*args))

    def Current(self, *args) -> "Standard_Integer":
        r"""
        Index of the point in the data structure.

        Returns
        -------
        int

        """
        return _TopOpeBRepDS.TopOpeBRepDS_PointIterator_Current(self, *args)

    def DiffOriented(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Returns
        -------
        bool

        """
        return _TopOpeBRepDS.TopOpeBRepDS_PointIterator_DiffOriented(self, *args)

    def IsPoint(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Returns
        -------
        bool

        """
        return _TopOpeBRepDS.TopOpeBRepDS_PointIterator_IsPoint(self, *args)

    def IsVertex(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Returns
        -------
        bool

        """
        return _TopOpeBRepDS.TopOpeBRepDS_PointIterator_IsVertex(self, *args)

    def Orientation(self, *args) -> "TopAbs_Orientation":
        r"""
        No available documentation.

        Parameters
        ----------
        S: TopAbs_State

        Returns
        -------
        TopAbs_Orientation

        """
        return _TopOpeBRepDS.TopOpeBRepDS_PointIterator_Orientation(self, *args)

    def Parameter(self, *args) -> "Standard_Real":
        r"""
        No available documentation.

        Returns
        -------
        float

        """
        return _TopOpeBRepDS.TopOpeBRepDS_PointIterator_Parameter(self, *args)

    def SameOriented(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Returns
        -------
        bool

        """
        return _TopOpeBRepDS.TopOpeBRepDS_PointIterator_SameOriented(self, *args)

    def Support(self, *args) -> "Standard_Integer":
        r"""
        No available documentation.

        Returns
        -------
        int

        """
        return _TopOpeBRepDS.TopOpeBRepDS_PointIterator_Support(self, *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

    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.

        Parameters
        ----------
        T: TopOpeBRepDS_Transition
        ST: TopOpeBRepDS_Kind
        S: int
        GT: TopOpeBRepDS_Kind
        G: int
        GBound: bool
        C: TopOpeBRepDS_Config

        Returns
        -------
        None

        """
        _TopOpeBRepDS.TopOpeBRepDS_ShapeShapeInterference_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_ShapeShapeInterference(*args))

    def Config(self, *args) -> "TopOpeBRepDS_Config":
        r"""
        No available documentation.

        Returns
        -------
        TopOpeBRepDS_Config

        """
        return _TopOpeBRepDS.TopOpeBRepDS_ShapeShapeInterference_Config(self, *args)

    def GBound(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Returns
        -------
        bool

        """
        return _TopOpeBRepDS.TopOpeBRepDS_ShapeShapeInterference_GBound(self, *args)

    def SetGBound(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        b: bool

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_ShapeShapeInterference_SetGBound(self, *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"""
        No available documentation.

        Parameters
        ----------
        Transition: TopOpeBRepDS_Transition
        SupportType: TopOpeBRepDS_Kind
        Support: int
        GeometryType: TopOpeBRepDS_Kind
        Geometry: int

        Returns
        -------
        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

    def __init__(self, *args):
        r"""
        No available documentation.

        Returns
        -------
        None
        No available documentation.

        Parameters
        ----------
        Transition: TopOpeBRepDS_Transition
        SupportType: TopOpeBRepDS_Kind
        Support: int
        GeometryType: TopOpeBRepDS_Kind
        Geometry: int
        PC: Geom2d_Curve

        Returns
        -------
        None
        No available documentation.

        Parameters
        ----------
        I: TopOpeBRepDS_Interference

        Returns
        -------
        None

        """
        _TopOpeBRepDS.TopOpeBRepDS_SurfaceCurveInterference_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_SurfaceCurveInterference(*args))

    def PCurve(self, *args) -> "void":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<Geom2d_Curve>
        No available documentation.

        Parameters
        ----------
        PC: Geom2d_Curve

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_SurfaceCurveInterference_PCurve(self, *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"""
        No available documentation.

        Returns
        -------
        None
        No available documentation.

        Parameters
        ----------
        S: TopOpeBRepDS_Surface

        Returns
        -------
        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

    def __init__(self, *args):
        r"""
        Creates an iterator on the surfaces on solid described by the interferences in <l>.

        Parameters
        ----------
        L: TopOpeBRepDS_ListOfInterference

        Returns
        -------
        None

        """
        _TopOpeBRepDS.TopOpeBRepDS_SurfaceIterator_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_SurfaceIterator(*args))

    def Current(self, *args) -> "Standard_Integer":
        r"""
        Index of the surface in the data structure.

        Returns
        -------
        int

        """
        return _TopOpeBRepDS.TopOpeBRepDS_SurfaceIterator_Current(self, *args)

    def Orientation(self, *args) -> "TopAbs_Orientation":
        r"""
        No available documentation.

        Parameters
        ----------
        S: TopAbs_State

        Returns
        -------
        TopAbs_Orientation

        """
        return _TopOpeBRepDS.TopOpeBRepDS_SurfaceIterator_Orientation(self, *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

    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.

        Parameters
        ----------
        T: TopOpeBRepDS_Transition
        ST: TopOpeBRepDS_Kind
        S: int
        G: int
        GIsBound: bool
        C: TopOpeBRepDS_Config
        P: float

        Returns
        -------
        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.

        Parameters
        ----------
        T: TopOpeBRepDS_Transition
        S: int
        G: int
        GIsBound: bool
        C: TopOpeBRepDS_Config
        P: float

        Returns
        -------
        None

        """
        _TopOpeBRepDS.TopOpeBRepDS_EdgeVertexInterference_swiginit(self, _TopOpeBRepDS.new_TopOpeBRepDS_EdgeVertexInterference(*args))

    def Parameter(self, *args) -> "void":
        r"""
        No available documentation.

        Returns
        -------
        float
        No available documentation.

        Parameters
        ----------
        P: float

        Returns
        -------
        None

        """
        return _TopOpeBRepDS.TopOpeBRepDS_EdgeVertexInterference_Parameter(self, *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>.

        Parameters
        ----------
        T: TopOpeBRepDS_Transition
        S: int
        G: int
        GIsBound: bool
        C: TopOpeBRepDS_Config

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


@classnotwrapped
class TopOpeBRepDS_DSS:
	pass

@classnotwrapped
class TopOpeBRepDS_HDataStructure:
	pass


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

    def Array1(self) -> "TopOpeBRepDS_Array1OfDataMapOfIntegerListOfInterference const &":
        return _TopOpeBRepDS.TopOpeBRepDS_HArray1OfDataMapOfIntegerListOfInterference_Array1(self)

    def ChangeArray1(self) -> "TopOpeBRepDS_Array1OfDataMapOfIntegerListOfInterference &":
        return _TopOpeBRepDS.TopOpeBRepDS_HArray1OfDataMapOfIntegerListOfInterference_ChangeArray1(self)


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





