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

"""
TNaming module, see official documentation at
https://www.opencascade.com/doc/occt-7.4.0/refman/html/package_tnaming.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 _TNaming
else:
    import _TNaming

try:
    import builtins as __builtin__
except ImportError:
    import __builtin__

_swig_new_instance_method = _TNaming.SWIG_PyInstanceMethod_New
_swig_new_static_method = _TNaming.SWIG_PyStaticMethod_New

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


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


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


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


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


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

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr
    __swig_destroy__ = _TNaming.delete_SwigPyIterator
    value = _swig_new_instance_method(_TNaming.SwigPyIterator_value)
    incr = _swig_new_instance_method(_TNaming.SwigPyIterator_incr)
    decr = _swig_new_instance_method(_TNaming.SwigPyIterator_decr)
    distance = _swig_new_instance_method(_TNaming.SwigPyIterator_distance)
    equal = _swig_new_instance_method(_TNaming.SwigPyIterator_equal)
    copy = _swig_new_instance_method(_TNaming.SwigPyIterator_copy)
    next = _swig_new_instance_method(_TNaming.SwigPyIterator_next)
    __next__ = _swig_new_instance_method(_TNaming.SwigPyIterator___next__)
    previous = _swig_new_instance_method(_TNaming.SwigPyIterator_previous)
    advance = _swig_new_instance_method(_TNaming.SwigPyIterator_advance)
    __eq__ = _swig_new_instance_method(_TNaming.SwigPyIterator___eq__)
    __ne__ = _swig_new_instance_method(_TNaming.SwigPyIterator___ne__)
    __iadd__ = _swig_new_instance_method(_TNaming.SwigPyIterator___iadd__)
    __isub__ = _swig_new_instance_method(_TNaming.SwigPyIterator___isub__)
    __add__ = _swig_new_instance_method(_TNaming.SwigPyIterator___add__)
    __sub__ = _swig_new_instance_method(_TNaming.SwigPyIterator___sub__)
    def __iter__(self):
        return self

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


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


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

import OCC.Core.Standard
import OCC.Core.NCollection
import OCC.Core.TDF
import OCC.Core.TCollection
import OCC.Core.TColStd
import OCC.Core.TopTools
import OCC.Core.TopoDS
import OCC.Core.Message
import OCC.Core.TopAbs
import OCC.Core.TopLoc
import OCC.Core.gp
TNaming_PRIMITIVE = _TNaming.TNaming_PRIMITIVE
TNaming_GENERATED = _TNaming.TNaming_GENERATED
TNaming_MODIFY = _TNaming.TNaming_MODIFY
TNaming_DELETE = _TNaming.TNaming_DELETE
TNaming_REPLACE = _TNaming.TNaming_REPLACE
TNaming_SELECTED = _TNaming.TNaming_SELECTED
TNaming_UNKNOWN = _TNaming.TNaming_UNKNOWN
TNaming_IDENTITY = _TNaming.TNaming_IDENTITY
TNaming_MODIFUNTIL = _TNaming.TNaming_MODIFUNTIL
TNaming_GENERATION = _TNaming.TNaming_GENERATION
TNaming_INTERSECTION = _TNaming.TNaming_INTERSECTION
TNaming_UNION = _TNaming.TNaming_UNION
TNaming_SUBSTRACTION = _TNaming.TNaming_SUBSTRACTION
TNaming_CONSTSHAPE = _TNaming.TNaming_CONSTSHAPE
TNaming_FILTERBYNEIGHBOURGS = _TNaming.TNaming_FILTERBYNEIGHBOURGS
TNaming_ORIENTATION = _TNaming.TNaming_ORIENTATION
TNaming_WIREIN = _TNaming.TNaming_WIREIN
TNaming_SHELLIN = _TNaming.TNaming_SHELLIN
Handle_TNaming_DeltaOnModification_Create = _TNaming.Handle_TNaming_DeltaOnModification_Create
Handle_TNaming_DeltaOnModification_DownCast = _TNaming.Handle_TNaming_DeltaOnModification_DownCast
Handle_TNaming_DeltaOnModification_IsNull = _TNaming.Handle_TNaming_DeltaOnModification_IsNull
Handle_TNaming_DeltaOnRemoval_Create = _TNaming.Handle_TNaming_DeltaOnRemoval_Create
Handle_TNaming_DeltaOnRemoval_DownCast = _TNaming.Handle_TNaming_DeltaOnRemoval_DownCast
Handle_TNaming_DeltaOnRemoval_IsNull = _TNaming.Handle_TNaming_DeltaOnRemoval_IsNull
Handle_TNaming_NamedShape_Create = _TNaming.Handle_TNaming_NamedShape_Create
Handle_TNaming_NamedShape_DownCast = _TNaming.Handle_TNaming_NamedShape_DownCast
Handle_TNaming_NamedShape_IsNull = _TNaming.Handle_TNaming_NamedShape_IsNull
Handle_TNaming_Naming_Create = _TNaming.Handle_TNaming_Naming_Create
Handle_TNaming_Naming_DownCast = _TNaming.Handle_TNaming_Naming_DownCast
Handle_TNaming_Naming_IsNull = _TNaming.Handle_TNaming_Naming_IsNull
Handle_TNaming_TranslateTool_Create = _TNaming.Handle_TNaming_TranslateTool_Create
Handle_TNaming_TranslateTool_DownCast = _TNaming.Handle_TNaming_TranslateTool_DownCast
Handle_TNaming_TranslateTool_IsNull = _TNaming.Handle_TNaming_TranslateTool_IsNull
Handle_TNaming_UsedShapes_Create = _TNaming.Handle_TNaming_UsedShapes_Create
Handle_TNaming_UsedShapes_DownCast = _TNaming.Handle_TNaming_UsedShapes_DownCast
Handle_TNaming_UsedShapes_IsNull = _TNaming.Handle_TNaming_UsedShapes_IsNull
class TNaming_DataMapOfShapePtrRefShape(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    begin = _swig_new_instance_method(_TNaming.TNaming_DataMapOfShapePtrRefShape_begin)
    end = _swig_new_instance_method(_TNaming.TNaming_DataMapOfShapePtrRefShape_end)
    cbegin = _swig_new_instance_method(_TNaming.TNaming_DataMapOfShapePtrRefShape_cbegin)
    cend = _swig_new_instance_method(_TNaming.TNaming_DataMapOfShapePtrRefShape_cend)

    def __init__(self, *args):
        _TNaming.TNaming_DataMapOfShapePtrRefShape_swiginit(self, _TNaming.new_TNaming_DataMapOfShapePtrRefShape(*args))
    Exchange = _swig_new_instance_method(_TNaming.TNaming_DataMapOfShapePtrRefShape_Exchange)
    Assign = _swig_new_instance_method(_TNaming.TNaming_DataMapOfShapePtrRefShape_Assign)
    Set = _swig_new_instance_method(_TNaming.TNaming_DataMapOfShapePtrRefShape_Set)
    ReSize = _swig_new_instance_method(_TNaming.TNaming_DataMapOfShapePtrRefShape_ReSize)
    Bind = _swig_new_instance_method(_TNaming.TNaming_DataMapOfShapePtrRefShape_Bind)
    Bound = _swig_new_instance_method(_TNaming.TNaming_DataMapOfShapePtrRefShape_Bound)
    IsBound = _swig_new_instance_method(_TNaming.TNaming_DataMapOfShapePtrRefShape_IsBound)
    UnBind = _swig_new_instance_method(_TNaming.TNaming_DataMapOfShapePtrRefShape_UnBind)
    Seek = _swig_new_instance_method(_TNaming.TNaming_DataMapOfShapePtrRefShape_Seek)
    Find = _swig_new_instance_method(_TNaming.TNaming_DataMapOfShapePtrRefShape_Find)
    ChangeSeek = _swig_new_instance_method(_TNaming.TNaming_DataMapOfShapePtrRefShape_ChangeSeek)
    ChangeFind = _swig_new_instance_method(_TNaming.TNaming_DataMapOfShapePtrRefShape_ChangeFind)
    __call__ = _swig_new_instance_method(_TNaming.TNaming_DataMapOfShapePtrRefShape___call__)
    Clear = _swig_new_instance_method(_TNaming.TNaming_DataMapOfShapePtrRefShape_Clear)
    __swig_destroy__ = _TNaming.delete_TNaming_DataMapOfShapePtrRefShape
    Size = _swig_new_instance_method(_TNaming.TNaming_DataMapOfShapePtrRefShape_Size)

# Register TNaming_DataMapOfShapePtrRefShape in _TNaming:
_TNaming.TNaming_DataMapOfShapePtrRefShape_swigregister(TNaming_DataMapOfShapePtrRefShape)

class TNaming_ListOfIndexedDataMapOfShapeListOfShape(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    begin = _swig_new_instance_method(_TNaming.TNaming_ListOfIndexedDataMapOfShapeListOfShape_begin)
    end = _swig_new_instance_method(_TNaming.TNaming_ListOfIndexedDataMapOfShapeListOfShape_end)
    cbegin = _swig_new_instance_method(_TNaming.TNaming_ListOfIndexedDataMapOfShapeListOfShape_cbegin)
    cend = _swig_new_instance_method(_TNaming.TNaming_ListOfIndexedDataMapOfShapeListOfShape_cend)

    def __init__(self, *args):
        _TNaming.TNaming_ListOfIndexedDataMapOfShapeListOfShape_swiginit(self, _TNaming.new_TNaming_ListOfIndexedDataMapOfShapeListOfShape(*args))
    Size = _swig_new_instance_method(_TNaming.TNaming_ListOfIndexedDataMapOfShapeListOfShape_Size)
    Assign = _swig_new_instance_method(_TNaming.TNaming_ListOfIndexedDataMapOfShapeListOfShape_Assign)
    Set = _swig_new_instance_method(_TNaming.TNaming_ListOfIndexedDataMapOfShapeListOfShape_Set)
    Clear = _swig_new_instance_method(_TNaming.TNaming_ListOfIndexedDataMapOfShapeListOfShape_Clear)
    First = _swig_new_instance_method(_TNaming.TNaming_ListOfIndexedDataMapOfShapeListOfShape_First)
    Last = _swig_new_instance_method(_TNaming.TNaming_ListOfIndexedDataMapOfShapeListOfShape_Last)
    Append = _swig_new_instance_method(_TNaming.TNaming_ListOfIndexedDataMapOfShapeListOfShape_Append)
    Prepend = _swig_new_instance_method(_TNaming.TNaming_ListOfIndexedDataMapOfShapeListOfShape_Prepend)
    RemoveFirst = _swig_new_instance_method(_TNaming.TNaming_ListOfIndexedDataMapOfShapeListOfShape_RemoveFirst)
    Remove = _swig_new_instance_method(_TNaming.TNaming_ListOfIndexedDataMapOfShapeListOfShape_Remove)
    InsertBefore = _swig_new_instance_method(_TNaming.TNaming_ListOfIndexedDataMapOfShapeListOfShape_InsertBefore)
    InsertAfter = _swig_new_instance_method(_TNaming.TNaming_ListOfIndexedDataMapOfShapeListOfShape_InsertAfter)
    Reverse = _swig_new_instance_method(_TNaming.TNaming_ListOfIndexedDataMapOfShapeListOfShape_Reverse)
    __swig_destroy__ = _TNaming.delete_TNaming_ListOfIndexedDataMapOfShapeListOfShape

# Register TNaming_ListOfIndexedDataMapOfShapeListOfShape in _TNaming:
_TNaming.TNaming_ListOfIndexedDataMapOfShapeListOfShape_swigregister(TNaming_ListOfIndexedDataMapOfShapeListOfShape)

class TNaming_ListIteratorOfListOfIndexedDataMapOfShapeListOfShape(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):
        _TNaming.TNaming_ListIteratorOfListOfIndexedDataMapOfShapeListOfShape_swiginit(self, _TNaming.new_TNaming_ListIteratorOfListOfIndexedDataMapOfShapeListOfShape(*args))
    More = _swig_new_instance_method(_TNaming.TNaming_ListIteratorOfListOfIndexedDataMapOfShapeListOfShape_More)
    Next = _swig_new_instance_method(_TNaming.TNaming_ListIteratorOfListOfIndexedDataMapOfShapeListOfShape_Next)
    Value = _swig_new_instance_method(_TNaming.TNaming_ListIteratorOfListOfIndexedDataMapOfShapeListOfShape_Value)
    ChangeValue = _swig_new_instance_method(_TNaming.TNaming_ListIteratorOfListOfIndexedDataMapOfShapeListOfShape_ChangeValue)
    __swig_destroy__ = _TNaming.delete_TNaming_ListIteratorOfListOfIndexedDataMapOfShapeListOfShape

# Register TNaming_ListIteratorOfListOfIndexedDataMapOfShapeListOfShape in _TNaming:
_TNaming.TNaming_ListIteratorOfListOfIndexedDataMapOfShapeListOfShape_swigregister(TNaming_ListIteratorOfListOfIndexedDataMapOfShapeListOfShape)

class TNaming_NamedShapeHasher(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    HashCode = _swig_new_static_method(_TNaming.TNaming_NamedShapeHasher_HashCode)
    IsEqual = _swig_new_static_method(_TNaming.TNaming_NamedShapeHasher_IsEqual)

    def __init__(self):
        _TNaming.TNaming_NamedShapeHasher_swiginit(self, _TNaming.new_TNaming_NamedShapeHasher())
    __swig_destroy__ = _TNaming.delete_TNaming_NamedShapeHasher

# Register TNaming_NamedShapeHasher in _TNaming:
_TNaming.TNaming_NamedShapeHasher_swigregister(TNaming_NamedShapeHasher)
TNaming_NamedShapeHasher_HashCode = _TNaming.TNaming_NamedShapeHasher_HashCode
TNaming_NamedShapeHasher_IsEqual = _TNaming.TNaming_NamedShapeHasher_IsEqual

class TNaming_MapOfShape(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    cbegin = _swig_new_instance_method(_TNaming.TNaming_MapOfShape_cbegin)
    cend = _swig_new_instance_method(_TNaming.TNaming_MapOfShape_cend)

    def __init__(self, *args):
        _TNaming.TNaming_MapOfShape_swiginit(self, _TNaming.new_TNaming_MapOfShape(*args))
    Exchange = _swig_new_instance_method(_TNaming.TNaming_MapOfShape_Exchange)
    Assign = _swig_new_instance_method(_TNaming.TNaming_MapOfShape_Assign)
    Set = _swig_new_instance_method(_TNaming.TNaming_MapOfShape_Set)
    ReSize = _swig_new_instance_method(_TNaming.TNaming_MapOfShape_ReSize)
    Add = _swig_new_instance_method(_TNaming.TNaming_MapOfShape_Add)
    Added = _swig_new_instance_method(_TNaming.TNaming_MapOfShape_Added)
    Remove = _swig_new_instance_method(_TNaming.TNaming_MapOfShape_Remove)
    Clear = _swig_new_instance_method(_TNaming.TNaming_MapOfShape_Clear)
    __swig_destroy__ = _TNaming.delete_TNaming_MapOfShape
    Size = _swig_new_instance_method(_TNaming.TNaming_MapOfShape_Size)
    IsEqual = _swig_new_instance_method(_TNaming.TNaming_MapOfShape_IsEqual)
    Contains = _swig_new_instance_method(_TNaming.TNaming_MapOfShape_Contains)
    Union = _swig_new_instance_method(_TNaming.TNaming_MapOfShape_Union)
    Unite = _swig_new_instance_method(_TNaming.TNaming_MapOfShape_Unite)
    HasIntersection = _swig_new_instance_method(_TNaming.TNaming_MapOfShape_HasIntersection)
    Intersection = _swig_new_instance_method(_TNaming.TNaming_MapOfShape_Intersection)
    Intersect = _swig_new_instance_method(_TNaming.TNaming_MapOfShape_Intersect)
    Subtraction = _swig_new_instance_method(_TNaming.TNaming_MapOfShape_Subtraction)
    Subtract = _swig_new_instance_method(_TNaming.TNaming_MapOfShape_Subtract)
    Difference = _swig_new_instance_method(_TNaming.TNaming_MapOfShape_Difference)
    Differ = _swig_new_instance_method(_TNaming.TNaming_MapOfShape_Differ)

# Register TNaming_MapOfShape in _TNaming:
_TNaming.TNaming_MapOfShape_swigregister(TNaming_MapOfShape)

class TNaming_DataMapOfShapeMapOfShape(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    begin = _swig_new_instance_method(_TNaming.TNaming_DataMapOfShapeMapOfShape_begin)
    end = _swig_new_instance_method(_TNaming.TNaming_DataMapOfShapeMapOfShape_end)
    cbegin = _swig_new_instance_method(_TNaming.TNaming_DataMapOfShapeMapOfShape_cbegin)
    cend = _swig_new_instance_method(_TNaming.TNaming_DataMapOfShapeMapOfShape_cend)

    def __init__(self, *args):
        _TNaming.TNaming_DataMapOfShapeMapOfShape_swiginit(self, _TNaming.new_TNaming_DataMapOfShapeMapOfShape(*args))
    Exchange = _swig_new_instance_method(_TNaming.TNaming_DataMapOfShapeMapOfShape_Exchange)
    Assign = _swig_new_instance_method(_TNaming.TNaming_DataMapOfShapeMapOfShape_Assign)
    Set = _swig_new_instance_method(_TNaming.TNaming_DataMapOfShapeMapOfShape_Set)
    ReSize = _swig_new_instance_method(_TNaming.TNaming_DataMapOfShapeMapOfShape_ReSize)
    Bind = _swig_new_instance_method(_TNaming.TNaming_DataMapOfShapeMapOfShape_Bind)
    Bound = _swig_new_instance_method(_TNaming.TNaming_DataMapOfShapeMapOfShape_Bound)
    IsBound = _swig_new_instance_method(_TNaming.TNaming_DataMapOfShapeMapOfShape_IsBound)
    UnBind = _swig_new_instance_method(_TNaming.TNaming_DataMapOfShapeMapOfShape_UnBind)
    Seek = _swig_new_instance_method(_TNaming.TNaming_DataMapOfShapeMapOfShape_Seek)
    Find = _swig_new_instance_method(_TNaming.TNaming_DataMapOfShapeMapOfShape_Find)
    ChangeSeek = _swig_new_instance_method(_TNaming.TNaming_DataMapOfShapeMapOfShape_ChangeSeek)
    ChangeFind = _swig_new_instance_method(_TNaming.TNaming_DataMapOfShapeMapOfShape_ChangeFind)
    __call__ = _swig_new_instance_method(_TNaming.TNaming_DataMapOfShapeMapOfShape___call__)
    Clear = _swig_new_instance_method(_TNaming.TNaming_DataMapOfShapeMapOfShape_Clear)
    __swig_destroy__ = _TNaming.delete_TNaming_DataMapOfShapeMapOfShape
    Size = _swig_new_instance_method(_TNaming.TNaming_DataMapOfShapeMapOfShape_Size)

# Register TNaming_DataMapOfShapeMapOfShape in _TNaming:
_TNaming.TNaming_DataMapOfShapeMapOfShape_swigregister(TNaming_DataMapOfShapeMapOfShape)

class TNaming_MapOfNamedShape(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    cbegin = _swig_new_instance_method(_TNaming.TNaming_MapOfNamedShape_cbegin)
    cend = _swig_new_instance_method(_TNaming.TNaming_MapOfNamedShape_cend)

    def __init__(self, *args):
        _TNaming.TNaming_MapOfNamedShape_swiginit(self, _TNaming.new_TNaming_MapOfNamedShape(*args))
    Exchange = _swig_new_instance_method(_TNaming.TNaming_MapOfNamedShape_Exchange)
    Assign = _swig_new_instance_method(_TNaming.TNaming_MapOfNamedShape_Assign)
    Set = _swig_new_instance_method(_TNaming.TNaming_MapOfNamedShape_Set)
    ReSize = _swig_new_instance_method(_TNaming.TNaming_MapOfNamedShape_ReSize)
    Add = _swig_new_instance_method(_TNaming.TNaming_MapOfNamedShape_Add)
    Added = _swig_new_instance_method(_TNaming.TNaming_MapOfNamedShape_Added)
    Remove = _swig_new_instance_method(_TNaming.TNaming_MapOfNamedShape_Remove)
    Clear = _swig_new_instance_method(_TNaming.TNaming_MapOfNamedShape_Clear)
    __swig_destroy__ = _TNaming.delete_TNaming_MapOfNamedShape
    Size = _swig_new_instance_method(_TNaming.TNaming_MapOfNamedShape_Size)
    IsEqual = _swig_new_instance_method(_TNaming.TNaming_MapOfNamedShape_IsEqual)
    Contains = _swig_new_instance_method(_TNaming.TNaming_MapOfNamedShape_Contains)
    Union = _swig_new_instance_method(_TNaming.TNaming_MapOfNamedShape_Union)
    Unite = _swig_new_instance_method(_TNaming.TNaming_MapOfNamedShape_Unite)
    HasIntersection = _swig_new_instance_method(_TNaming.TNaming_MapOfNamedShape_HasIntersection)
    Intersection = _swig_new_instance_method(_TNaming.TNaming_MapOfNamedShape_Intersection)
    Intersect = _swig_new_instance_method(_TNaming.TNaming_MapOfNamedShape_Intersect)
    Subtraction = _swig_new_instance_method(_TNaming.TNaming_MapOfNamedShape_Subtraction)
    Subtract = _swig_new_instance_method(_TNaming.TNaming_MapOfNamedShape_Subtract)
    Difference = _swig_new_instance_method(_TNaming.TNaming_MapOfNamedShape_Difference)
    Differ = _swig_new_instance_method(_TNaming.TNaming_MapOfNamedShape_Differ)

# Register TNaming_MapOfNamedShape in _TNaming:
_TNaming.TNaming_MapOfNamedShape_swigregister(TNaming_MapOfNamedShape)

class TNaming_ListOfNamedShape(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    begin = _swig_new_instance_method(_TNaming.TNaming_ListOfNamedShape_begin)
    end = _swig_new_instance_method(_TNaming.TNaming_ListOfNamedShape_end)
    cbegin = _swig_new_instance_method(_TNaming.TNaming_ListOfNamedShape_cbegin)
    cend = _swig_new_instance_method(_TNaming.TNaming_ListOfNamedShape_cend)

    def __init__(self, *args):
        _TNaming.TNaming_ListOfNamedShape_swiginit(self, _TNaming.new_TNaming_ListOfNamedShape(*args))
    Size = _swig_new_instance_method(_TNaming.TNaming_ListOfNamedShape_Size)
    Assign = _swig_new_instance_method(_TNaming.TNaming_ListOfNamedShape_Assign)
    Set = _swig_new_instance_method(_TNaming.TNaming_ListOfNamedShape_Set)
    Clear = _swig_new_instance_method(_TNaming.TNaming_ListOfNamedShape_Clear)
    First = _swig_new_instance_method(_TNaming.TNaming_ListOfNamedShape_First)
    Last = _swig_new_instance_method(_TNaming.TNaming_ListOfNamedShape_Last)
    Append = _swig_new_instance_method(_TNaming.TNaming_ListOfNamedShape_Append)
    Prepend = _swig_new_instance_method(_TNaming.TNaming_ListOfNamedShape_Prepend)
    RemoveFirst = _swig_new_instance_method(_TNaming.TNaming_ListOfNamedShape_RemoveFirst)
    Remove = _swig_new_instance_method(_TNaming.TNaming_ListOfNamedShape_Remove)
    InsertBefore = _swig_new_instance_method(_TNaming.TNaming_ListOfNamedShape_InsertBefore)
    InsertAfter = _swig_new_instance_method(_TNaming.TNaming_ListOfNamedShape_InsertAfter)
    Reverse = _swig_new_instance_method(_TNaming.TNaming_ListOfNamedShape_Reverse)
    __swig_destroy__ = _TNaming.delete_TNaming_ListOfNamedShape

# Register TNaming_ListOfNamedShape in _TNaming:
_TNaming.TNaming_ListOfNamedShape_swigregister(TNaming_ListOfNamedShape)

class TNaming_ListIteratorOfListOfNamedShape(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):
        _TNaming.TNaming_ListIteratorOfListOfNamedShape_swiginit(self, _TNaming.new_TNaming_ListIteratorOfListOfNamedShape(*args))
    More = _swig_new_instance_method(_TNaming.TNaming_ListIteratorOfListOfNamedShape_More)
    Next = _swig_new_instance_method(_TNaming.TNaming_ListIteratorOfListOfNamedShape_Next)
    Value = _swig_new_instance_method(_TNaming.TNaming_ListIteratorOfListOfNamedShape_Value)
    ChangeValue = _swig_new_instance_method(_TNaming.TNaming_ListIteratorOfListOfNamedShape_ChangeValue)
    __swig_destroy__ = _TNaming.delete_TNaming_ListIteratorOfListOfNamedShape

# Register TNaming_ListIteratorOfListOfNamedShape in _TNaming:
_TNaming.TNaming_ListIteratorOfListOfNamedShape_swigregister(TNaming_ListIteratorOfListOfNamedShape)

class TNaming_DataMapOfShapeShapesSet(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    begin = _swig_new_instance_method(_TNaming.TNaming_DataMapOfShapeShapesSet_begin)
    end = _swig_new_instance_method(_TNaming.TNaming_DataMapOfShapeShapesSet_end)
    cbegin = _swig_new_instance_method(_TNaming.TNaming_DataMapOfShapeShapesSet_cbegin)
    cend = _swig_new_instance_method(_TNaming.TNaming_DataMapOfShapeShapesSet_cend)

    def __init__(self, *args):
        _TNaming.TNaming_DataMapOfShapeShapesSet_swiginit(self, _TNaming.new_TNaming_DataMapOfShapeShapesSet(*args))
    Exchange = _swig_new_instance_method(_TNaming.TNaming_DataMapOfShapeShapesSet_Exchange)
    Assign = _swig_new_instance_method(_TNaming.TNaming_DataMapOfShapeShapesSet_Assign)
    Set = _swig_new_instance_method(_TNaming.TNaming_DataMapOfShapeShapesSet_Set)
    ReSize = _swig_new_instance_method(_TNaming.TNaming_DataMapOfShapeShapesSet_ReSize)
    Bind = _swig_new_instance_method(_TNaming.TNaming_DataMapOfShapeShapesSet_Bind)
    Bound = _swig_new_instance_method(_TNaming.TNaming_DataMapOfShapeShapesSet_Bound)
    IsBound = _swig_new_instance_method(_TNaming.TNaming_DataMapOfShapeShapesSet_IsBound)
    UnBind = _swig_new_instance_method(_TNaming.TNaming_DataMapOfShapeShapesSet_UnBind)
    Seek = _swig_new_instance_method(_TNaming.TNaming_DataMapOfShapeShapesSet_Seek)
    Find = _swig_new_instance_method(_TNaming.TNaming_DataMapOfShapeShapesSet_Find)
    ChangeSeek = _swig_new_instance_method(_TNaming.TNaming_DataMapOfShapeShapesSet_ChangeSeek)
    ChangeFind = _swig_new_instance_method(_TNaming.TNaming_DataMapOfShapeShapesSet_ChangeFind)
    __call__ = _swig_new_instance_method(_TNaming.TNaming_DataMapOfShapeShapesSet___call__)
    Clear = _swig_new_instance_method(_TNaming.TNaming_DataMapOfShapeShapesSet_Clear)
    __swig_destroy__ = _TNaming.delete_TNaming_DataMapOfShapeShapesSet
    Size = _swig_new_instance_method(_TNaming.TNaming_DataMapOfShapeShapesSet_Size)

# Register TNaming_DataMapOfShapeShapesSet in _TNaming:
_TNaming.TNaming_DataMapOfShapeShapesSet_swigregister(TNaming_DataMapOfShapeShapesSet)

class TNaming_ListOfMapOfShape(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    begin = _swig_new_instance_method(_TNaming.TNaming_ListOfMapOfShape_begin)
    end = _swig_new_instance_method(_TNaming.TNaming_ListOfMapOfShape_end)
    cbegin = _swig_new_instance_method(_TNaming.TNaming_ListOfMapOfShape_cbegin)
    cend = _swig_new_instance_method(_TNaming.TNaming_ListOfMapOfShape_cend)

    def __init__(self, *args):
        _TNaming.TNaming_ListOfMapOfShape_swiginit(self, _TNaming.new_TNaming_ListOfMapOfShape(*args))
    Size = _swig_new_instance_method(_TNaming.TNaming_ListOfMapOfShape_Size)
    Assign = _swig_new_instance_method(_TNaming.TNaming_ListOfMapOfShape_Assign)
    Set = _swig_new_instance_method(_TNaming.TNaming_ListOfMapOfShape_Set)
    Clear = _swig_new_instance_method(_TNaming.TNaming_ListOfMapOfShape_Clear)
    First = _swig_new_instance_method(_TNaming.TNaming_ListOfMapOfShape_First)
    Last = _swig_new_instance_method(_TNaming.TNaming_ListOfMapOfShape_Last)
    Append = _swig_new_instance_method(_TNaming.TNaming_ListOfMapOfShape_Append)
    Prepend = _swig_new_instance_method(_TNaming.TNaming_ListOfMapOfShape_Prepend)
    RemoveFirst = _swig_new_instance_method(_TNaming.TNaming_ListOfMapOfShape_RemoveFirst)
    Remove = _swig_new_instance_method(_TNaming.TNaming_ListOfMapOfShape_Remove)
    InsertBefore = _swig_new_instance_method(_TNaming.TNaming_ListOfMapOfShape_InsertBefore)
    InsertAfter = _swig_new_instance_method(_TNaming.TNaming_ListOfMapOfShape_InsertAfter)
    Reverse = _swig_new_instance_method(_TNaming.TNaming_ListOfMapOfShape_Reverse)
    __swig_destroy__ = _TNaming.delete_TNaming_ListOfMapOfShape

# Register TNaming_ListOfMapOfShape in _TNaming:
_TNaming.TNaming_ListOfMapOfShape_swigregister(TNaming_ListOfMapOfShape)

class TNaming_ListIteratorOfListOfMapOfShape(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):
        _TNaming.TNaming_ListIteratorOfListOfMapOfShape_swiginit(self, _TNaming.new_TNaming_ListIteratorOfListOfMapOfShape(*args))
    More = _swig_new_instance_method(_TNaming.TNaming_ListIteratorOfListOfMapOfShape_More)
    Next = _swig_new_instance_method(_TNaming.TNaming_ListIteratorOfListOfMapOfShape_Next)
    Value = _swig_new_instance_method(_TNaming.TNaming_ListIteratorOfListOfMapOfShape_Value)
    ChangeValue = _swig_new_instance_method(_TNaming.TNaming_ListIteratorOfListOfMapOfShape_ChangeValue)
    __swig_destroy__ = _TNaming.delete_TNaming_ListIteratorOfListOfMapOfShape

# Register TNaming_ListIteratorOfListOfMapOfShape in _TNaming:
_TNaming.TNaming_ListIteratorOfListOfMapOfShape_swigregister(TNaming_ListIteratorOfListOfMapOfShape)

class tnaming(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    ChangeShapes = _swig_new_static_method(_TNaming.tnaming_ChangeShapes)
    Displace = _swig_new_static_method(_TNaming.tnaming_Displace)
    FindUniqueContext = _swig_new_static_method(_TNaming.tnaming_FindUniqueContext)
    FindUniqueContextSet = _swig_new_static_method(_TNaming.tnaming_FindUniqueContextSet)
    IDList = _swig_new_static_method(_TNaming.tnaming_IDList)
    MakeShape = _swig_new_static_method(_TNaming.tnaming_MakeShape)
    OuterShell = _swig_new_static_method(_TNaming.tnaming_OuterShell)
    OuterWire = _swig_new_static_method(_TNaming.tnaming_OuterWire)
    Print = _swig_new_static_method(_TNaming.tnaming_Print)
    Replicate = _swig_new_static_method(_TNaming.tnaming_Replicate)
    Substitute = _swig_new_static_method(_TNaming.tnaming_Substitute)
    SubstituteSShape = _swig_new_static_method(_TNaming.tnaming_SubstituteSShape)
    Transform = _swig_new_static_method(_TNaming.tnaming_Transform)
    Update = _swig_new_static_method(_TNaming.tnaming_Update)

    __repr__ = _dumps_object


    def __init__(self):
        _TNaming.tnaming_swiginit(self, _TNaming.new_tnaming())
    __swig_destroy__ = _TNaming.delete_tnaming

# Register tnaming in _TNaming:
_TNaming.tnaming_swigregister(tnaming)
tnaming_ChangeShapes = _TNaming.tnaming_ChangeShapes
tnaming_Displace = _TNaming.tnaming_Displace
tnaming_FindUniqueContext = _TNaming.tnaming_FindUniqueContext
tnaming_FindUniqueContextSet = _TNaming.tnaming_FindUniqueContextSet
tnaming_IDList = _TNaming.tnaming_IDList
tnaming_MakeShape = _TNaming.tnaming_MakeShape
tnaming_OuterShell = _TNaming.tnaming_OuterShell
tnaming_OuterWire = _TNaming.tnaming_OuterWire
tnaming_Print = _TNaming.tnaming_Print
tnaming_Replicate = _TNaming.tnaming_Replicate
tnaming_Substitute = _TNaming.tnaming_Substitute
tnaming_SubstituteSShape = _TNaming.tnaming_SubstituteSShape
tnaming_Transform = _TNaming.tnaming_Transform
tnaming_Update = _TNaming.tnaming_Update

class TNaming_Builder(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    Delete = _swig_new_instance_method(_TNaming.TNaming_Builder_Delete)
    Generated = _swig_new_instance_method(_TNaming.TNaming_Builder_Generated)
    Modify = _swig_new_instance_method(_TNaming.TNaming_Builder_Modify)
    NamedShape = _swig_new_instance_method(_TNaming.TNaming_Builder_NamedShape)
    Select = _swig_new_instance_method(_TNaming.TNaming_Builder_Select)

    def __init__(self, *args):
        r"""
        * Create an Builder. Warning: Before Addition copies the current Value, and clear
        	:param aLabel:
        	:type aLabel: TDF_Label
        	:rtype: None
        """
        _TNaming.TNaming_Builder_swiginit(self, _TNaming.new_TNaming_Builder(*args))

    __repr__ = _dumps_object

    __swig_destroy__ = _TNaming.delete_TNaming_Builder

# Register TNaming_Builder in _TNaming:
_TNaming.TNaming_Builder_swigregister(TNaming_Builder)

class TNaming_CopyShape(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    CopyTool = _swig_new_static_method(_TNaming.TNaming_CopyShape_CopyTool)
    Translate = _swig_new_static_method(_TNaming.TNaming_CopyShape_Translate)

    __repr__ = _dumps_object


    def __init__(self):
        _TNaming.TNaming_CopyShape_swiginit(self, _TNaming.new_TNaming_CopyShape())
    __swig_destroy__ = _TNaming.delete_TNaming_CopyShape

# Register TNaming_CopyShape in _TNaming:
_TNaming.TNaming_CopyShape_swigregister(TNaming_CopyShape)
TNaming_CopyShape_CopyTool = _TNaming.TNaming_CopyShape_CopyTool
TNaming_CopyShape_Translate = _TNaming.TNaming_CopyShape_Translate

class TNaming_DeltaOnModification(OCC.Core.TDF.TDF_DeltaOnModification):
    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"""
        * Initializes a TDF_DeltaOnModification.
        	:param NS:
        	:type NS: TNaming_NamedShape
        	:rtype: None
        """
        _TNaming.TNaming_DeltaOnModification_swiginit(self, _TNaming.new_TNaming_DeltaOnModification(*args))


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


    __repr__ = _dumps_object

    __swig_destroy__ = _TNaming.delete_TNaming_DeltaOnModification

# Register TNaming_DeltaOnModification in _TNaming:
_TNaming.TNaming_DeltaOnModification_swigregister(TNaming_DeltaOnModification)

class TNaming_DeltaOnRemoval(OCC.Core.TDF.TDF_DeltaOnRemoval):
    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"""
        * Initializes a TDF_DeltaOnModification.
        	:param NS:
        	:type NS: TNaming_NamedShape
        	:rtype: None
        """
        _TNaming.TNaming_DeltaOnRemoval_swiginit(self, _TNaming.new_TNaming_DeltaOnRemoval(*args))


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


    __repr__ = _dumps_object

    __swig_destroy__ = _TNaming.delete_TNaming_DeltaOnRemoval

# Register TNaming_DeltaOnRemoval in _TNaming:
_TNaming.TNaming_DeltaOnRemoval_swigregister(TNaming_DeltaOnRemoval)

class TNaming_Identifier(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    AncestorIdentification = _swig_new_instance_method(_TNaming.TNaming_Identifier_AncestorIdentification)
    ArgIsFeature = _swig_new_instance_method(_TNaming.TNaming_Identifier_ArgIsFeature)
    Feature = _swig_new_instance_method(_TNaming.TNaming_Identifier_Feature)
    FeatureArg = _swig_new_instance_method(_TNaming.TNaming_Identifier_FeatureArg)
    GeneratedIdentification = _swig_new_instance_method(_TNaming.TNaming_Identifier_GeneratedIdentification)
    Identification = _swig_new_instance_method(_TNaming.TNaming_Identifier_Identification)
    InitArgs = _swig_new_instance_method(_TNaming.TNaming_Identifier_InitArgs)
    IsDone = _swig_new_instance_method(_TNaming.TNaming_Identifier_IsDone)
    IsFeature = _swig_new_instance_method(_TNaming.TNaming_Identifier_IsFeature)
    MoreArgs = _swig_new_instance_method(_TNaming.TNaming_Identifier_MoreArgs)
    NamedShapeOfGeneration = _swig_new_instance_method(_TNaming.TNaming_Identifier_NamedShapeOfGeneration)
    NextArg = _swig_new_instance_method(_TNaming.TNaming_Identifier_NextArg)
    PrimitiveIdentification = _swig_new_instance_method(_TNaming.TNaming_Identifier_PrimitiveIdentification)
    ShapeArg = _swig_new_instance_method(_TNaming.TNaming_Identifier_ShapeArg)
    ShapeContext = _swig_new_instance_method(_TNaming.TNaming_Identifier_ShapeContext)

    def __init__(self, *args):
        r"""
        :param Lab:
        	:type Lab: TDF_Label
        	:param S:
        	:type S: TopoDS_Shape
        	:param Context:
        	:type Context: TopoDS_Shape
        	:param Geom:
        	:type Geom: bool
        	:rtype: None:param Lab:
        	:type Lab: TDF_Label
        	:param S:
        	:type S: TopoDS_Shape
        	:param ContextNS:
        	:type ContextNS: TNaming_NamedShape
        	:param Geom:
        	:type Geom: bool
        	:rtype: None
        """
        _TNaming.TNaming_Identifier_swiginit(self, _TNaming.new_TNaming_Identifier(*args))
    Type = _swig_new_instance_method(_TNaming.TNaming_Identifier_Type)

    __repr__ = _dumps_object

    __swig_destroy__ = _TNaming.delete_TNaming_Identifier

# Register TNaming_Identifier in _TNaming:
_TNaming.TNaming_Identifier_swigregister(TNaming_Identifier)

class TNaming_Iterator(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    Evolution = _swig_new_instance_method(_TNaming.TNaming_Iterator_Evolution)
    IsModification = _swig_new_instance_method(_TNaming.TNaming_Iterator_IsModification)
    More = _swig_new_instance_method(_TNaming.TNaming_Iterator_More)
    NewShape = _swig_new_instance_method(_TNaming.TNaming_Iterator_NewShape)
    Next = _swig_new_instance_method(_TNaming.TNaming_Iterator_Next)
    OldShape = _swig_new_instance_method(_TNaming.TNaming_Iterator_OldShape)

    def __init__(self, *args):
        r"""
        * Iterates on all the history records in <anAtt>.
        	:param anAtt:
        	:type anAtt: TNaming_NamedShape
        	:rtype: None* Iterates on all the history records in the current transaction
        	:param aLabel:
        	:type aLabel: TDF_Label
        	:rtype: None* Iterates on all the history records in the transaction <aTrans>
        	:param aLabel:
        	:type aLabel: TDF_Label
        	:param aTrans:
        	:type aTrans: int
        	:rtype: None
        """
        _TNaming.TNaming_Iterator_swiginit(self, _TNaming.new_TNaming_Iterator(*args))

    __repr__ = _dumps_object

    __swig_destroy__ = _TNaming.delete_TNaming_Iterator

# Register TNaming_Iterator in _TNaming:
_TNaming.TNaming_Iterator_swigregister(TNaming_Iterator)

class TNaming_IteratorOnShapesSet(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    Init = _swig_new_instance_method(_TNaming.TNaming_IteratorOnShapesSet_Init)
    More = _swig_new_instance_method(_TNaming.TNaming_IteratorOnShapesSet_More)
    Next = _swig_new_instance_method(_TNaming.TNaming_IteratorOnShapesSet_Next)

    def __init__(self, *args):
        r"""
        :rtype: None:param S:
        	:type S: TNaming_ShapesSet
        	:rtype: None
        """
        _TNaming.TNaming_IteratorOnShapesSet_swiginit(self, _TNaming.new_TNaming_IteratorOnShapesSet(*args))
    Value = _swig_new_instance_method(_TNaming.TNaming_IteratorOnShapesSet_Value)

    __repr__ = _dumps_object

    __swig_destroy__ = _TNaming.delete_TNaming_IteratorOnShapesSet

# Register TNaming_IteratorOnShapesSet in _TNaming:
_TNaming.TNaming_IteratorOnShapesSet_swigregister(TNaming_IteratorOnShapesSet)

class TNaming_Localizer(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    Ancestors = _swig_new_instance_method(_TNaming.TNaming_Localizer_Ancestors)
    Backward = _swig_new_instance_method(_TNaming.TNaming_Localizer_Backward)
    FindFeaturesInAncestors = _swig_new_instance_method(_TNaming.TNaming_Localizer_FindFeaturesInAncestors)
    FindGenerator = _swig_new_static_method(_TNaming.TNaming_Localizer_FindGenerator)
    FindNeighbourg = _swig_new_instance_method(_TNaming.TNaming_Localizer_FindNeighbourg)
    FindShapeContext = _swig_new_static_method(_TNaming.TNaming_Localizer_FindShapeContext)
    GoBack = _swig_new_instance_method(_TNaming.TNaming_Localizer_GoBack)
    Init = _swig_new_instance_method(_TNaming.TNaming_Localizer_Init)
    IsNew = _swig_new_static_method(_TNaming.TNaming_Localizer_IsNew)
    SubShapes = _swig_new_instance_method(_TNaming.TNaming_Localizer_SubShapes)

    def __init__(self, *args):
        r""":rtype: None"""
        _TNaming.TNaming_Localizer_swiginit(self, _TNaming.new_TNaming_Localizer(*args))

    __repr__ = _dumps_object

    __swig_destroy__ = _TNaming.delete_TNaming_Localizer

# Register TNaming_Localizer in _TNaming:
_TNaming.TNaming_Localizer_swigregister(TNaming_Localizer)
TNaming_Localizer_FindGenerator = _TNaming.TNaming_Localizer_FindGenerator
TNaming_Localizer_FindShapeContext = _TNaming.TNaming_Localizer_FindShapeContext
TNaming_Localizer_IsNew = _TNaming.TNaming_Localizer_IsNew

class TNaming_Name(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    Append = _swig_new_instance_method(_TNaming.TNaming_Name_Append)
    Arguments = _swig_new_instance_method(_TNaming.TNaming_Name_Arguments)
    ContextLabel = _swig_new_instance_method(_TNaming.TNaming_Name_ContextLabel)
    Index = _swig_new_instance_method(_TNaming.TNaming_Name_Index)
    Orientation = _swig_new_instance_method(_TNaming.TNaming_Name_Orientation)
    Paste = _swig_new_instance_method(_TNaming.TNaming_Name_Paste)
    Shape = _swig_new_instance_method(_TNaming.TNaming_Name_Shape)
    ShapeType = _swig_new_instance_method(_TNaming.TNaming_Name_ShapeType)
    Solve = _swig_new_instance_method(_TNaming.TNaming_Name_Solve)
    StopNamedShape = _swig_new_instance_method(_TNaming.TNaming_Name_StopNamedShape)

    def __init__(self, *args):
        r""":rtype: None"""
        _TNaming.TNaming_Name_swiginit(self, _TNaming.new_TNaming_Name(*args))
    Type = _swig_new_instance_method(_TNaming.TNaming_Name_Type)

    __repr__ = _dumps_object

    __swig_destroy__ = _TNaming.delete_TNaming_Name

# Register TNaming_Name in _TNaming:
_TNaming.TNaming_Name_swigregister(TNaming_Name)

class TNaming_NamedShape(OCC.Core.TDF.TDF_Attribute):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    Clear = _swig_new_instance_method(_TNaming.TNaming_NamedShape_Clear)
    DeltaOnModification = _swig_new_instance_method(_TNaming.TNaming_NamedShape_DeltaOnModification)
    DumpToString = _swig_new_instance_method(_TNaming.TNaming_NamedShape_DumpToString)
    Evolution = _swig_new_instance_method(_TNaming.TNaming_NamedShape_Evolution)
    Get = _swig_new_instance_method(_TNaming.TNaming_NamedShape_Get)
    GetID = _swig_new_static_method(_TNaming.TNaming_NamedShape_GetID)
    IsEmpty = _swig_new_instance_method(_TNaming.TNaming_NamedShape_IsEmpty)
    SetVersion = _swig_new_instance_method(_TNaming.TNaming_NamedShape_SetVersion)

    def __init__(self, *args):
        r""":rtype: None"""
        _TNaming.TNaming_NamedShape_swiginit(self, _TNaming.new_TNaming_NamedShape(*args))
    Version = _swig_new_instance_method(_TNaming.TNaming_NamedShape_Version)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _TNaming.delete_TNaming_NamedShape

# Register TNaming_NamedShape in _TNaming:
_TNaming.TNaming_NamedShape_swigregister(TNaming_NamedShape)
TNaming_NamedShape_GetID = _TNaming.TNaming_NamedShape_GetID

class TNaming_Naming(OCC.Core.TDF.TDF_Attribute):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    ChangeName = _swig_new_instance_method(_TNaming.TNaming_Naming_ChangeName)
    DumpToString = _swig_new_instance_method(_TNaming.TNaming_Naming_DumpToString)
    GetID = _swig_new_static_method(_TNaming.TNaming_Naming_GetID)
    GetName = _swig_new_instance_method(_TNaming.TNaming_Naming_GetName)
    Insert = _swig_new_static_method(_TNaming.TNaming_Naming_Insert)
    IsDefined = _swig_new_instance_method(_TNaming.TNaming_Naming_IsDefined)
    Name = _swig_new_static_method(_TNaming.TNaming_Naming_Name)
    Regenerate = _swig_new_instance_method(_TNaming.TNaming_Naming_Regenerate)
    Solve = _swig_new_instance_method(_TNaming.TNaming_Naming_Solve)

    def __init__(self, *args):
        r""":rtype: None"""
        _TNaming.TNaming_Naming_swiginit(self, _TNaming.new_TNaming_Naming(*args))


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


    __repr__ = _dumps_object

    __swig_destroy__ = _TNaming.delete_TNaming_Naming

# Register TNaming_Naming in _TNaming:
_TNaming.TNaming_Naming_swigregister(TNaming_Naming)
TNaming_Naming_GetID = _TNaming.TNaming_Naming_GetID
TNaming_Naming_Insert = _TNaming.TNaming_Naming_Insert
TNaming_Naming_Name = _TNaming.TNaming_Naming_Name

class TNaming_NamingTool(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    BuildDescendants = _swig_new_static_method(_TNaming.TNaming_NamingTool_BuildDescendants)
    CurrentShape = _swig_new_static_method(_TNaming.TNaming_NamingTool_CurrentShape)
    CurrentShapeFromShape = _swig_new_static_method(_TNaming.TNaming_NamingTool_CurrentShapeFromShape)

    __repr__ = _dumps_object


    def __init__(self):
        _TNaming.TNaming_NamingTool_swiginit(self, _TNaming.new_TNaming_NamingTool())
    __swig_destroy__ = _TNaming.delete_TNaming_NamingTool

# Register TNaming_NamingTool in _TNaming:
_TNaming.TNaming_NamingTool_swigregister(TNaming_NamingTool)
TNaming_NamingTool_BuildDescendants = _TNaming.TNaming_NamingTool_BuildDescendants
TNaming_NamingTool_CurrentShape = _TNaming.TNaming_NamingTool_CurrentShape
TNaming_NamingTool_CurrentShapeFromShape = _TNaming.TNaming_NamingTool_CurrentShapeFromShape

class TNaming_NewShapeIterator(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    IsModification = _swig_new_instance_method(_TNaming.TNaming_NewShapeIterator_IsModification)
    Label = _swig_new_instance_method(_TNaming.TNaming_NewShapeIterator_Label)
    More = _swig_new_instance_method(_TNaming.TNaming_NewShapeIterator_More)
    NamedShape = _swig_new_instance_method(_TNaming.TNaming_NewShapeIterator_NamedShape)
    Next = _swig_new_instance_method(_TNaming.TNaming_NewShapeIterator_Next)
    Shape = _swig_new_instance_method(_TNaming.TNaming_NewShapeIterator_Shape)

    def __init__(self, *args):
        r"""
        :param aShape:
        	:type aShape: TopoDS_Shape
        	:param Transaction:
        	:type Transaction: int
        	:param access:
        	:type access: TDF_Label
        	:rtype: None:param aShape:
        	:type aShape: TopoDS_Shape
        	:param access:
        	:type access: TDF_Label
        	:rtype: None* Iterates from the current Shape in <anIterator>
        	:param anIterator:
        	:type anIterator: TNaming_NewShapeIterator
        	:rtype: None* Iterates from the current Shape in <anIterator>
        	:param anIterator:
        	:type anIterator: TNaming_Iterator
        	:rtype: None
        """
        _TNaming.TNaming_NewShapeIterator_swiginit(self, _TNaming.new_TNaming_NewShapeIterator(*args))

    __repr__ = _dumps_object

    __swig_destroy__ = _TNaming.delete_TNaming_NewShapeIterator

# Register TNaming_NewShapeIterator in _TNaming:
_TNaming.TNaming_NewShapeIterator_swigregister(TNaming_NewShapeIterator)

class TNaming_OldShapeIterator(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    IsModification = _swig_new_instance_method(_TNaming.TNaming_OldShapeIterator_IsModification)
    Label = _swig_new_instance_method(_TNaming.TNaming_OldShapeIterator_Label)
    More = _swig_new_instance_method(_TNaming.TNaming_OldShapeIterator_More)
    NamedShape = _swig_new_instance_method(_TNaming.TNaming_OldShapeIterator_NamedShape)
    Next = _swig_new_instance_method(_TNaming.TNaming_OldShapeIterator_Next)
    Shape = _swig_new_instance_method(_TNaming.TNaming_OldShapeIterator_Shape)

    def __init__(self, *args):
        r"""
        :param aShape:
        	:type aShape: TopoDS_Shape
        	:param Transaction:
        	:type Transaction: int
        	:param access:
        	:type access: TDF_Label
        	:rtype: None:param aShape:
        	:type aShape: TopoDS_Shape
        	:param access:
        	:type access: TDF_Label
        	:rtype: None* Iterates from the current Shape in <anIterator>
        	:param anIterator:
        	:type anIterator: TNaming_OldShapeIterator
        	:rtype: None* Iterates from the current Shape in <anIterator>
        	:param anIterator:
        	:type anIterator: TNaming_Iterator
        	:rtype: None
        """
        _TNaming.TNaming_OldShapeIterator_swiginit(self, _TNaming.new_TNaming_OldShapeIterator(*args))

    __repr__ = _dumps_object

    __swig_destroy__ = _TNaming.delete_TNaming_OldShapeIterator

# Register TNaming_OldShapeIterator in _TNaming:
_TNaming.TNaming_OldShapeIterator_swigregister(TNaming_OldShapeIterator)

class TNaming_RefShape(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    FirstUse = _swig_new_instance_method(_TNaming.TNaming_RefShape_FirstUse)
    Label = _swig_new_instance_method(_TNaming.TNaming_RefShape_Label)
    NamedShape = _swig_new_instance_method(_TNaming.TNaming_RefShape_NamedShape)
    Shape = _swig_new_instance_method(_TNaming.TNaming_RefShape_Shape)

    def __init__(self, *args):
        r"""
        :rtype: None:param S:
        	:type S: TopoDS_Shape
        	:rtype: None
        """
        _TNaming.TNaming_RefShape_swiginit(self, _TNaming.new_TNaming_RefShape(*args))

    __repr__ = _dumps_object

    __swig_destroy__ = _TNaming.delete_TNaming_RefShape

# Register TNaming_RefShape in _TNaming:
_TNaming.TNaming_RefShape_swigregister(TNaming_RefShape)

class TNaming_SameShapeIterator(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    Label = _swig_new_instance_method(_TNaming.TNaming_SameShapeIterator_Label)
    More = _swig_new_instance_method(_TNaming.TNaming_SameShapeIterator_More)
    Next = _swig_new_instance_method(_TNaming.TNaming_SameShapeIterator_Next)

    def __init__(self, *args):
        r"""
        :param aShape:
        	:type aShape: TopoDS_Shape
        	:param access:
        	:type access: TDF_Label
        	:rtype: None
        """
        _TNaming.TNaming_SameShapeIterator_swiginit(self, _TNaming.new_TNaming_SameShapeIterator(*args))

    __repr__ = _dumps_object

    __swig_destroy__ = _TNaming.delete_TNaming_SameShapeIterator

# Register TNaming_SameShapeIterator in _TNaming:
_TNaming.TNaming_SameShapeIterator_swigregister(TNaming_SameShapeIterator)

class TNaming_Scope(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    ChangeValid = _swig_new_instance_method(_TNaming.TNaming_Scope_ChangeValid)
    ClearValid = _swig_new_instance_method(_TNaming.TNaming_Scope_ClearValid)
    CurrentShape = _swig_new_instance_method(_TNaming.TNaming_Scope_CurrentShape)
    GetValid = _swig_new_instance_method(_TNaming.TNaming_Scope_GetValid)
    IsValid = _swig_new_instance_method(_TNaming.TNaming_Scope_IsValid)

    def __init__(self, *args):
        r"""
        * WithValid = False
        	:rtype: None* if <WithValid> the scope is defined by the map. If not on the whole framework.
        	:param WithValid:
        	:type WithValid: bool
        	:rtype: None* create a scope with a map. WithValid = True.
        	:param valid:
        	:type valid: TDF_LabelMap
        	:rtype: None
        """
        _TNaming.TNaming_Scope_swiginit(self, _TNaming.new_TNaming_Scope(*args))
    Unvalid = _swig_new_instance_method(_TNaming.TNaming_Scope_Unvalid)
    UnvalidChildren = _swig_new_instance_method(_TNaming.TNaming_Scope_UnvalidChildren)
    Valid = _swig_new_instance_method(_TNaming.TNaming_Scope_Valid)
    ValidChildren = _swig_new_instance_method(_TNaming.TNaming_Scope_ValidChildren)
    WithValid = _swig_new_instance_method(_TNaming.TNaming_Scope_WithValid)

    __repr__ = _dumps_object

    __swig_destroy__ = _TNaming.delete_TNaming_Scope

# Register TNaming_Scope in _TNaming:
_TNaming.TNaming_Scope_swigregister(TNaming_Scope)

class TNaming_Selector(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    Arguments = _swig_new_instance_method(_TNaming.TNaming_Selector_Arguments)
    IsIdentified = _swig_new_static_method(_TNaming.TNaming_Selector_IsIdentified)
    NamedShape = _swig_new_instance_method(_TNaming.TNaming_Selector_NamedShape)
    Select = _swig_new_instance_method(_TNaming.TNaming_Selector_Select)
    Solve = _swig_new_instance_method(_TNaming.TNaming_Selector_Solve)

    def __init__(self, *args):
        r"""
        * Create a selector on this label to select a shape. ==================
        	:param aLabel:
        	:type aLabel: TDF_Label
        	:rtype: None
        """
        _TNaming.TNaming_Selector_swiginit(self, _TNaming.new_TNaming_Selector(*args))

    __repr__ = _dumps_object

    __swig_destroy__ = _TNaming.delete_TNaming_Selector

# Register TNaming_Selector in _TNaming:
_TNaming.TNaming_Selector_swigregister(TNaming_Selector)
TNaming_Selector_IsIdentified = _TNaming.TNaming_Selector_IsIdentified

class TNaming_ShapesSet(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    Add = _swig_new_instance_method(_TNaming.TNaming_ShapesSet_Add)
    ChangeMap = _swig_new_instance_method(_TNaming.TNaming_ShapesSet_ChangeMap)
    Clear = _swig_new_instance_method(_TNaming.TNaming_ShapesSet_Clear)
    Contains = _swig_new_instance_method(_TNaming.TNaming_ShapesSet_Contains)
    Filter = _swig_new_instance_method(_TNaming.TNaming_ShapesSet_Filter)
    IsEmpty = _swig_new_instance_method(_TNaming.TNaming_ShapesSet_IsEmpty)
    Map = _swig_new_instance_method(_TNaming.TNaming_ShapesSet_Map)
    NbShapes = _swig_new_instance_method(_TNaming.TNaming_ShapesSet_NbShapes)
    Remove = _swig_new_instance_method(_TNaming.TNaming_ShapesSet_Remove)

    def __init__(self, *args):
        r"""
        :rtype: None:param S:
        	:type S: TopoDS_Shape
        	:param Type: default value is TopAbs_SHAPE
        	:type Type: TopAbs_ShapeEnum
        	:rtype: None
        """
        _TNaming.TNaming_ShapesSet_swiginit(self, _TNaming.new_TNaming_ShapesSet(*args))

    __repr__ = _dumps_object

    __swig_destroy__ = _TNaming.delete_TNaming_ShapesSet

# Register TNaming_ShapesSet in _TNaming:
_TNaming.TNaming_ShapesSet_swigregister(TNaming_ShapesSet)

class TNaming_Tool(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    Collect = _swig_new_static_method(_TNaming.TNaming_Tool_Collect)
    CurrentNamedShape = _swig_new_static_method(_TNaming.TNaming_Tool_CurrentNamedShape)
    CurrentShape = _swig_new_static_method(_TNaming.TNaming_Tool_CurrentShape)
    FindShape = _swig_new_static_method(_TNaming.TNaming_Tool_FindShape)
    GeneratedShape = _swig_new_static_method(_TNaming.TNaming_Tool_GeneratedShape)
    GetShape = _swig_new_static_method(_TNaming.TNaming_Tool_GetShape)
    HasLabel = _swig_new_static_method(_TNaming.TNaming_Tool_HasLabel)
    InitialShape = _swig_new_static_method(_TNaming.TNaming_Tool_InitialShape)
    Label = _swig_new_static_method(_TNaming.TNaming_Tool_Label)
    NamedShape = _swig_new_static_method(_TNaming.TNaming_Tool_NamedShape)
    OriginalShape = _swig_new_static_method(_TNaming.TNaming_Tool_OriginalShape)
    ValidUntil = _swig_new_static_method(_TNaming.TNaming_Tool_ValidUntil)

    __repr__ = _dumps_object


    def __init__(self):
        _TNaming.TNaming_Tool_swiginit(self, _TNaming.new_TNaming_Tool())
    __swig_destroy__ = _TNaming.delete_TNaming_Tool

# Register TNaming_Tool in _TNaming:
_TNaming.TNaming_Tool_swigregister(TNaming_Tool)
TNaming_Tool_Collect = _TNaming.TNaming_Tool_Collect
TNaming_Tool_CurrentNamedShape = _TNaming.TNaming_Tool_CurrentNamedShape
TNaming_Tool_CurrentShape = _TNaming.TNaming_Tool_CurrentShape
TNaming_Tool_FindShape = _TNaming.TNaming_Tool_FindShape
TNaming_Tool_GeneratedShape = _TNaming.TNaming_Tool_GeneratedShape
TNaming_Tool_GetShape = _TNaming.TNaming_Tool_GetShape
TNaming_Tool_HasLabel = _TNaming.TNaming_Tool_HasLabel
TNaming_Tool_InitialShape = _TNaming.TNaming_Tool_InitialShape
TNaming_Tool_Label = _TNaming.TNaming_Tool_Label
TNaming_Tool_NamedShape = _TNaming.TNaming_Tool_NamedShape
TNaming_Tool_OriginalShape = _TNaming.TNaming_Tool_OriginalShape
TNaming_Tool_ValidUntil = _TNaming.TNaming_Tool_ValidUntil

class TNaming_TranslateTool(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
    Add = _swig_new_instance_method(_TNaming.TNaming_TranslateTool_Add)
    MakeCompSolid = _swig_new_instance_method(_TNaming.TNaming_TranslateTool_MakeCompSolid)
    MakeCompound = _swig_new_instance_method(_TNaming.TNaming_TranslateTool_MakeCompound)
    MakeEdge = _swig_new_instance_method(_TNaming.TNaming_TranslateTool_MakeEdge)
    MakeFace = _swig_new_instance_method(_TNaming.TNaming_TranslateTool_MakeFace)
    MakeShell = _swig_new_instance_method(_TNaming.TNaming_TranslateTool_MakeShell)
    MakeSolid = _swig_new_instance_method(_TNaming.TNaming_TranslateTool_MakeSolid)
    MakeVertex = _swig_new_instance_method(_TNaming.TNaming_TranslateTool_MakeVertex)
    MakeWire = _swig_new_instance_method(_TNaming.TNaming_TranslateTool_MakeWire)
    UpdateEdge = _swig_new_instance_method(_TNaming.TNaming_TranslateTool_UpdateEdge)
    UpdateFace = _swig_new_instance_method(_TNaming.TNaming_TranslateTool_UpdateFace)
    UpdateShape = _swig_new_instance_method(_TNaming.TNaming_TranslateTool_UpdateShape)
    UpdateVertex = _swig_new_instance_method(_TNaming.TNaming_TranslateTool_UpdateVertex)


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


    __repr__ = _dumps_object


    def __init__(self):
        _TNaming.TNaming_TranslateTool_swiginit(self, _TNaming.new_TNaming_TranslateTool())
    __swig_destroy__ = _TNaming.delete_TNaming_TranslateTool

# Register TNaming_TranslateTool in _TNaming:
_TNaming.TNaming_TranslateTool_swigregister(TNaming_TranslateTool)

class TNaming_Translator(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    Add = _swig_new_instance_method(_TNaming.TNaming_Translator_Add)
    Copied = _swig_new_instance_method(_TNaming.TNaming_Translator_Copied)
    DumpMap = _swig_new_instance_method(_TNaming.TNaming_Translator_DumpMap)
    IsDone = _swig_new_instance_method(_TNaming.TNaming_Translator_IsDone)
    Perform = _swig_new_instance_method(_TNaming.TNaming_Translator_Perform)

    def __init__(self, *args):
        r""":rtype: None"""
        _TNaming.TNaming_Translator_swiginit(self, _TNaming.new_TNaming_Translator(*args))

    __repr__ = _dumps_object

    __swig_destroy__ = _TNaming.delete_TNaming_Translator

# Register TNaming_Translator in _TNaming:
_TNaming.TNaming_Translator_swigregister(TNaming_Translator)

class TNaming_UsedShapes(OCC.Core.TDF.TDF_Attribute):
    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")
    __repr__ = _swig_repr
    Destroy = _swig_new_instance_method(_TNaming.TNaming_UsedShapes_Destroy)
    DumpToString = _swig_new_instance_method(_TNaming.TNaming_UsedShapes_DumpToString)
    GetID = _swig_new_static_method(_TNaming.TNaming_UsedShapes_GetID)
    Map = _swig_new_instance_method(_TNaming.TNaming_UsedShapes_Map)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _TNaming.delete_TNaming_UsedShapes

# Register TNaming_UsedShapes in _TNaming:
_TNaming.TNaming_UsedShapes_swigregister(TNaming_UsedShapes)
TNaming_UsedShapes_GetID = _TNaming.TNaming_UsedShapes_GetID



