# 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.

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

try:
    import builtins as __builtin__
except ImportError:
    import __builtin__

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

# Register SwigPyIterator in _TObj:
_TObj.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.TCollection
import OCC.Core.TDocStd
import OCC.Core.TDF
import OCC.Core.TColStd
import OCC.Core.CDF
import OCC.Core.CDM
import OCC.Core.Message
import OCC.Core.Resource
import OCC.Core.PCDM
import OCC.Core.Storage
import OCC.Core.gp
TObj_FreeOnly = _TObj.TObj_FreeOnly
TObj_KeepDepending = _TObj.TObj_KeepDepending
TObj_Forced = _TObj.TObj_Forced
Handle_TObj_Application_Create = _TObj.Handle_TObj_Application_Create
Handle_TObj_Application_DownCast = _TObj.Handle_TObj_Application_DownCast
Handle_TObj_Application_IsNull = _TObj.Handle_TObj_Application_IsNull
Handle_TObj_CheckModel_Create = _TObj.Handle_TObj_CheckModel_Create
Handle_TObj_CheckModel_DownCast = _TObj.Handle_TObj_CheckModel_DownCast
Handle_TObj_CheckModel_IsNull = _TObj.Handle_TObj_CheckModel_IsNull
Handle_TObj_Model_Create = _TObj.Handle_TObj_Model_Create
Handle_TObj_Model_DownCast = _TObj.Handle_TObj_Model_DownCast
Handle_TObj_Model_IsNull = _TObj.Handle_TObj_Model_IsNull
Handle_TObj_Object_Create = _TObj.Handle_TObj_Object_Create
Handle_TObj_Object_DownCast = _TObj.Handle_TObj_Object_DownCast
Handle_TObj_Object_IsNull = _TObj.Handle_TObj_Object_IsNull
Handle_TObj_ObjectIterator_Create = _TObj.Handle_TObj_ObjectIterator_Create
Handle_TObj_ObjectIterator_DownCast = _TObj.Handle_TObj_ObjectIterator_DownCast
Handle_TObj_ObjectIterator_IsNull = _TObj.Handle_TObj_ObjectIterator_IsNull
Handle_TObj_TIntSparseArray_Create = _TObj.Handle_TObj_TIntSparseArray_Create
Handle_TObj_TIntSparseArray_DownCast = _TObj.Handle_TObj_TIntSparseArray_DownCast
Handle_TObj_TIntSparseArray_IsNull = _TObj.Handle_TObj_TIntSparseArray_IsNull
Handle_TObj_TModel_Create = _TObj.Handle_TObj_TModel_Create
Handle_TObj_TModel_DownCast = _TObj.Handle_TObj_TModel_DownCast
Handle_TObj_TModel_IsNull = _TObj.Handle_TObj_TModel_IsNull
Handle_TObj_TNameContainer_Create = _TObj.Handle_TObj_TNameContainer_Create
Handle_TObj_TNameContainer_DownCast = _TObj.Handle_TObj_TNameContainer_DownCast
Handle_TObj_TNameContainer_IsNull = _TObj.Handle_TObj_TNameContainer_IsNull
Handle_TObj_TObject_Create = _TObj.Handle_TObj_TObject_Create
Handle_TObj_TObject_DownCast = _TObj.Handle_TObj_TObject_DownCast
Handle_TObj_TObject_IsNull = _TObj.Handle_TObj_TObject_IsNull
Handle_TObj_TReference_Create = _TObj.Handle_TObj_TReference_Create
Handle_TObj_TReference_DownCast = _TObj.Handle_TObj_TReference_DownCast
Handle_TObj_TReference_IsNull = _TObj.Handle_TObj_TReference_IsNull
Handle_TObj_TXYZ_Create = _TObj.Handle_TObj_TXYZ_Create
Handle_TObj_TXYZ_DownCast = _TObj.Handle_TObj_TXYZ_DownCast
Handle_TObj_TXYZ_IsNull = _TObj.Handle_TObj_TXYZ_IsNull
Handle_TObj_LabelIterator_Create = _TObj.Handle_TObj_LabelIterator_Create
Handle_TObj_LabelIterator_DownCast = _TObj.Handle_TObj_LabelIterator_DownCast
Handle_TObj_LabelIterator_IsNull = _TObj.Handle_TObj_LabelIterator_IsNull
Handle_TObj_ModelIterator_Create = _TObj.Handle_TObj_ModelIterator_Create
Handle_TObj_ModelIterator_DownCast = _TObj.Handle_TObj_ModelIterator_DownCast
Handle_TObj_ModelIterator_IsNull = _TObj.Handle_TObj_ModelIterator_IsNull
Handle_TObj_Partition_Create = _TObj.Handle_TObj_Partition_Create
Handle_TObj_Partition_DownCast = _TObj.Handle_TObj_Partition_DownCast
Handle_TObj_Partition_IsNull = _TObj.Handle_TObj_Partition_IsNull
Handle_TObj_SequenceIterator_Create = _TObj.Handle_TObj_SequenceIterator_Create
Handle_TObj_SequenceIterator_DownCast = _TObj.Handle_TObj_SequenceIterator_DownCast
Handle_TObj_SequenceIterator_IsNull = _TObj.Handle_TObj_SequenceIterator_IsNull
Handle_TObj_HiddenPartition_Create = _TObj.Handle_TObj_HiddenPartition_Create
Handle_TObj_HiddenPartition_DownCast = _TObj.Handle_TObj_HiddenPartition_DownCast
Handle_TObj_HiddenPartition_IsNull = _TObj.Handle_TObj_HiddenPartition_IsNull
Handle_TObj_OcafObjectIterator_Create = _TObj.Handle_TObj_OcafObjectIterator_Create
Handle_TObj_OcafObjectIterator_DownCast = _TObj.Handle_TObj_OcafObjectIterator_DownCast
Handle_TObj_OcafObjectIterator_IsNull = _TObj.Handle_TObj_OcafObjectIterator_IsNull
Handle_TObj_ReferenceIterator_Create = _TObj.Handle_TObj_ReferenceIterator_Create
Handle_TObj_ReferenceIterator_DownCast = _TObj.Handle_TObj_ReferenceIterator_DownCast
Handle_TObj_ReferenceIterator_IsNull = _TObj.Handle_TObj_ReferenceIterator_IsNull
Handle_TObj_HSequenceOfObject_Create = _TObj.Handle_TObj_HSequenceOfObject_Create
Handle_TObj_HSequenceOfObject_DownCast = _TObj.Handle_TObj_HSequenceOfObject_DownCast
Handle_TObj_HSequenceOfObject_IsNull = _TObj.Handle_TObj_HSequenceOfObject_IsNull
class TObj_TIntSparseArray_VecOfData(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, theIncrement: "Standard_Size"):
        _TObj.TObj_TIntSparseArray_VecOfData_swiginit(self, _TObj.new_TObj_TIntSparseArray_VecOfData(theIncrement))
    Assign = _swig_new_instance_method(_TObj.TObj_TIntSparseArray_VecOfData_Assign)
    Exchange = _swig_new_instance_method(_TObj.TObj_TIntSparseArray_VecOfData_Exchange)
    __swig_destroy__ = _TObj.delete_TObj_TIntSparseArray_VecOfData
    Value = _swig_new_instance_method(_TObj.TObj_TIntSparseArray_VecOfData_Value)
    ChangeValue = _swig_new_instance_method(_TObj.TObj_TIntSparseArray_VecOfData_ChangeValue)
    __call__ = _swig_new_instance_method(_TObj.TObj_TIntSparseArray_VecOfData___call__)
    SetValue = _swig_new_instance_method(_TObj.TObj_TIntSparseArray_VecOfData_SetValue)
    Extent = _swig_new_instance_method(_TObj.TObj_TIntSparseArray_VecOfData_Extent)
    IsEmpty = _swig_new_instance_method(_TObj.TObj_TIntSparseArray_VecOfData_IsEmpty)
    Find = _swig_new_instance_method(_TObj.TObj_TIntSparseArray_VecOfData_Find)
    ChangeFind = _swig_new_instance_method(_TObj.TObj_TIntSparseArray_VecOfData_ChangeFind)
    Bind = _swig_new_instance_method(_TObj.TObj_TIntSparseArray_VecOfData_Bind)
    IsBound = _swig_new_instance_method(_TObj.TObj_TIntSparseArray_VecOfData_IsBound)
    UnBind = _swig_new_instance_method(_TObj.TObj_TIntSparseArray_VecOfData_UnBind)

# Register TObj_TIntSparseArray_VecOfData in _TObj:
_TObj.TObj_TIntSparseArray_VecOfData_swigregister(TObj_TIntSparseArray_VecOfData)

class TObj_TIntSparseArray_MapOfData(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, theIncrement: "Standard_Size"):
        _TObj.TObj_TIntSparseArray_MapOfData_swiginit(self, _TObj.new_TObj_TIntSparseArray_MapOfData(theIncrement))
    Assign = _swig_new_instance_method(_TObj.TObj_TIntSparseArray_MapOfData_Assign)
    Exchange = _swig_new_instance_method(_TObj.TObj_TIntSparseArray_MapOfData_Exchange)
    __swig_destroy__ = _TObj.delete_TObj_TIntSparseArray_MapOfData
    Value = _swig_new_instance_method(_TObj.TObj_TIntSparseArray_MapOfData_Value)
    ChangeValue = _swig_new_instance_method(_TObj.TObj_TIntSparseArray_MapOfData_ChangeValue)
    __call__ = _swig_new_instance_method(_TObj.TObj_TIntSparseArray_MapOfData___call__)
    SetValue = _swig_new_instance_method(_TObj.TObj_TIntSparseArray_MapOfData_SetValue)
    Extent = _swig_new_instance_method(_TObj.TObj_TIntSparseArray_MapOfData_Extent)
    IsEmpty = _swig_new_instance_method(_TObj.TObj_TIntSparseArray_MapOfData_IsEmpty)
    Find = _swig_new_instance_method(_TObj.TObj_TIntSparseArray_MapOfData_Find)
    ChangeFind = _swig_new_instance_method(_TObj.TObj_TIntSparseArray_MapOfData_ChangeFind)
    Bind = _swig_new_instance_method(_TObj.TObj_TIntSparseArray_MapOfData_Bind)
    IsBound = _swig_new_instance_method(_TObj.TObj_TIntSparseArray_MapOfData_IsBound)
    UnBind = _swig_new_instance_method(_TObj.TObj_TIntSparseArray_MapOfData_UnBind)

# Register TObj_TIntSparseArray_MapOfData in _TObj:
_TObj.TObj_TIntSparseArray_MapOfData_swigregister(TObj_TIntSparseArray_MapOfData)

class TObj_DataMapOfNameLabel(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(_TObj.TObj_DataMapOfNameLabel_begin)
    end = _swig_new_instance_method(_TObj.TObj_DataMapOfNameLabel_end)
    cbegin = _swig_new_instance_method(_TObj.TObj_DataMapOfNameLabel_cbegin)
    cend = _swig_new_instance_method(_TObj.TObj_DataMapOfNameLabel_cend)

    def __init__(self, *args):
        _TObj.TObj_DataMapOfNameLabel_swiginit(self, _TObj.new_TObj_DataMapOfNameLabel(*args))
    Exchange = _swig_new_instance_method(_TObj.TObj_DataMapOfNameLabel_Exchange)
    Assign = _swig_new_instance_method(_TObj.TObj_DataMapOfNameLabel_Assign)
    Set = _swig_new_instance_method(_TObj.TObj_DataMapOfNameLabel_Set)
    ReSize = _swig_new_instance_method(_TObj.TObj_DataMapOfNameLabel_ReSize)
    Bind = _swig_new_instance_method(_TObj.TObj_DataMapOfNameLabel_Bind)
    Bound = _swig_new_instance_method(_TObj.TObj_DataMapOfNameLabel_Bound)
    IsBound = _swig_new_instance_method(_TObj.TObj_DataMapOfNameLabel_IsBound)
    UnBind = _swig_new_instance_method(_TObj.TObj_DataMapOfNameLabel_UnBind)
    Seek = _swig_new_instance_method(_TObj.TObj_DataMapOfNameLabel_Seek)
    Find = _swig_new_instance_method(_TObj.TObj_DataMapOfNameLabel_Find)
    ChangeSeek = _swig_new_instance_method(_TObj.TObj_DataMapOfNameLabel_ChangeSeek)
    ChangeFind = _swig_new_instance_method(_TObj.TObj_DataMapOfNameLabel_ChangeFind)
    __call__ = _swig_new_instance_method(_TObj.TObj_DataMapOfNameLabel___call__)
    Clear = _swig_new_instance_method(_TObj.TObj_DataMapOfNameLabel_Clear)
    __swig_destroy__ = _TObj.delete_TObj_DataMapOfNameLabel
    Size = _swig_new_instance_method(_TObj.TObj_DataMapOfNameLabel_Size)

# Register TObj_DataMapOfNameLabel in _TObj:
_TObj.TObj_DataMapOfNameLabel_swigregister(TObj_DataMapOfNameLabel)

class TObj_DataMapOfObjectHSequenceOcafObjects(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(_TObj.TObj_DataMapOfObjectHSequenceOcafObjects_begin)
    end = _swig_new_instance_method(_TObj.TObj_DataMapOfObjectHSequenceOcafObjects_end)
    cbegin = _swig_new_instance_method(_TObj.TObj_DataMapOfObjectHSequenceOcafObjects_cbegin)
    cend = _swig_new_instance_method(_TObj.TObj_DataMapOfObjectHSequenceOcafObjects_cend)

    def __init__(self, *args):
        _TObj.TObj_DataMapOfObjectHSequenceOcafObjects_swiginit(self, _TObj.new_TObj_DataMapOfObjectHSequenceOcafObjects(*args))
    Exchange = _swig_new_instance_method(_TObj.TObj_DataMapOfObjectHSequenceOcafObjects_Exchange)
    Assign = _swig_new_instance_method(_TObj.TObj_DataMapOfObjectHSequenceOcafObjects_Assign)
    Set = _swig_new_instance_method(_TObj.TObj_DataMapOfObjectHSequenceOcafObjects_Set)
    ReSize = _swig_new_instance_method(_TObj.TObj_DataMapOfObjectHSequenceOcafObjects_ReSize)
    Bind = _swig_new_instance_method(_TObj.TObj_DataMapOfObjectHSequenceOcafObjects_Bind)
    Bound = _swig_new_instance_method(_TObj.TObj_DataMapOfObjectHSequenceOcafObjects_Bound)
    IsBound = _swig_new_instance_method(_TObj.TObj_DataMapOfObjectHSequenceOcafObjects_IsBound)
    UnBind = _swig_new_instance_method(_TObj.TObj_DataMapOfObjectHSequenceOcafObjects_UnBind)
    Seek = _swig_new_instance_method(_TObj.TObj_DataMapOfObjectHSequenceOcafObjects_Seek)
    Find = _swig_new_instance_method(_TObj.TObj_DataMapOfObjectHSequenceOcafObjects_Find)
    ChangeSeek = _swig_new_instance_method(_TObj.TObj_DataMapOfObjectHSequenceOcafObjects_ChangeSeek)
    ChangeFind = _swig_new_instance_method(_TObj.TObj_DataMapOfObjectHSequenceOcafObjects_ChangeFind)
    __call__ = _swig_new_instance_method(_TObj.TObj_DataMapOfObjectHSequenceOcafObjects___call__)
    Clear = _swig_new_instance_method(_TObj.TObj_DataMapOfObjectHSequenceOcafObjects_Clear)
    __swig_destroy__ = _TObj.delete_TObj_DataMapOfObjectHSequenceOcafObjects
    Size = _swig_new_instance_method(_TObj.TObj_DataMapOfObjectHSequenceOcafObjects_Size)

# Register TObj_DataMapOfObjectHSequenceOcafObjects in _TObj:
_TObj.TObj_DataMapOfObjectHSequenceOcafObjects_swigregister(TObj_DataMapOfObjectHSequenceOcafObjects)

class TObj_DataMapOfStringPointer(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(_TObj.TObj_DataMapOfStringPointer_begin)
    end = _swig_new_instance_method(_TObj.TObj_DataMapOfStringPointer_end)
    cbegin = _swig_new_instance_method(_TObj.TObj_DataMapOfStringPointer_cbegin)
    cend = _swig_new_instance_method(_TObj.TObj_DataMapOfStringPointer_cend)

    def __init__(self, *args):
        _TObj.TObj_DataMapOfStringPointer_swiginit(self, _TObj.new_TObj_DataMapOfStringPointer(*args))
    Exchange = _swig_new_instance_method(_TObj.TObj_DataMapOfStringPointer_Exchange)
    Assign = _swig_new_instance_method(_TObj.TObj_DataMapOfStringPointer_Assign)
    Set = _swig_new_instance_method(_TObj.TObj_DataMapOfStringPointer_Set)
    ReSize = _swig_new_instance_method(_TObj.TObj_DataMapOfStringPointer_ReSize)
    Bind = _swig_new_instance_method(_TObj.TObj_DataMapOfStringPointer_Bind)
    Bound = _swig_new_instance_method(_TObj.TObj_DataMapOfStringPointer_Bound)
    IsBound = _swig_new_instance_method(_TObj.TObj_DataMapOfStringPointer_IsBound)
    UnBind = _swig_new_instance_method(_TObj.TObj_DataMapOfStringPointer_UnBind)
    Seek = _swig_new_instance_method(_TObj.TObj_DataMapOfStringPointer_Seek)
    Find = _swig_new_instance_method(_TObj.TObj_DataMapOfStringPointer_Find)
    ChangeSeek = _swig_new_instance_method(_TObj.TObj_DataMapOfStringPointer_ChangeSeek)
    ChangeFind = _swig_new_instance_method(_TObj.TObj_DataMapOfStringPointer_ChangeFind)
    __call__ = _swig_new_instance_method(_TObj.TObj_DataMapOfStringPointer___call__)
    Clear = _swig_new_instance_method(_TObj.TObj_DataMapOfStringPointer_Clear)
    __swig_destroy__ = _TObj.delete_TObj_DataMapOfStringPointer
    Size = _swig_new_instance_method(_TObj.TObj_DataMapOfStringPointer_Size)

# Register TObj_DataMapOfStringPointer in _TObj:
_TObj.TObj_DataMapOfStringPointer_swigregister(TObj_DataMapOfStringPointer)

class TObj_SequenceOfIterator(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(_TObj.TObj_SequenceOfIterator_begin)
    end = _swig_new_instance_method(_TObj.TObj_SequenceOfIterator_end)
    cbegin = _swig_new_instance_method(_TObj.TObj_SequenceOfIterator_cbegin)
    cend = _swig_new_instance_method(_TObj.TObj_SequenceOfIterator_cend)

    def __init__(self, *args):
        _TObj.TObj_SequenceOfIterator_swiginit(self, _TObj.new_TObj_SequenceOfIterator(*args))
    Size = _swig_new_instance_method(_TObj.TObj_SequenceOfIterator_Size)
    Length = _swig_new_instance_method(_TObj.TObj_SequenceOfIterator_Length)
    Lower = _swig_new_instance_method(_TObj.TObj_SequenceOfIterator_Lower)
    Upper = _swig_new_instance_method(_TObj.TObj_SequenceOfIterator_Upper)
    IsEmpty = _swig_new_instance_method(_TObj.TObj_SequenceOfIterator_IsEmpty)
    Reverse = _swig_new_instance_method(_TObj.TObj_SequenceOfIterator_Reverse)
    Exchange = _swig_new_instance_method(_TObj.TObj_SequenceOfIterator_Exchange)
    delNode = _swig_new_static_method(_TObj.TObj_SequenceOfIterator_delNode)
    Clear = _swig_new_instance_method(_TObj.TObj_SequenceOfIterator_Clear)
    Assign = _swig_new_instance_method(_TObj.TObj_SequenceOfIterator_Assign)
    Set = _swig_new_instance_method(_TObj.TObj_SequenceOfIterator_Set)
    Remove = _swig_new_instance_method(_TObj.TObj_SequenceOfIterator_Remove)
    Append = _swig_new_instance_method(_TObj.TObj_SequenceOfIterator_Append)
    Prepend = _swig_new_instance_method(_TObj.TObj_SequenceOfIterator_Prepend)
    InsertBefore = _swig_new_instance_method(_TObj.TObj_SequenceOfIterator_InsertBefore)
    InsertAfter = _swig_new_instance_method(_TObj.TObj_SequenceOfIterator_InsertAfter)
    Split = _swig_new_instance_method(_TObj.TObj_SequenceOfIterator_Split)
    First = _swig_new_instance_method(_TObj.TObj_SequenceOfIterator_First)
    ChangeFirst = _swig_new_instance_method(_TObj.TObj_SequenceOfIterator_ChangeFirst)
    Last = _swig_new_instance_method(_TObj.TObj_SequenceOfIterator_Last)
    ChangeLast = _swig_new_instance_method(_TObj.TObj_SequenceOfIterator_ChangeLast)
    Value = _swig_new_instance_method(_TObj.TObj_SequenceOfIterator_Value)
    ChangeValue = _swig_new_instance_method(_TObj.TObj_SequenceOfIterator_ChangeValue)
    __call__ = _swig_new_instance_method(_TObj.TObj_SequenceOfIterator___call__)
    SetValue = _swig_new_instance_method(_TObj.TObj_SequenceOfIterator_SetValue)
    __swig_destroy__ = _TObj.delete_TObj_SequenceOfIterator

# Register TObj_SequenceOfIterator in _TObj:
_TObj.TObj_SequenceOfIterator_swigregister(TObj_SequenceOfIterator)
TObj_SequenceOfIterator_delNode = _TObj.TObj_SequenceOfIterator_delNode

class TObj_SequenceOfObject(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(_TObj.TObj_SequenceOfObject_begin)
    end = _swig_new_instance_method(_TObj.TObj_SequenceOfObject_end)
    cbegin = _swig_new_instance_method(_TObj.TObj_SequenceOfObject_cbegin)
    cend = _swig_new_instance_method(_TObj.TObj_SequenceOfObject_cend)

    def __init__(self, *args):
        _TObj.TObj_SequenceOfObject_swiginit(self, _TObj.new_TObj_SequenceOfObject(*args))
    Size = _swig_new_instance_method(_TObj.TObj_SequenceOfObject_Size)
    Length = _swig_new_instance_method(_TObj.TObj_SequenceOfObject_Length)
    Lower = _swig_new_instance_method(_TObj.TObj_SequenceOfObject_Lower)
    Upper = _swig_new_instance_method(_TObj.TObj_SequenceOfObject_Upper)
    IsEmpty = _swig_new_instance_method(_TObj.TObj_SequenceOfObject_IsEmpty)
    Reverse = _swig_new_instance_method(_TObj.TObj_SequenceOfObject_Reverse)
    Exchange = _swig_new_instance_method(_TObj.TObj_SequenceOfObject_Exchange)
    delNode = _swig_new_static_method(_TObj.TObj_SequenceOfObject_delNode)
    Clear = _swig_new_instance_method(_TObj.TObj_SequenceOfObject_Clear)
    Assign = _swig_new_instance_method(_TObj.TObj_SequenceOfObject_Assign)
    Set = _swig_new_instance_method(_TObj.TObj_SequenceOfObject_Set)
    Remove = _swig_new_instance_method(_TObj.TObj_SequenceOfObject_Remove)
    Append = _swig_new_instance_method(_TObj.TObj_SequenceOfObject_Append)
    Prepend = _swig_new_instance_method(_TObj.TObj_SequenceOfObject_Prepend)
    InsertBefore = _swig_new_instance_method(_TObj.TObj_SequenceOfObject_InsertBefore)
    InsertAfter = _swig_new_instance_method(_TObj.TObj_SequenceOfObject_InsertAfter)
    Split = _swig_new_instance_method(_TObj.TObj_SequenceOfObject_Split)
    First = _swig_new_instance_method(_TObj.TObj_SequenceOfObject_First)
    ChangeFirst = _swig_new_instance_method(_TObj.TObj_SequenceOfObject_ChangeFirst)
    Last = _swig_new_instance_method(_TObj.TObj_SequenceOfObject_Last)
    ChangeLast = _swig_new_instance_method(_TObj.TObj_SequenceOfObject_ChangeLast)
    Value = _swig_new_instance_method(_TObj.TObj_SequenceOfObject_Value)
    ChangeValue = _swig_new_instance_method(_TObj.TObj_SequenceOfObject_ChangeValue)
    __call__ = _swig_new_instance_method(_TObj.TObj_SequenceOfObject___call__)
    SetValue = _swig_new_instance_method(_TObj.TObj_SequenceOfObject_SetValue)
    __swig_destroy__ = _TObj.delete_TObj_SequenceOfObject

# Register TObj_SequenceOfObject in _TObj:
_TObj.TObj_SequenceOfObject_swigregister(TObj_SequenceOfObject)
TObj_SequenceOfObject_delNode = _TObj.TObj_SequenceOfObject_delNode

class TObj_Application(OCC.Core.TDocStd.TDocStd_Application):
    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
    CreateNewDocument = _swig_new_instance_method(_TObj.TObj_Application_CreateNewDocument)
    ErrorMessage = _swig_new_instance_method(_TObj.TObj_Application_ErrorMessage)
    GetInstance = _swig_new_static_method(_TObj.TObj_Application_GetInstance)
    IsVerbose = _swig_new_instance_method(_TObj.TObj_Application_IsVerbose)
    LoadDocument = _swig_new_instance_method(_TObj.TObj_Application_LoadDocument)
    Messenger = _swig_new_instance_method(_TObj.TObj_Application_Messenger)
    SaveDocument = _swig_new_instance_method(_TObj.TObj_Application_SaveDocument)
    SetVerbose = _swig_new_instance_method(_TObj.TObj_Application_SetVerbose)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _TObj.delete_TObj_Application

# Register TObj_Application in _TObj:
_TObj.TObj_Application_swigregister(TObj_Application)
TObj_Application_GetInstance = _TObj.TObj_Application_GetInstance

class TObj_Assistant(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    BindModel = _swig_new_static_method(_TObj.TObj_Assistant_BindModel)
    BindType = _swig_new_static_method(_TObj.TObj_Assistant_BindType)
    ClearModelMap = _swig_new_static_method(_TObj.TObj_Assistant_ClearModelMap)
    ClearTypeMap = _swig_new_static_method(_TObj.TObj_Assistant_ClearTypeMap)
    FindModel = _swig_new_static_method(_TObj.TObj_Assistant_FindModel)
    FindType = _swig_new_static_method(_TObj.TObj_Assistant_FindType)
    FindTypeIndex = _swig_new_static_method(_TObj.TObj_Assistant_FindTypeIndex)
    GetAppVersion = _swig_new_static_method(_TObj.TObj_Assistant_GetAppVersion)
    GetCurrentModel = _swig_new_static_method(_TObj.TObj_Assistant_GetCurrentModel)
    SetCurrentModel = _swig_new_static_method(_TObj.TObj_Assistant_SetCurrentModel)
    UnSetCurrentModel = _swig_new_static_method(_TObj.TObj_Assistant_UnSetCurrentModel)

    __repr__ = _dumps_object


    def __init__(self):
        _TObj.TObj_Assistant_swiginit(self, _TObj.new_TObj_Assistant())
    __swig_destroy__ = _TObj.delete_TObj_Assistant

# Register TObj_Assistant in _TObj:
_TObj.TObj_Assistant_swigregister(TObj_Assistant)
TObj_Assistant_BindModel = _TObj.TObj_Assistant_BindModel
TObj_Assistant_BindType = _TObj.TObj_Assistant_BindType
TObj_Assistant_ClearModelMap = _TObj.TObj_Assistant_ClearModelMap
TObj_Assistant_ClearTypeMap = _TObj.TObj_Assistant_ClearTypeMap
TObj_Assistant_FindModel = _TObj.TObj_Assistant_FindModel
TObj_Assistant_FindType = _TObj.TObj_Assistant_FindType
TObj_Assistant_FindTypeIndex = _TObj.TObj_Assistant_FindTypeIndex
TObj_Assistant_GetAppVersion = _TObj.TObj_Assistant_GetAppVersion
TObj_Assistant_GetCurrentModel = _TObj.TObj_Assistant_GetCurrentModel
TObj_Assistant_SetCurrentModel = _TObj.TObj_Assistant_SetCurrentModel
TObj_Assistant_UnSetCurrentModel = _TObj.TObj_Assistant_UnSetCurrentModel

class TObj_CheckModel(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    GetModel = _swig_new_instance_method(_TObj.TObj_CheckModel_GetModel)
    IsToFix = _swig_new_instance_method(_TObj.TObj_CheckModel_IsToFix)
    Perform = _swig_new_instance_method(_TObj.TObj_CheckModel_Perform)
    SetToFix = _swig_new_instance_method(_TObj.TObj_CheckModel_SetToFix)

    def __init__(self, *args):
        r"""
        * Initialize checker by model
        	:param theModel:
        	:type theModel: TObj_Model
        	:rtype: None
        """
        _TObj.TObj_CheckModel_swiginit(self, _TObj.new_TObj_CheckModel(*args))


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


    __repr__ = _dumps_object

    __swig_destroy__ = _TObj.delete_TObj_CheckModel

# Register TObj_CheckModel in _TObj:
_TObj.TObj_CheckModel_swigregister(TObj_CheckModel)

class TObj_Model(OCC.Core.Standard.Standard_Transient):
    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
    AbortCommand = _swig_new_instance_method(_TObj.TObj_Model_AbortCommand)
    Close = _swig_new_instance_method(_TObj.TObj_Model_Close)
    CloseDocument = _swig_new_instance_method(_TObj.TObj_Model_CloseDocument)
    CommitCommand = _swig_new_instance_method(_TObj.TObj_Model_CommitCommand)
    CopyReferences = _swig_new_instance_method(_TObj.TObj_Model_CopyReferences)
    FindObject = _swig_new_instance_method(_TObj.TObj_Model_FindObject)
    GetApplication = _swig_new_instance_method(_TObj.TObj_Model_GetApplication)
    GetChecker = _swig_new_instance_method(_TObj.TObj_Model_GetChecker)
    GetChildren = _swig_new_instance_method(_TObj.TObj_Model_GetChildren)
    GetDictionary = _swig_new_instance_method(_TObj.TObj_Model_GetDictionary)
    GetDocument = _swig_new_instance_method(_TObj.TObj_Model_GetDocument)
    GetDocumentModel = _swig_new_static_method(_TObj.TObj_Model_GetDocumentModel)
    GetFile = _swig_new_instance_method(_TObj.TObj_Model_GetFile)
    GetFormat = _swig_new_instance_method(_TObj.TObj_Model_GetFormat)
    GetFormatVersion = _swig_new_instance_method(_TObj.TObj_Model_GetFormatVersion)
    GetGUID = _swig_new_instance_method(_TObj.TObj_Model_GetGUID)
    GetLabel = _swig_new_instance_method(_TObj.TObj_Model_GetLabel)
    GetMainPartition = _swig_new_instance_method(_TObj.TObj_Model_GetMainPartition)
    GetModelName = _swig_new_instance_method(_TObj.TObj_Model_GetModelName)
    GetObjects = _swig_new_instance_method(_TObj.TObj_Model_GetObjects)
    GetRoot = _swig_new_instance_method(_TObj.TObj_Model_GetRoot)
    HasOpenCommand = _swig_new_instance_method(_TObj.TObj_Model_HasOpenCommand)
    IsModified = _swig_new_instance_method(_TObj.TObj_Model_IsModified)
    IsRegisteredName = _swig_new_instance_method(_TObj.TObj_Model_IsRegisteredName)
    Load = _swig_new_instance_method(_TObj.TObj_Model_Load)
    Messenger = _swig_new_instance_method(_TObj.TObj_Model_Messenger)
    NewEmpty = _swig_new_instance_method(_TObj.TObj_Model_NewEmpty)
    OpenCommand = _swig_new_instance_method(_TObj.TObj_Model_OpenCommand)
    Paste = _swig_new_instance_method(_TObj.TObj_Model_Paste)
    RegisterName = _swig_new_instance_method(_TObj.TObj_Model_RegisterName)
    Save = _swig_new_instance_method(_TObj.TObj_Model_Save)
    SaveAs = _swig_new_instance_method(_TObj.TObj_Model_SaveAs)
    SetLabel = _swig_new_instance_method(_TObj.TObj_Model_SetLabel)
    SetMessenger = _swig_new_instance_method(_TObj.TObj_Model_SetMessenger)
    SetModified = _swig_new_instance_method(_TObj.TObj_Model_SetModified)
    SetNewName = _swig_new_static_method(_TObj.TObj_Model_SetNewName)
    UnRegisterName = _swig_new_instance_method(_TObj.TObj_Model_UnRegisterName)
    Update = _swig_new_instance_method(_TObj.TObj_Model_Update)


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


    __repr__ = _dumps_object


# Register TObj_Model in _TObj:
_TObj.TObj_Model_swigregister(TObj_Model)
TObj_Model_GetDocumentModel = _TObj.TObj_Model_GetDocumentModel
TObj_Model_SetNewName = _TObj.TObj_Model_SetNewName

class TObj_Object(OCC.Core.Standard.Standard_Transient):
    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
    Visible = _TObj.TObj_Object_Visible
    ObjectState_Hidden = _TObj.TObj_Object_ObjectState_Hidden
    ObjectState_Saved = _TObj.TObj_Object_ObjectState_Saved
    ObjectState_Imported = _TObj.TObj_Object_ObjectState_Imported
    ObjectState_ImportedByFile = _TObj.TObj_Object_ObjectState_ImportedByFile
    ObjectState_Ordered = _TObj.TObj_Object_ObjectState_Ordered
    AddBackReference = _swig_new_instance_method(_TObj.TObj_Object_AddBackReference)
    AfterRetrieval = _swig_new_instance_method(_TObj.TObj_Object_AfterRetrieval)
    BeforeForgetReference = _swig_new_instance_method(_TObj.TObj_Object_BeforeForgetReference)
    BeforeStoring = _swig_new_instance_method(_TObj.TObj_Object_BeforeStoring)
    CanDetach = _swig_new_instance_method(_TObj.TObj_Object_CanDetach)
    CanRemoveReference = _swig_new_instance_method(_TObj.TObj_Object_CanRemoveReference)
    ClearBackReferences = _swig_new_instance_method(_TObj.TObj_Object_ClearBackReferences)
    ClearFlags = _swig_new_instance_method(_TObj.TObj_Object_ClearFlags)
    Clone = _swig_new_instance_method(_TObj.TObj_Object_Clone)
    CopyChildren = _swig_new_instance_method(_TObj.TObj_Object_CopyChildren)
    CopyReferences = _swig_new_instance_method(_TObj.TObj_Object_CopyReferences)
    Detach = _swig_new_static_method(_TObj.TObj_Object_Detach)
    GetBackReferences = _swig_new_instance_method(_TObj.TObj_Object_GetBackReferences)
    GetBadReference = _swig_new_instance_method(_TObj.TObj_Object_GetBadReference)
    GetChildLabel = _swig_new_instance_method(_TObj.TObj_Object_GetChildLabel)
    GetChildren = _swig_new_instance_method(_TObj.TObj_Object_GetChildren)
    GetDataLabel = _swig_new_instance_method(_TObj.TObj_Object_GetDataLabel)
    GetDictionary = _swig_new_instance_method(_TObj.TObj_Object_GetDictionary)
    GetFatherObject = _swig_new_instance_method(_TObj.TObj_Object_GetFatherObject)
    GetFlags = _swig_new_instance_method(_TObj.TObj_Object_GetFlags)
    GetLabel = _swig_new_instance_method(_TObj.TObj_Object_GetLabel)
    GetModel = _swig_new_instance_method(_TObj.TObj_Object_GetModel)
    GetName = _swig_new_instance_method(_TObj.TObj_Object_GetName)
    GetNameForClone = _swig_new_instance_method(_TObj.TObj_Object_GetNameForClone)
    GetObj = _swig_new_static_method(_TObj.TObj_Object_GetObj)
    GetOrder = _swig_new_instance_method(_TObj.TObj_Object_GetOrder)
    GetReferenceLabel = _swig_new_instance_method(_TObj.TObj_Object_GetReferenceLabel)
    GetReferences = _swig_new_instance_method(_TObj.TObj_Object_GetReferences)
    GetTypeFlags = _swig_new_instance_method(_TObj.TObj_Object_GetTypeFlags)
    HasBackReferences = _swig_new_instance_method(_TObj.TObj_Object_HasBackReferences)
    HasReference = _swig_new_instance_method(_TObj.TObj_Object_HasReference)
    IsAlive = _swig_new_instance_method(_TObj.TObj_Object_IsAlive)
    RelocateReferences = _swig_new_instance_method(_TObj.TObj_Object_RelocateReferences)
    RemoveAllReferences = _swig_new_instance_method(_TObj.TObj_Object_RemoveAllReferences)
    RemoveBackReference = _swig_new_instance_method(_TObj.TObj_Object_RemoveBackReference)
    RemoveBackReferences = _swig_new_instance_method(_TObj.TObj_Object_RemoveBackReferences)
    RemoveReference = _swig_new_instance_method(_TObj.TObj_Object_RemoveReference)
    ReplaceReference = _swig_new_instance_method(_TObj.TObj_Object_ReplaceReference)
    SetFlags = _swig_new_instance_method(_TObj.TObj_Object_SetFlags)
    SetName = _swig_new_instance_method(_TObj.TObj_Object_SetName)
    SetOrder = _swig_new_instance_method(_TObj.TObj_Object_SetOrder)
    TestFlags = _swig_new_instance_method(_TObj.TObj_Object_TestFlags)
    getChildLabel = _swig_new_instance_method(_TObj.TObj_Object_getChildLabel)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _TObj.delete_TObj_Object

# Register TObj_Object in _TObj:
_TObj.TObj_Object_swigregister(TObj_Object)
TObj_Object_Detach = _TObj.TObj_Object_Detach
TObj_Object_GetObj = _TObj.TObj_Object_GetObj

class TObj_ObjectIterator(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
    More = _swig_new_instance_method(_TObj.TObj_ObjectIterator_More)
    Next = _swig_new_instance_method(_TObj.TObj_ObjectIterator_Next)
    Value = _swig_new_instance_method(_TObj.TObj_ObjectIterator_Value)


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


    __repr__ = _dumps_object


    def __init__(self):
        _TObj.TObj_ObjectIterator_swiginit(self, _TObj.new_TObj_ObjectIterator())
    __swig_destroy__ = _TObj.delete_TObj_ObjectIterator

# Register TObj_ObjectIterator in _TObj:
_TObj.TObj_ObjectIterator_swigregister(TObj_ObjectIterator)

class TObj_Persistence(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")
    __repr__ = _swig_repr
    CreateNewObject = _swig_new_static_method(_TObj.TObj_Persistence_CreateNewObject)
    DumpTypesToString = _swig_new_instance_method(_TObj.TObj_Persistence_DumpTypesToString)

    __repr__ = _dumps_object


# Register TObj_Persistence in _TObj:
_TObj.TObj_Persistence_swigregister(TObj_Persistence)
TObj_Persistence_CreateNewObject = _TObj.TObj_Persistence_CreateNewObject

class TObj_TIntSparseArray(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(_TObj.TObj_TIntSparseArray_Clear)
    ClearDelta = _swig_new_instance_method(_TObj.TObj_TIntSparseArray_ClearDelta)
    GetID = _swig_new_static_method(_TObj.TObj_TIntSparseArray_GetID)
    GetIterator = _swig_new_instance_method(_TObj.TObj_TIntSparseArray_GetIterator)
    HasValue = _swig_new_instance_method(_TObj.TObj_TIntSparseArray_HasValue)
    Set = _swig_new_static_method(_TObj.TObj_TIntSparseArray_Set)
    SetDoBackup = _swig_new_instance_method(_TObj.TObj_TIntSparseArray_SetDoBackup)
    SetValue = _swig_new_instance_method(_TObj.TObj_TIntSparseArray_SetValue)
    Size = _swig_new_instance_method(_TObj.TObj_TIntSparseArray_Size)

    def __init__(self, *args):
        r"""
        * Empty constructor
        	:rtype: None
        """
        _TObj.TObj_TIntSparseArray_swiginit(self, _TObj.new_TObj_TIntSparseArray(*args))
    UnsetValue = _swig_new_instance_method(_TObj.TObj_TIntSparseArray_UnsetValue)
    Value = _swig_new_instance_method(_TObj.TObj_TIntSparseArray_Value)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _TObj.delete_TObj_TIntSparseArray

# Register TObj_TIntSparseArray in _TObj:
_TObj.TObj_TIntSparseArray_swigregister(TObj_TIntSparseArray)
TObj_TIntSparseArray_GetID = _TObj.TObj_TIntSparseArray_GetID
TObj_TIntSparseArray_Set = _TObj.TObj_TIntSparseArray_Set

class TObj_TModel(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
    GetID = _swig_new_static_method(_TObj.TObj_TModel_GetID)
    Model = _swig_new_instance_method(_TObj.TObj_TModel_Model)
    Set = _swig_new_instance_method(_TObj.TObj_TModel_Set)

    def __init__(self, *args):
        r"""
        * /** * Standard methods of attribute */ Empty constructor
        	:rtype: None
        """
        _TObj.TObj_TModel_swiginit(self, _TObj.new_TObj_TModel(*args))


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


    __repr__ = _dumps_object

    __swig_destroy__ = _TObj.delete_TObj_TModel

# Register TObj_TModel in _TObj:
_TObj.TObj_TModel_swigregister(TObj_TModel)
TObj_TModel_GetID = _TObj.TObj_TModel_GetID

class TObj_TNameContainer(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(_TObj.TObj_TNameContainer_Clear)
    Get = _swig_new_instance_method(_TObj.TObj_TNameContainer_Get)
    GetID = _swig_new_static_method(_TObj.TObj_TNameContainer_GetID)
    IsRegistered = _swig_new_instance_method(_TObj.TObj_TNameContainer_IsRegistered)
    RecordName = _swig_new_instance_method(_TObj.TObj_TNameContainer_RecordName)
    RemoveName = _swig_new_instance_method(_TObj.TObj_TNameContainer_RemoveName)
    Set = _swig_new_instance_method(_TObj.TObj_TNameContainer_Set)

    def __init__(self, *args):
        r"""
        * Standard methods of OCAF attribute Empty constructor
        	:rtype: None
        """
        _TObj.TObj_TNameContainer_swiginit(self, _TObj.new_TObj_TNameContainer(*args))


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


    __repr__ = _dumps_object

    __swig_destroy__ = _TObj.delete_TObj_TNameContainer

# Register TObj_TNameContainer in _TObj:
_TObj.TObj_TNameContainer_swigregister(TObj_TNameContainer)
TObj_TNameContainer_GetID = _TObj.TObj_TNameContainer_GetID

class TObj_TObject(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
    Get = _swig_new_instance_method(_TObj.TObj_TObject_Get)
    GetID = _swig_new_static_method(_TObj.TObj_TObject_GetID)
    Set = _swig_new_instance_method(_TObj.TObj_TObject_Set)

    def __init__(self, *args):
        r"""
        * Standard methods of OCAF attribute Empty constructor
        	:rtype: None
        """
        _TObj.TObj_TObject_swiginit(self, _TObj.new_TObj_TObject(*args))


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


    __repr__ = _dumps_object

    __swig_destroy__ = _TObj.delete_TObj_TObject

# Register TObj_TObject in _TObj:
_TObj.TObj_TObject_swigregister(TObj_TObject)
TObj_TObject_GetID = _TObj.TObj_TObject_GetID

class TObj_TReference(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
    Get = _swig_new_instance_method(_TObj.TObj_TReference_Get)
    GetID = _swig_new_static_method(_TObj.TObj_TReference_GetID)
    GetLabel = _swig_new_instance_method(_TObj.TObj_TReference_GetLabel)
    GetMasterLabel = _swig_new_instance_method(_TObj.TObj_TReference_GetMasterLabel)
    Set = _swig_new_instance_method(_TObj.TObj_TReference_Set)

    def __init__(self, *args):
        r"""
        * Standard methods of OCAF attribute Empty constructor
        	:rtype: None
        """
        _TObj.TObj_TReference_swiginit(self, _TObj.new_TObj_TReference(*args))


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


    __repr__ = _dumps_object

    __swig_destroy__ = _TObj.delete_TObj_TReference

# Register TObj_TReference in _TObj:
_TObj.TObj_TReference_swigregister(TObj_TReference)
TObj_TReference_GetID = _TObj.TObj_TReference_GetID

class TObj_TXYZ(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
    DumpToString = _swig_new_instance_method(_TObj.TObj_TXYZ_DumpToString)
    Get = _swig_new_instance_method(_TObj.TObj_TXYZ_Get)
    GetID = _swig_new_static_method(_TObj.TObj_TXYZ_GetID)
    Set = _swig_new_instance_method(_TObj.TObj_TXYZ_Set)

    def __init__(self, *args):
        r"""
        * Standard methods of OCAF attribute Empty constructor
        	:rtype: None
        """
        _TObj.TObj_TXYZ_swiginit(self, _TObj.new_TObj_TXYZ(*args))


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


    __repr__ = _dumps_object

    __swig_destroy__ = _TObj.delete_TObj_TXYZ

# Register TObj_TXYZ in _TObj:
_TObj.TObj_TXYZ_swigregister(TObj_TXYZ)
TObj_TXYZ_GetID = _TObj.TObj_TXYZ_GetID

class TObj_LabelIterator(TObj_ObjectIterator):
    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
    LabelValue = _swig_new_instance_method(_TObj.TObj_LabelIterator_LabelValue)
    More = _swig_new_instance_method(_TObj.TObj_LabelIterator_More)
    Next = _swig_new_instance_method(_TObj.TObj_LabelIterator_Next)
    Value = _swig_new_instance_method(_TObj.TObj_LabelIterator_Value)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _TObj.delete_TObj_LabelIterator

# Register TObj_LabelIterator in _TObj:
_TObj.TObj_LabelIterator_swigregister(TObj_LabelIterator)

class TObj_ModelIterator(TObj_ObjectIterator):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    More = _swig_new_instance_method(_TObj.TObj_ModelIterator_More)
    Next = _swig_new_instance_method(_TObj.TObj_ModelIterator_Next)

    def __init__(self, *args):
        r"""
        * /** * Constructor */ Creates Iterator and initialize it by Model`s label
        	:param theModel:
        	:type theModel: TObj_Model
        	:rtype: None
        """
        _TObj.TObj_ModelIterator_swiginit(self, _TObj.new_TObj_ModelIterator(*args))
    Value = _swig_new_instance_method(_TObj.TObj_ModelIterator_Value)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _TObj.delete_TObj_ModelIterator

# Register TObj_ModelIterator in _TObj:
_TObj.TObj_ModelIterator_swigregister(TObj_ModelIterator)

class TObj_Partition(TObj_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")
    __repr__ = _swig_repr
    AfterRetrieval = _swig_new_instance_method(_TObj.TObj_Partition_AfterRetrieval)
    Create = _swig_new_static_method(_TObj.TObj_Partition_Create)
    GetLastIndex = _swig_new_instance_method(_TObj.TObj_Partition_GetLastIndex)
    GetNamePrefix = _swig_new_instance_method(_TObj.TObj_Partition_GetNamePrefix)
    GetNewName = _swig_new_instance_method(_TObj.TObj_Partition_GetNewName)
    GetPartition = _swig_new_static_method(_TObj.TObj_Partition_GetPartition)
    NewLabel = _swig_new_instance_method(_TObj.TObj_Partition_NewLabel)
    SetLastIndex = _swig_new_instance_method(_TObj.TObj_Partition_SetLastIndex)
    SetName = _swig_new_instance_method(_TObj.TObj_Partition_SetName)
    SetNamePrefix = _swig_new_instance_method(_TObj.TObj_Partition_SetNamePrefix)
    Update = _swig_new_instance_method(_TObj.TObj_Partition_Update)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _TObj.delete_TObj_Partition

# Register TObj_Partition in _TObj:
_TObj.TObj_Partition_swigregister(TObj_Partition)
TObj_Partition_Create = _TObj.TObj_Partition_Create
TObj_Partition_GetPartition = _TObj.TObj_Partition_GetPartition

class TObj_SequenceIterator(TObj_ObjectIterator):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    More = _swig_new_instance_method(_TObj.TObj_SequenceIterator_More)
    Next = _swig_new_instance_method(_TObj.TObj_SequenceIterator_Next)

    def __init__(self, *args):
        r"""
        * /** * Constructor */ Creates an iterator an initialize it by sequence of objects.
        	:param theObjects:
        	:type theObjects: TObj_HSequenceOfObject
        	:param theType: default value is NULL
        	:type theType: Standard_Type
        	:rtype: None
        """
        _TObj.TObj_SequenceIterator_swiginit(self, _TObj.new_TObj_SequenceIterator(*args))
    Value = _swig_new_instance_method(_TObj.TObj_SequenceIterator_Value)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _TObj.delete_TObj_SequenceIterator

# Register TObj_SequenceIterator in _TObj:
_TObj.TObj_SequenceIterator_swigregister(TObj_SequenceIterator)

class TObj_HiddenPartition(TObj_Partition):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    GetTypeFlags = _swig_new_instance_method(_TObj.TObj_HiddenPartition_GetTypeFlags)

    def __init__(self, *args):
        r"""
        * constructor
        	:param theLabel:
        	:type theLabel: TDF_Label
        	:rtype: None
        """
        _TObj.TObj_HiddenPartition_swiginit(self, _TObj.new_TObj_HiddenPartition(*args))


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


    __repr__ = _dumps_object

    __swig_destroy__ = _TObj.delete_TObj_HiddenPartition

# Register TObj_HiddenPartition in _TObj:
_TObj.TObj_HiddenPartition_swigregister(TObj_HiddenPartition)

class TObj_OcafObjectIterator(TObj_LabelIterator):
    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"""
        * /** * Constructor */ Creates the iterator on objects in the sub labels of theLabel theType narrows a variety of iterated objects
        	:param theLabel:
        	:type theLabel: TDF_Label
        	:param theType: default value is NULL
        	:type theType: Standard_Type
        	:param theRecursive: default value is Standard_False
        	:type theRecursive: bool
        	:rtype: None
        """
        _TObj.TObj_OcafObjectIterator_swiginit(self, _TObj.new_TObj_OcafObjectIterator(*args))


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


    __repr__ = _dumps_object

    __swig_destroy__ = _TObj.delete_TObj_OcafObjectIterator

# Register TObj_OcafObjectIterator in _TObj:
_TObj.TObj_OcafObjectIterator_swigregister(TObj_OcafObjectIterator)

class TObj_ReferenceIterator(TObj_LabelIterator):
    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 the iterator on references in partition theType narrows a variety of iterated objects
        	:param theLabel:
        	:type theLabel: TDF_Label
        	:param theType: default value is NULL
        	:type theType: Standard_Type
        	:param theRecursive: default value is Standard_True
        	:type theRecursive: bool
        	:rtype: None
        """
        _TObj.TObj_ReferenceIterator_swiginit(self, _TObj.new_TObj_ReferenceIterator(*args))


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


    __repr__ = _dumps_object

    __swig_destroy__ = _TObj.delete_TObj_ReferenceIterator

# Register TObj_ReferenceIterator in _TObj:
_TObj.TObj_ReferenceIterator_swigregister(TObj_ReferenceIterator)

class TObj_HSequenceOfObject(TObj_SequenceOfObject, 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):
        _TObj.TObj_HSequenceOfObject_swiginit(self, _TObj.new_TObj_HSequenceOfObject(*args))
    Sequence = _swig_new_instance_method(_TObj.TObj_HSequenceOfObject_Sequence)
    Append = _swig_new_instance_method(_TObj.TObj_HSequenceOfObject_Append)
    ChangeSequence = _swig_new_instance_method(_TObj.TObj_HSequenceOfObject_ChangeSequence)


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

    __swig_destroy__ = _TObj.delete_TObj_HSequenceOfObject

# Register TObj_HSequenceOfObject in _TObj:
_TObj.TObj_HSequenceOfObject_swigregister(TObj_HSequenceOfObject)



