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

"""
TDocStd module, see official documentation at
https://www.opencascade.com/doc/occt-7.7.0/refman/html/package_tdocstd.html
"""

from sys import version_info as _swig_python_version_info
# Import the low-level C/C++ module
if __package__ or "." in __name__:
    from . import _TDocStd
else:
    import _TDocStd

try:
    import builtins as __builtin__
except ImportError:
    import __builtin__

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


def _swig_setattr_nondynamic_instance_variable(set):
    def set_instance_attr(self, name, value):
        if name == "this":
            set(self, name, value)
        elif name == "thisown":
            self.this.own(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__ = _TDocStd.delete_SwigPyIterator

    def value(self):
        return _TDocStd.SwigPyIterator_value(self)

    def incr(self, n=1):
        return _TDocStd.SwigPyIterator_incr(self, n)

    def decr(self, n=1):
        return _TDocStd.SwigPyIterator_decr(self, n)

    def distance(self, x):
        return _TDocStd.SwigPyIterator_distance(self, x)

    def equal(self, x):
        return _TDocStd.SwigPyIterator_equal(self, x)

    def copy(self):
        return _TDocStd.SwigPyIterator_copy(self)

    def next(self):
        return _TDocStd.SwigPyIterator_next(self)

    def __next__(self):
        return _TDocStd.SwigPyIterator___next__(self)

    def previous(self):
        return _TDocStd.SwigPyIterator_previous(self)

    def advance(self, n):
        return _TDocStd.SwigPyIterator_advance(self, n)

    def __eq__(self, x):
        return _TDocStd.SwigPyIterator___eq__(self, x)

    def __ne__(self, x):
        return _TDocStd.SwigPyIterator___ne__(self, x)

    def __iadd__(self, n):
        return _TDocStd.SwigPyIterator___iadd__(self, n)

    def __isub__(self, n):
        return _TDocStd.SwigPyIterator___isub__(self, n)

    def __add__(self, n):
        return _TDocStd.SwigPyIterator___add__(self, n)

    def __sub__(self, *args):
        return _TDocStd.SwigPyIterator___sub__(self, *args)
    def __iter__(self):
        return self

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

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


def process_exception(error, method_name, class_name):
    return _TDocStd.process_exception(error, method_name, class_name)

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

import OCC.Core.Standard
import OCC.Core.NCollection
import OCC.Core.TDF
import OCC.Core.TCollection
import OCC.Core.TColStd
import OCC.Core.CDF
import OCC.Core.CDM
import OCC.Core.Message
import OCC.Core.OSD
import OCC.Core.Resource
import OCC.Core.PCDM
import OCC.Core.Storage

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

TDocStd_FormatVersion_LOWER = _TDocStd.TDocStd_FormatVersion_LOWER
TDocStd_FormatVersion_UPPER = _TDocStd.TDocStd_FormatVersion_UPPER
TDocStd_FormatVersion_VERSION_2 = _TDocStd.TDocStd_FormatVersion_VERSION_2
TDocStd_FormatVersion_VERSION_3 = _TDocStd.TDocStd_FormatVersion_VERSION_3
TDocStd_FormatVersion_VERSION_4 = _TDocStd.TDocStd_FormatVersion_VERSION_4
TDocStd_FormatVersion_VERSION_5 = _TDocStd.TDocStd_FormatVersion_VERSION_5
TDocStd_FormatVersion_VERSION_6 = _TDocStd.TDocStd_FormatVersion_VERSION_6
TDocStd_FormatVersion_VERSION_7 = _TDocStd.TDocStd_FormatVersion_VERSION_7
TDocStd_FormatVersion_VERSION_8 = _TDocStd.TDocStd_FormatVersion_VERSION_8
TDocStd_FormatVersion_VERSION_9 = _TDocStd.TDocStd_FormatVersion_VERSION_9
TDocStd_FormatVersion_VERSION_10 = _TDocStd.TDocStd_FormatVersion_VERSION_10
TDocStd_FormatVersion_VERSION_11 = _TDocStd.TDocStd_FormatVersion_VERSION_11
TDocStd_FormatVersion_VERSION_12 = _TDocStd.TDocStd_FormatVersion_VERSION_12
TDocStd_FormatVersion_CURRENT = _TDocStd.TDocStd_FormatVersion_CURRENT


class TDocStd_FormatVersion(IntEnum):
	TDocStd_FormatVersion_VERSION_2 = 2
	TDocStd_FormatVersion_VERSION_3 = 3
	TDocStd_FormatVersion_VERSION_4 = 4
	TDocStd_FormatVersion_VERSION_5 = 5
	TDocStd_FormatVersion_VERSION_6 = 6
	TDocStd_FormatVersion_VERSION_7 = 7
	TDocStd_FormatVersion_VERSION_8 = 8
	TDocStd_FormatVersion_VERSION_9 = 9
	TDocStd_FormatVersion_VERSION_10 = 10
	TDocStd_FormatVersion_VERSION_11 = 11
	TDocStd_FormatVersion_VERSION_12 = 12
	TDocStd_FormatVersion_CURRENT = TDocStd_FormatVersion_VERSION_12
TDocStd_FormatVersion_VERSION_2 = TDocStd_FormatVersion.TDocStd_FormatVersion_VERSION_2
TDocStd_FormatVersion_VERSION_3 = TDocStd_FormatVersion.TDocStd_FormatVersion_VERSION_3
TDocStd_FormatVersion_VERSION_4 = TDocStd_FormatVersion.TDocStd_FormatVersion_VERSION_4
TDocStd_FormatVersion_VERSION_5 = TDocStd_FormatVersion.TDocStd_FormatVersion_VERSION_5
TDocStd_FormatVersion_VERSION_6 = TDocStd_FormatVersion.TDocStd_FormatVersion_VERSION_6
TDocStd_FormatVersion_VERSION_7 = TDocStd_FormatVersion.TDocStd_FormatVersion_VERSION_7
TDocStd_FormatVersion_VERSION_8 = TDocStd_FormatVersion.TDocStd_FormatVersion_VERSION_8
TDocStd_FormatVersion_VERSION_9 = TDocStd_FormatVersion.TDocStd_FormatVersion_VERSION_9
TDocStd_FormatVersion_VERSION_10 = TDocStd_FormatVersion.TDocStd_FormatVersion_VERSION_10
TDocStd_FormatVersion_VERSION_11 = TDocStd_FormatVersion.TDocStd_FormatVersion_VERSION_11
TDocStd_FormatVersion_VERSION_12 = TDocStd_FormatVersion.TDocStd_FormatVersion_VERSION_12
TDocStd_FormatVersion_CURRENT = TDocStd_FormatVersion.TDocStd_FormatVersion_CURRENT


def Handle_TDocStd_Application_Create():
    return _TDocStd.Handle_TDocStd_Application_Create()

def Handle_TDocStd_Application_DownCast(t):
    return _TDocStd.Handle_TDocStd_Application_DownCast(t)

def Handle_TDocStd_Application_IsNull(t):
    return _TDocStd.Handle_TDocStd_Application_IsNull(t)

def Handle_TDocStd_ApplicationDelta_Create():
    return _TDocStd.Handle_TDocStd_ApplicationDelta_Create()

def Handle_TDocStd_ApplicationDelta_DownCast(t):
    return _TDocStd.Handle_TDocStd_ApplicationDelta_DownCast(t)

def Handle_TDocStd_ApplicationDelta_IsNull(t):
    return _TDocStd.Handle_TDocStd_ApplicationDelta_IsNull(t)

def Handle_TDocStd_CompoundDelta_Create():
    return _TDocStd.Handle_TDocStd_CompoundDelta_Create()

def Handle_TDocStd_CompoundDelta_DownCast(t):
    return _TDocStd.Handle_TDocStd_CompoundDelta_DownCast(t)

def Handle_TDocStd_CompoundDelta_IsNull(t):
    return _TDocStd.Handle_TDocStd_CompoundDelta_IsNull(t)

def Handle_TDocStd_Document_Create():
    return _TDocStd.Handle_TDocStd_Document_Create()

def Handle_TDocStd_Document_DownCast(t):
    return _TDocStd.Handle_TDocStd_Document_DownCast(t)

def Handle_TDocStd_Document_IsNull(t):
    return _TDocStd.Handle_TDocStd_Document_IsNull(t)

def Handle_TDocStd_Modified_Create():
    return _TDocStd.Handle_TDocStd_Modified_Create()

def Handle_TDocStd_Modified_DownCast(t):
    return _TDocStd.Handle_TDocStd_Modified_DownCast(t)

def Handle_TDocStd_Modified_IsNull(t):
    return _TDocStd.Handle_TDocStd_Modified_IsNull(t)

def Handle_TDocStd_MultiTransactionManager_Create():
    return _TDocStd.Handle_TDocStd_MultiTransactionManager_Create()

def Handle_TDocStd_MultiTransactionManager_DownCast(t):
    return _TDocStd.Handle_TDocStd_MultiTransactionManager_DownCast(t)

def Handle_TDocStd_MultiTransactionManager_IsNull(t):
    return _TDocStd.Handle_TDocStd_MultiTransactionManager_IsNull(t)

def Handle_TDocStd_Owner_Create():
    return _TDocStd.Handle_TDocStd_Owner_Create()

def Handle_TDocStd_Owner_DownCast(t):
    return _TDocStd.Handle_TDocStd_Owner_DownCast(t)

def Handle_TDocStd_Owner_IsNull(t):
    return _TDocStd.Handle_TDocStd_Owner_IsNull(t)

def Handle_TDocStd_XLink_Create():
    return _TDocStd.Handle_TDocStd_XLink_Create()

def Handle_TDocStd_XLink_DownCast(t):
    return _TDocStd.Handle_TDocStd_XLink_DownCast(t)

def Handle_TDocStd_XLink_IsNull(t):
    return _TDocStd.Handle_TDocStd_XLink_IsNull(t)

def Handle_TDocStd_XLinkRoot_Create():
    return _TDocStd.Handle_TDocStd_XLinkRoot_Create()

def Handle_TDocStd_XLinkRoot_DownCast(t):
    return _TDocStd.Handle_TDocStd_XLinkRoot_DownCast(t)

def Handle_TDocStd_XLinkRoot_IsNull(t):
    return _TDocStd.Handle_TDocStd_XLinkRoot_IsNull(t)
class TDocStd_LabelIDMapDataMap(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def begin(self):
        return _TDocStd.TDocStd_LabelIDMapDataMap_begin(self)

    def end(self):
        return _TDocStd.TDocStd_LabelIDMapDataMap_end(self)

    def cbegin(self):
        return _TDocStd.TDocStd_LabelIDMapDataMap_cbegin(self)

    def cend(self):
        return _TDocStd.TDocStd_LabelIDMapDataMap_cend(self)

    def __init__(self, *args):
        _TDocStd.TDocStd_LabelIDMapDataMap_swiginit(self, _TDocStd.new_TDocStd_LabelIDMapDataMap(*args))

    def Exchange(self, theOther):
        return _TDocStd.TDocStd_LabelIDMapDataMap_Exchange(self, theOther)

    def Assign(self, theOther):
        return _TDocStd.TDocStd_LabelIDMapDataMap_Assign(self, theOther)

    def Set(self, theOther):
        return _TDocStd.TDocStd_LabelIDMapDataMap_Set(self, theOther)

    def ReSize(self, N):
        return _TDocStd.TDocStd_LabelIDMapDataMap_ReSize(self, N)

    def Bind(self, theKey, theItem):
        return _TDocStd.TDocStd_LabelIDMapDataMap_Bind(self, theKey, theItem)

    def Bound(self, theKey, theItem):
        return _TDocStd.TDocStd_LabelIDMapDataMap_Bound(self, theKey, theItem)

    def IsBound(self, theKey):
        return _TDocStd.TDocStd_LabelIDMapDataMap_IsBound(self, theKey)

    def UnBind(self, theKey):
        return _TDocStd.TDocStd_LabelIDMapDataMap_UnBind(self, theKey)

    def Seek(self, theKey):
        return _TDocStd.TDocStd_LabelIDMapDataMap_Seek(self, theKey)

    def Find(self, *args):
        return _TDocStd.TDocStd_LabelIDMapDataMap_Find(self, *args)

    def ChangeSeek(self, theKey):
        return _TDocStd.TDocStd_LabelIDMapDataMap_ChangeSeek(self, theKey)

    def ChangeFind(self, theKey):
        return _TDocStd.TDocStd_LabelIDMapDataMap_ChangeFind(self, theKey)

    def __call__(self, *args):
        return _TDocStd.TDocStd_LabelIDMapDataMap___call__(self, *args)

    def Clear(self, *args):
        return _TDocStd.TDocStd_LabelIDMapDataMap_Clear(self, *args)
    __swig_destroy__ = _TDocStd.delete_TDocStd_LabelIDMapDataMap

    def Size(self):
        return _TDocStd.TDocStd_LabelIDMapDataMap_Size(self)

# Register TDocStd_LabelIDMapDataMap in _TDocStd:
_TDocStd.TDocStd_LabelIDMapDataMap_swigregister(TDocStd_LabelIDMapDataMap)
class TDocStd_SequenceOfApplicationDelta(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def begin(self):
        return _TDocStd.TDocStd_SequenceOfApplicationDelta_begin(self)

    def end(self):
        return _TDocStd.TDocStd_SequenceOfApplicationDelta_end(self)

    def cbegin(self):
        return _TDocStd.TDocStd_SequenceOfApplicationDelta_cbegin(self)

    def cend(self):
        return _TDocStd.TDocStd_SequenceOfApplicationDelta_cend(self)

    def __init__(self, *args):
        _TDocStd.TDocStd_SequenceOfApplicationDelta_swiginit(self, _TDocStd.new_TDocStd_SequenceOfApplicationDelta(*args))

    def Size(self):
        return _TDocStd.TDocStd_SequenceOfApplicationDelta_Size(self)

    def Length(self):
        return _TDocStd.TDocStd_SequenceOfApplicationDelta_Length(self)

    def Lower(self):
        return _TDocStd.TDocStd_SequenceOfApplicationDelta_Lower(self)

    def Upper(self):
        return _TDocStd.TDocStd_SequenceOfApplicationDelta_Upper(self)

    def IsEmpty(self):
        return _TDocStd.TDocStd_SequenceOfApplicationDelta_IsEmpty(self)

    def Reverse(self):
        return _TDocStd.TDocStd_SequenceOfApplicationDelta_Reverse(self)

    def Exchange(self, I, J):
        return _TDocStd.TDocStd_SequenceOfApplicationDelta_Exchange(self, I, J)

    @staticmethod
    def delNode(theNode, theAl):
        return _TDocStd.TDocStd_SequenceOfApplicationDelta_delNode(theNode, theAl)

    def Clear(self, theAllocator=0):
        return _TDocStd.TDocStd_SequenceOfApplicationDelta_Clear(self, theAllocator)

    def Assign(self, theOther):
        return _TDocStd.TDocStd_SequenceOfApplicationDelta_Assign(self, theOther)

    def Set(self, theOther):
        return _TDocStd.TDocStd_SequenceOfApplicationDelta_Set(self, theOther)

    def Remove(self, *args):
        return _TDocStd.TDocStd_SequenceOfApplicationDelta_Remove(self, *args)

    def Append(self, *args):
        return _TDocStd.TDocStd_SequenceOfApplicationDelta_Append(self, *args)

    def Prepend(self, *args):
        return _TDocStd.TDocStd_SequenceOfApplicationDelta_Prepend(self, *args)

    def InsertBefore(self, *args):
        return _TDocStd.TDocStd_SequenceOfApplicationDelta_InsertBefore(self, *args)

    def InsertAfter(self, *args):
        return _TDocStd.TDocStd_SequenceOfApplicationDelta_InsertAfter(self, *args)

    def Split(self, theIndex, theSeq):
        return _TDocStd.TDocStd_SequenceOfApplicationDelta_Split(self, theIndex, theSeq)

    def First(self):
        return _TDocStd.TDocStd_SequenceOfApplicationDelta_First(self)

    def ChangeFirst(self):
        return _TDocStd.TDocStd_SequenceOfApplicationDelta_ChangeFirst(self)

    def Last(self):
        return _TDocStd.TDocStd_SequenceOfApplicationDelta_Last(self)

    def ChangeLast(self):
        return _TDocStd.TDocStd_SequenceOfApplicationDelta_ChangeLast(self)

    def Value(self, theIndex):
        return _TDocStd.TDocStd_SequenceOfApplicationDelta_Value(self, theIndex)

    def ChangeValue(self, theIndex):
        return _TDocStd.TDocStd_SequenceOfApplicationDelta_ChangeValue(self, theIndex)

    def __call__(self, *args):
        return _TDocStd.TDocStd_SequenceOfApplicationDelta___call__(self, *args)

    def SetValue(self, theIndex, theItem):
        return _TDocStd.TDocStd_SequenceOfApplicationDelta_SetValue(self, theIndex, theItem)
    __swig_destroy__ = _TDocStd.delete_TDocStd_SequenceOfApplicationDelta

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


# Register TDocStd_SequenceOfApplicationDelta in _TDocStd:
_TDocStd.TDocStd_SequenceOfApplicationDelta_swigregister(TDocStd_SequenceOfApplicationDelta)
class TDocStd_SequenceOfDocument(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def begin(self):
        return _TDocStd.TDocStd_SequenceOfDocument_begin(self)

    def end(self):
        return _TDocStd.TDocStd_SequenceOfDocument_end(self)

    def cbegin(self):
        return _TDocStd.TDocStd_SequenceOfDocument_cbegin(self)

    def cend(self):
        return _TDocStd.TDocStd_SequenceOfDocument_cend(self)

    def __init__(self, *args):
        _TDocStd.TDocStd_SequenceOfDocument_swiginit(self, _TDocStd.new_TDocStd_SequenceOfDocument(*args))

    def Size(self):
        return _TDocStd.TDocStd_SequenceOfDocument_Size(self)

    def Length(self):
        return _TDocStd.TDocStd_SequenceOfDocument_Length(self)

    def Lower(self):
        return _TDocStd.TDocStd_SequenceOfDocument_Lower(self)

    def Upper(self):
        return _TDocStd.TDocStd_SequenceOfDocument_Upper(self)

    def IsEmpty(self):
        return _TDocStd.TDocStd_SequenceOfDocument_IsEmpty(self)

    def Reverse(self):
        return _TDocStd.TDocStd_SequenceOfDocument_Reverse(self)

    def Exchange(self, I, J):
        return _TDocStd.TDocStd_SequenceOfDocument_Exchange(self, I, J)

    @staticmethod
    def delNode(theNode, theAl):
        return _TDocStd.TDocStd_SequenceOfDocument_delNode(theNode, theAl)

    def Clear(self, theAllocator=0):
        return _TDocStd.TDocStd_SequenceOfDocument_Clear(self, theAllocator)

    def Assign(self, theOther):
        return _TDocStd.TDocStd_SequenceOfDocument_Assign(self, theOther)

    def Set(self, theOther):
        return _TDocStd.TDocStd_SequenceOfDocument_Set(self, theOther)

    def Remove(self, *args):
        return _TDocStd.TDocStd_SequenceOfDocument_Remove(self, *args)

    def Append(self, *args):
        return _TDocStd.TDocStd_SequenceOfDocument_Append(self, *args)

    def Prepend(self, *args):
        return _TDocStd.TDocStd_SequenceOfDocument_Prepend(self, *args)

    def InsertBefore(self, *args):
        return _TDocStd.TDocStd_SequenceOfDocument_InsertBefore(self, *args)

    def InsertAfter(self, *args):
        return _TDocStd.TDocStd_SequenceOfDocument_InsertAfter(self, *args)

    def Split(self, theIndex, theSeq):
        return _TDocStd.TDocStd_SequenceOfDocument_Split(self, theIndex, theSeq)

    def First(self):
        return _TDocStd.TDocStd_SequenceOfDocument_First(self)

    def ChangeFirst(self):
        return _TDocStd.TDocStd_SequenceOfDocument_ChangeFirst(self)

    def Last(self):
        return _TDocStd.TDocStd_SequenceOfDocument_Last(self)

    def ChangeLast(self):
        return _TDocStd.TDocStd_SequenceOfDocument_ChangeLast(self)

    def Value(self, theIndex):
        return _TDocStd.TDocStd_SequenceOfDocument_Value(self, theIndex)

    def ChangeValue(self, theIndex):
        return _TDocStd.TDocStd_SequenceOfDocument_ChangeValue(self, theIndex)

    def __call__(self, *args):
        return _TDocStd.TDocStd_SequenceOfDocument___call__(self, *args)

    def SetValue(self, theIndex, theItem):
        return _TDocStd.TDocStd_SequenceOfDocument_SetValue(self, theIndex, theItem)
    __swig_destroy__ = _TDocStd.delete_TDocStd_SequenceOfDocument

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


# Register TDocStd_SequenceOfDocument in _TDocStd:
_TDocStd.TDocStd_SequenceOfDocument_swigregister(TDocStd_SequenceOfDocument)
class tdocstd(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    @staticmethod
    def IDList(*args):
        r"""

        Parameters
        ----------
        anIDList: TDF_IDList

        Return
        -------
        None

        Description
        -----------
        Specific guid of this package ============================= appends to <anidlist> the list of the attributes ids of this package. caution: <anidlist> is not cleared before use.

        """
        return _TDocStd.tdocstd_IDList(*args)

    __repr__ = _dumps_object


    def __init__(self):
        _TDocStd.tdocstd_swiginit(self, _TDocStd.new_tdocstd())
    __swig_destroy__ = _TDocStd.delete_tdocstd

# Register tdocstd in _TDocStd:
_TDocStd.tdocstd_swigregister(tdocstd)
class TDocStd_Application(OCC.Core.CDF.CDF_Application):
    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"""
        Return
        -------
        None

        Description
        -----------
        Constructs the new instance and registers it in cdm_session.

        """
        _TDocStd.TDocStd_Application_swiginit(self, _TDocStd.new_TDocStd_Application(*args))

    def Close(self, *args):
        r"""

        Parameters
        ----------
        aDoc: TDocStd_Document

        Return
        -------
        None

        Description
        -----------
        Close the given document. the document is not any more handled by the applicative session.

        """
        return _TDocStd.TDocStd_Application_Close(self, *args)

    def DefineFormat(self, *args):
        r"""

        Parameters
        ----------
        theFormat: str
        theDescription: str
        theExtension: str
        theReader: PCDM_RetrievalDriver
        theWriter: PCDM_StorageDriver

        Return
        -------
        None

        Description
        -----------
        Sets up resources and registers read and storage drivers for the specified format. @param theformat - unique name for the format, used to identify it. @param thedescription - textual description of the format. @param theextension - extension of the files in that format. the same extension can be used by several formats. @param thereader - instance of the read driver for the format.  null value is allowed (no possibility to read). @param thewriter - instance of the write driver for the format.  null value is allowed (no possibility to write).

        """
        return _TDocStd.TDocStd_Application_DefineFormat(self, *args)

    def DumpJsonToString(self, depth=-1):
        r"""Json string serializer.Json string serializer."""
        return _TDocStd.TDocStd_Application_DumpJsonToString(self, depth)

    def GetDocument(self, *args):
        r"""

        Parameters
        ----------
        index: int
        aDoc: TDocStd_Document

        Return
        -------
        None

        Description
        -----------
        Constructs the new document adoc. adoc is identified by the index index which is any integer between 1 and n where n is the number of documents returned by nbdocument. example opencascade::handle<tdocstd_application> anapp; if (!caftest::find(a)) return 1; opencascade::handle<tdocstd> adoc; standard_integer nbdoc = anapp->nbdocuments(); for (standard_integer i = 1; i <= nbdoc; i++) { aapp->getdocument(i,adoc);.

        """
        return _TDocStd.TDocStd_Application_GetDocument(self, *args)

    def IsDriverLoaded(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Check if meta data driver was successfully loaded by the application constructor.

        """
        return _TDocStd.TDocStd_Application_IsDriverLoaded(self, *args)

    def IsInSession(self, *args):
        r"""

        Parameters
        ----------
        path: str

        Return
        -------
        int

        Description
        -----------
        Returns an index for the document found in the path path in this applicative session. if the returned value is 0, the document is not present in the applicative session. this method can be used for the interactive part of an application. for instance, on a call to open, the document to be opened may already be in memory. isinsession checks to see if this is the case. open can be made to depend on the value of the index returned: if isinsession returns 0, the document is opened; if it returns another value, a message is displayed asking the user if he wants to override the version of the document in memory. example: standard_integer insession = a->isinsession(adoc); if (insession > 0) { std::cout << 'document ' << insession << ' is already in session' << std::endl; return 0; }.

        """
        return _TDocStd.TDocStd_Application_IsInSession(self, *args)

    def NbDocuments(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        Returns the number of documents handled by the current applicative session.

        """
        return _TDocStd.TDocStd_Application_NbDocuments(self, *args)

    def NewDocument(self, *args):
        r"""

        Parameters
        ----------
        format: str
        aDoc: CDM_Document

        Return
        -------
        None

        Description
        -----------
        Constructs the empty new document adoc. this document will have the format format. if initdocument is redefined for a specific application, the new document is handled by the applicative session.

        Parameters
        ----------
        format: str
        aDoc: TDocStd_Document

        Return
        -------
        None

        Description
        -----------
        A non-virtual method taking a tdocstd_documment object as an input. internally it calls a virtual method newdocument() with cdm_document object.

        """
        return _TDocStd.TDocStd_Application_NewDocument(self, *args)

    def OnAbortTransaction(self, *args):
        r"""

        Parameters
        ----------
        theDoc: TDocStd_Document

        Return
        -------
        None

        Description
        -----------
        Notification that is fired at each aborttransaction event.

        """
        return _TDocStd.TDocStd_Application_OnAbortTransaction(self, *args)

    def OnCommitTransaction(self, *args):
        r"""

        Parameters
        ----------
        theDoc: TDocStd_Document

        Return
        -------
        None

        Description
        -----------
        Notification that is fired at each committransaction event.

        """
        return _TDocStd.TDocStd_Application_OnCommitTransaction(self, *args)

    def OnOpenTransaction(self, *args):
        r"""

        Parameters
        ----------
        theDoc: TDocStd_Document

        Return
        -------
        None

        Description
        -----------
        Notification that is fired at each opentransaction event.

        """
        return _TDocStd.TDocStd_Application_OnOpenTransaction(self, *args)

    def Open(self, *args):
        r"""

        Parameters
        ----------
        thePath: str
        theDoc: TDocStd_Document
        theFilter: PCDM_ReaderFilter
        theRange: Message_ProgressRange (optional, default to Message_ProgressRange())

        Return
        -------
        PCDM_ReaderStatus

        Description
        -----------
        Retrieves the document from specified file. in order not to override a version of the document which is already in memory, this method can be made to depend on the value returned by isinsession. @param[in] thepath file path to open @param[out] thedoc result document @param[in] thefilter optional filter to skip attributes or parts of the retrieved tree @param[in] therange optional progress indicator return reading status.

        Parameters
        ----------
        thePath: str
        theDoc: TDocStd_Document
        theRange: Message_ProgressRange (optional, default to Message_ProgressRange())

        Return
        -------
        PCDM_ReaderStatus

        Description
        -----------
        Retrieves the document from specified file. in order not to override a version of the document which is already in memory, this method can be made to depend on the value returned by isinsession. @param[in] thepath file path to open @param[out] thedoc result document @param[in] therange optional progress indicator return reading status.

        """
        return _TDocStd.TDocStd_Application_Open(self, *args)

    def ReadingFormats(self, *args):
        r"""

        Parameters
        ----------
        theFormats: TColStd_SequenceOfAsciiString

        Return
        -------
        None

        Description
        -----------
        Returns the sequence of reading formats supported by the application. //! @param theformats - sequence of reading formats. output parameter.

        """
        return _TDocStd.TDocStd_Application_ReadingFormats(self, *args)

    def ResourcesName(self, *args):
        r"""
        Return
        -------
        str

        Description
        -----------
        Returns the name of the file containing the resources of this application, for support of legacy method of loading formats data from resource files. //! method defineformat() can be used to define all necessary parameters explicitly without actually using resource files. //! in a resource file, the application associates the schema name of the document with the storage and retrieval plug-ins that are to be loaded for each document. on retrieval, the application reads the schema name in the heading of the csf file and loads the plug-in indicated in the resource file. this plug-in instantiates the actual driver for transient-persistent conversion. your application can bring this process into play by defining a class which inherits cdf_application and redefines the function which returns the appropriate resources file. at this point, the function retrieve and the class cdf_store can be called. this allows you to deal with storage and retrieval of - as well as copying and pasting - documents. to implement a class like this, several virtual functions should be redefined. in particular, you must redefine the abstract function resources inherited from the superclass cdm_application. //! default implementation returns empty string.

        """
        return _TDocStd.TDocStd_Application_ResourcesName(self, *args)

    def Save(self, *args):
        r"""

        Parameters
        ----------
        theDoc: TDocStd_Document
        theRange: Message_ProgressRange (optional, default to Message_ProgressRange())

        Return
        -------
        PCDM_StoreStatus

        Description
        -----------
        Save adoc active document. exceptions: standard_notimplemented if the document was not retrieved in the applicative session by using open.

        Parameters
        ----------
        theDoc: TDocStd_Document
        theStatusMessage: str
        theRange: Message_ProgressRange (optional, default to Message_ProgressRange())

        Return
        -------
        PCDM_StoreStatus

        Description
        -----------
        Save the document overwriting the previous file.

        """
        return _TDocStd.TDocStd_Application_Save(self, *args)

    def SaveAs(self, *args):
        r"""

        Parameters
        ----------
        theDoc: TDocStd_Document
        path: str
        theRange: Message_ProgressRange (optional, default to Message_ProgressRange())

        Return
        -------
        PCDM_StoreStatus

        Description
        -----------
        Save the active document in the file <name> in the path <path> ; o verwrites the file if it already exists.

        Parameters
        ----------
        theDoc: TDocStd_Document
        path: str
        theStatusMessage: str
        theRange: Message_ProgressRange (optional, default to Message_ProgressRange())

        Return
        -------
        PCDM_StoreStatus

        Description
        -----------
        Save the active document in the file <name> in the path <path> . overwrite the file if it already exist.

        """
        return _TDocStd.TDocStd_Application_SaveAs(self, *args)

    def WritingFormats(self, *args):
        r"""

        Parameters
        ----------
        theFormats: TColStd_SequenceOfAsciiString

        Return
        -------
        None

        Description
        -----------
        Returns the sequence of writing formats supported by the application. //! @param theformats - sequence of writing formats. output parameter.

        """
        return _TDocStd.TDocStd_Application_WritingFormats(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _TDocStd.delete_TDocStd_Application

# Register TDocStd_Application in _TDocStd:
_TDocStd.TDocStd_Application_swigregister(TDocStd_Application)
class TDocStd_ApplicationDelta(OCC.Core.Standard.Standard_Transient):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        _TDocStd.TDocStd_ApplicationDelta_swiginit(self, _TDocStd.new_TDocStd_ApplicationDelta(*args))

    def DumpToString(self):
        r"""DumpToString(TDocStd_ApplicationDelta self) -> std::string"""
        return _TDocStd.TDocStd_ApplicationDelta_DumpToString(self)

    def GetDocuments(self, *args):
        r"""
        Return
        -------
        TDocStd_SequenceOfDocument

        Description
        -----------
        No available documentation.

        """
        return _TDocStd.TDocStd_ApplicationDelta_GetDocuments(self, *args)

    def GetName(self, *args):
        r"""
        Return
        -------
        TCollection_ExtendedString

        Description
        -----------
        No available documentation.

        """
        return _TDocStd.TDocStd_ApplicationDelta_GetName(self, *args)

    def SetName(self, *args):
        r"""

        Parameters
        ----------
        theName: str

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _TDocStd.TDocStd_ApplicationDelta_SetName(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _TDocStd.delete_TDocStd_ApplicationDelta

# Register TDocStd_ApplicationDelta in _TDocStd:
_TDocStd.TDocStd_ApplicationDelta_swigregister(TDocStd_ApplicationDelta)
class TDocStd_CompoundDelta(OCC.Core.TDF.TDF_Delta):
    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"""
        Return
        -------
        None

        Description
        -----------
        Creates a compound delta. validates <self> at <abegintime>. if applied, it restores the tdf_data in the state it was at <anendtime>. reserved to tdf_data.

        """
        _TDocStd.TDocStd_CompoundDelta_swiginit(self, _TDocStd.new_TDocStd_CompoundDelta(*args))


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


    __repr__ = _dumps_object

    __swig_destroy__ = _TDocStd.delete_TDocStd_CompoundDelta

# Register TDocStd_CompoundDelta in _TDocStd:
_TDocStd.TDocStd_CompoundDelta_swigregister(TDocStd_CompoundDelta)
class TDocStd_Context(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        _TDocStd.TDocStd_Context_swiginit(self, _TDocStd.new_TDocStd_Context(*args))

    def ModifiedReferences(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        No available documentation.

        """
        return _TDocStd.TDocStd_Context_ModifiedReferences(self, *args)

    def SetModifiedReferences(self, *args):
        r"""

        Parameters
        ----------
        Mod: bool

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _TDocStd.TDocStd_Context_SetModifiedReferences(self, *args)

    __repr__ = _dumps_object

    __swig_destroy__ = _TDocStd.delete_TDocStd_Context

# Register TDocStd_Context in _TDocStd:
_TDocStd.TDocStd_Context_swigregister(TDocStd_Context)
class TDocStd_Document(OCC.Core.CDM.CDM_Document):
    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"""

        Parameters
        ----------
        astorageformat: str

        Return
        -------
        None

        Description
        -----------
        Constructs a document object defined by the string astorageformat. if a document is created outside of an application using this constructor, it must be managed by a handle. otherwise memory problems could appear: call of tdocstd_owner::getdocument creates a opencascade::handle<tdocstd_document>, so, releasing it will produce a crash.

        """
        _TDocStd.TDocStd_Document_swiginit(self, _TDocStd.new_TDocStd_Document(*args))

    def AbortCommand(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Abort the command transaction. does nothing if there is no command transaction open.

        """
        return _TDocStd.TDocStd_Document_AbortCommand(self, *args)

    def BeforeClose(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Prepares document for closing.

        """
        return _TDocStd.TDocStd_Document_BeforeClose(self, *args)

    def ChangeStorageFormat(self, *args):
        r"""

        Parameters
        ----------
        newStorageFormat: str

        Return
        -------
        None

        Description
        -----------
        Methods for the nested transaction mode.

        """
        return _TDocStd.TDocStd_Document_ChangeStorageFormat(self, *args)

    def ChangeStorageFormatVersion(self, *args):
        r"""

        Parameters
        ----------
        theVersion: TDocStd_FormatVersion

        Return
        -------
        None

        Description
        -----------
        Sets version of the format to be used to store the document.

        """
        return _TDocStd.TDocStd_Document_ChangeStorageFormatVersion(self, *args)

    def ClearRedos(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Remove all stored redos.

        """
        return _TDocStd.TDocStd_Document_ClearRedos(self, *args)

    def ClearUndos(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Remove all stored undos and redos.

        """
        return _TDocStd.TDocStd_Document_ClearUndos(self, *args)

    def CommitCommand(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Commits documents transactions and fills the transaction manager with documents that have been changed during the transaction. if no command transaction is open, nothing is done. returns true if a new delta has been added to myundos.

        """
        return _TDocStd.TDocStd_Document_CommitCommand(self, *args)

    @staticmethod
    def CurrentStorageFormatVersion(*args):
        r"""
        Return
        -------
        TDocStd_FormatVersion

        Description
        -----------
        Returns current storage format version of the document.

        """
        return _TDocStd.TDocStd_Document_CurrentStorageFormatVersion(*args)

    def DumpJsonToString(self, depth=-1):
        r"""Json string serializer.Json string serializer."""
        return _TDocStd.TDocStd_Document_DumpJsonToString(self, depth)

    def EmptyLabelsSavingMode(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Returns saving mode for empty labels.

        """
        return _TDocStd.TDocStd_Document_EmptyLabelsSavingMode(self, *args)

    @staticmethod
    def Get(*args):
        r"""

        Parameters
        ----------
        L: TDF_Label

        Return
        -------
        opencascade::handle<TDocStd_Document>

        Description
        -----------
        Will abort any execution, clear fields returns the document which contains <l>. raises an exception if the document is not found.

        """
        return _TDocStd.TDocStd_Document_Get(*args)

    def GetAvailableRedos(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        Returns the number of redos stored in this document. if this figure is greater than 0, the method redo can be used.

        """
        return _TDocStd.TDocStd_Document_GetAvailableRedos(self, *args)

    def GetAvailableUndos(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        Returns the number of undos stored in this document. if this figure is greater than 0, the method undo can be used.

        """
        return _TDocStd.TDocStd_Document_GetAvailableUndos(self, *args)

    def GetData(self, *args):
        r"""
        Return
        -------
        opencascade::handle<TDF_Data>

        Description
        -----------
        No available documentation.

        """
        return _TDocStd.TDocStd_Document_GetData(self, *args)

    def GetModified(self, *args):
        r"""
        Return
        -------
        TDF_LabelMap

        Description
        -----------
        Returns the labels which have been modified in this document.

        """
        return _TDocStd.TDocStd_Document_GetModified(self, *args)

    def GetName(self, *args):
        r"""
        Return
        -------
        TCollection_ExtendedString

        Description
        -----------
        Raise if <self> is not saved.

        """
        return _TDocStd.TDocStd_Document_GetName(self, *args)

    def GetPath(self, *args):
        r"""
        Return
        -------
        TCollection_ExtendedString

        Description
        -----------
        Returns the os path of the file, in which one <self> is saved. raise an exception if <self> is not saved.

        """
        return _TDocStd.TDocStd_Document_GetPath(self, *args)

    def GetRedos(self, *args):
        r"""
        Return
        -------
        TDF_DeltaList

        Description
        -----------
        No available documentation.

        """
        return _TDocStd.TDocStd_Document_GetRedos(self, *args)

    def GetSavedTime(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        Returns value of <mysavedtime> to be used later in setsavedtime().

        """
        return _TDocStd.TDocStd_Document_GetSavedTime(self, *args)

    def GetUndoLimit(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        The current limit on the number of undos.

        """
        return _TDocStd.TDocStd_Document_GetUndoLimit(self, *args)

    def GetUndos(self, *args):
        r"""
        Return
        -------
        TDF_DeltaList

        Description
        -----------
        No available documentation.

        """
        return _TDocStd.TDocStd_Document_GetUndos(self, *args)

    def HasOpenCommand(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Returns true if a command transaction is open in the curret .

        """
        return _TDocStd.TDocStd_Document_HasOpenCommand(self, *args)

    def InitDeltaCompaction(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Initializes the procedure of delta compaction returns false if there is no delta to compact marks the last delta as a 'from' delta.

        """
        return _TDocStd.TDocStd_Document_InitDeltaCompaction(self, *args)

    def IsChanged(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Returns true if document differs from the state of last saving. this method have to be called only working in the transaction mode.

        """
        return _TDocStd.TDocStd_Document_IsChanged(self, *args)

    def IsEmpty(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Returns true if the main label has no attributes.

        """
        return _TDocStd.TDocStd_Document_IsEmpty(self, *args)

    def IsNestedTransactionMode(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Returns standard_true if mode is set.

        """
        return _TDocStd.TDocStd_Document_IsNestedTransactionMode(self, *args)

    def IsSaved(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        The document is saved in a file.

        """
        return _TDocStd.TDocStd_Document_IsSaved(self, *args)

    def IsValid(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Returns false if the document has been modified but not recomputed.

        """
        return _TDocStd.TDocStd_Document_IsValid(self, *args)

    def Main(self, *args):
        r"""
        Return
        -------
        TDF_Label

        Description
        -----------
        Returns the main label in this data framework. by definition, this is the label with the entry 0:1.

        """
        return _TDocStd.TDocStd_Document_Main(self, *args)

    def ModificationMode(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Returns true if changes allowed only inside transactions.

        """
        return _TDocStd.TDocStd_Document_ModificationMode(self, *args)

    def NewCommand(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Launches a new command. this command may be undone.

        """
        return _TDocStd.TDocStd_Document_NewCommand(self, *args)

    def OpenCommand(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Opens a new command transaction in this document. you can use hasopencommand to see whether a command is already open. exceptions standard_domainerror if a command is already open in this document.

        """
        return _TDocStd.TDocStd_Document_OpenCommand(self, *args)

    def PerformDeltaCompaction(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Performs the procedure of delta compaction makes all deltas starting from 'from' delta till the last one to be one delta.

        """
        return _TDocStd.TDocStd_Document_PerformDeltaCompaction(self, *args)

    def PurgeModified(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Remove all modifications. after this call the document becomesagain valid.

        """
        return _TDocStd.TDocStd_Document_PurgeModified(self, *args)

    def Recompute(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Recompute if the document was not valid and propagate the reccorded modification.

        """
        return _TDocStd.TDocStd_Document_Recompute(self, *args)

    def Redo(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Will redo one step, returns false if no redo was done (redos == 0). otherwise, true is returned, and one step in the list of redoes is done again.

        """
        return _TDocStd.TDocStd_Document_Redo(self, *args)

    def RemoveFirstUndo(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Removes the first undo in the list of document undos. it is used in the application when the undo limit is exceed.

        """
        return _TDocStd.TDocStd_Document_RemoveFirstUndo(self, *args)

    def SetData(self, *args):
        r"""

        Parameters
        ----------
        data: TDF_Data

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _TDocStd.TDocStd_Document_SetData(self, *args)

    def SetEmptyLabelsSavingMode(self, *args):
        r"""

        Parameters
        ----------
        isAllowed: bool

        Return
        -------
        None

        Description
        -----------
        Sets saving mode for empty labels. if standard_true, empty labels will be saved.

        """
        return _TDocStd.TDocStd_Document_SetEmptyLabelsSavingMode(self, *args)

    def SetModificationMode(self, *args):
        r"""

        Parameters
        ----------
        theTransactionOnly: bool

        Return
        -------
        None

        Description
        -----------
        If thetransactiononly is true changes is denied outside transactions.

        """
        return _TDocStd.TDocStd_Document_SetModificationMode(self, *args)

    def SetModified(self, *args):
        r"""

        Parameters
        ----------
        L: TDF_Label

        Return
        -------
        None

        Description
        -----------
        Notify the label as modified, the document becomes unvalid. returns true if <l> has been notified as modified.

        """
        return _TDocStd.TDocStd_Document_SetModified(self, *args)

    def SetNestedTransactionMode(self, *args):
        r"""

        Parameters
        ----------
        isAllowed: bool (optional, default to Standard_True)

        Return
        -------
        None

        Description
        -----------
        Sets nested transaction mode if isallowed == standard_true.

        """
        return _TDocStd.TDocStd_Document_SetNestedTransactionMode(self, *args)

    def SetSaved(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        This method have to be called to show document that it has been saved.

        """
        return _TDocStd.TDocStd_Document_SetSaved(self, *args)

    def SetSavedTime(self, *args):
        r"""

        Parameters
        ----------
        theTime: int

        Return
        -------
        None

        Description
        -----------
        Say to document what it is not saved. use value, returned earlier by getsavedtime().

        """
        return _TDocStd.TDocStd_Document_SetSavedTime(self, *args)

    def SetUndoLimit(self, *args):
        r"""

        Parameters
        ----------
        L: int

        Return
        -------
        None

        Description
        -----------
        Set the limit on the number of undo delta stored 0 will disable undo on the document a negative value means no limit. note that by default undo is disabled. enabling it will take effect with the next call to newcommand. of course this limit is the same for redo.

        """
        return _TDocStd.TDocStd_Document_SetUndoLimit(self, *args)

    def StorageFormatVersion(self, *args):
        r"""
        Return
        -------
        TDocStd_FormatVersion

        Description
        -----------
        Returns version of the format to be used to store the document.

        """
        return _TDocStd.TDocStd_Document_StorageFormatVersion(self, *args)

    def Undo(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Will undo one step, returns false if no undo was done (undos == 0). otherwise, true is returned and one step in the list of undoes is undone.

        """
        return _TDocStd.TDocStd_Document_Undo(self, *args)

    def UpdateReferences(self, *args):
        r"""

        Parameters
        ----------
        aDocEntry: str

        Return
        -------
        None

        Description
        -----------
        Set modifications on labels impacted by external references to the entry. the document becomes invalid and must be recomputed.

        """
        return _TDocStd.TDocStd_Document_UpdateReferences(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _TDocStd.delete_TDocStd_Document

# Register TDocStd_Document in _TDocStd:
_TDocStd.TDocStd_Document_swigregister(TDocStd_Document)
class TDocStd_Modified(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

    def __init__(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        _TDocStd.TDocStd_Modified_swiginit(self, _TDocStd.new_TDocStd_Modified(*args))

    @staticmethod
    def Add(*args):
        r"""

        Parameters
        ----------
        alabel: TDF_Label

        Return
        -------
        bool

        Description
        -----------
        No available documentation.

        """
        return _TDocStd.TDocStd_Modified_Add(*args)

    def AddLabel(self, *args):
        r"""

        Parameters
        ----------
        L: TDF_Label

        Return
        -------
        bool

        Description
        -----------
        Add <l> as modified.

        """
        return _TDocStd.TDocStd_Modified_AddLabel(self, *args)

    def Clear(self, *args):
        r"""

        Parameters
        ----------
        access: TDF_Label

        Return
        -------
        None

        Description
        -----------
        Remove all modified labels. becomes empty.
        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _TDocStd.TDocStd_Modified_Clear(self, *args)

    @staticmethod
    def Contains(*args):
        r"""

        Parameters
        ----------
        alabel: TDF_Label

        Return
        -------
        bool

        Description
        -----------
        No available documentation.

        """
        return _TDocStd.TDocStd_Modified_Contains(*args)

    def DumpToString(self):
        r"""DumpToString(TDocStd_Modified self) -> std::string"""
        return _TDocStd.TDocStd_Modified_DumpToString(self)

    def Get(self, *args):
        r"""

        Parameters
        ----------
        access: TDF_Label

        Return
        -------
        TDF_LabelMap

        Description
        -----------
        If <isempty> raise an exception.
        Return
        -------
        TDF_LabelMap

        Description
        -----------
        Returns modified label map.

        """
        return _TDocStd.TDocStd_Modified_Get(self, *args)

    @staticmethod
    def GetID(*args):
        r"""
        Return
        -------
        Standard_GUID

        Description
        -----------
        Modified methods ================.

        """
        return _TDocStd.TDocStd_Modified_GetID(*args)

    def IsEmpty(self, *args):
        r"""

        Parameters
        ----------
        access: TDF_Label

        Return
        -------
        bool

        Description
        -----------
        Api class methods =================.
        Return
        -------
        bool

        Description
        -----------
        No available documentation.

        """
        return _TDocStd.TDocStd_Modified_IsEmpty(self, *args)

    @staticmethod
    def Remove(*args):
        r"""

        Parameters
        ----------
        alabel: TDF_Label

        Return
        -------
        bool

        Description
        -----------
        No available documentation.

        """
        return _TDocStd.TDocStd_Modified_Remove(*args)

    def RemoveLabel(self, *args):
        r"""

        Parameters
        ----------
        L: TDF_Label

        Return
        -------
        bool

        Description
        -----------
        Remove <l> as modified.

        """
        return _TDocStd.TDocStd_Modified_RemoveLabel(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _TDocStd.delete_TDocStd_Modified

# Register TDocStd_Modified in _TDocStd:
_TDocStd.TDocStd_Modified_swigregister(TDocStd_Modified)
class TDocStd_MultiTransactionManager(OCC.Core.Standard.Standard_Transient):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Constructor.

        """
        _TDocStd.TDocStd_MultiTransactionManager_swiginit(self, _TDocStd.new_TDocStd_MultiTransactionManager(*args))

    def AbortCommand(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Unsets the flag of started manager transaction and aborts transaction in each document.

        """
        return _TDocStd.TDocStd_MultiTransactionManager_AbortCommand(self, *args)

    def AddDocument(self, *args):
        r"""

        Parameters
        ----------
        theDoc: TDocStd_Document

        Return
        -------
        None

        Description
        -----------
        Adds the document to the transaction manager and checks if it has been already added.

        """
        return _TDocStd.TDocStd_MultiTransactionManager_AddDocument(self, *args)

    def ClearRedos(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Clears redos in the manager and in documents.

        """
        return _TDocStd.TDocStd_MultiTransactionManager_ClearRedos(self, *args)

    def ClearUndos(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Clears undos in the manager and in documents.

        """
        return _TDocStd.TDocStd_MultiTransactionManager_ClearUndos(self, *args)

    def CommitCommand(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Commits transaction in all documents and fills the transaction manager with the documents that have been changed during the transaction. returns true if new data has been added to myundos. note: all nested transactions in the documents will be committed.

        Parameters
        ----------
        theName: str

        Return
        -------
        bool

        Description
        -----------
        Makes the same steps as the previous function but defines the name for transaction. returns true if new data has been added to myundos.

        """
        return _TDocStd.TDocStd_MultiTransactionManager_CommitCommand(self, *args)

    def Documents(self, *args):
        r"""
        Return
        -------
        TDocStd_SequenceOfDocument

        Description
        -----------
        Returns the added documents to the transaction manager.

        """
        return _TDocStd.TDocStd_MultiTransactionManager_Documents(self, *args)

    def DumpTransactionToString(self):
        r"""DumpTransactionToString(TDocStd_MultiTransactionManager self) -> std::string"""
        return _TDocStd.TDocStd_MultiTransactionManager_DumpTransactionToString(self)

    def GetAvailableRedos(self, *args):
        r"""
        Return
        -------
        TDocStd_SequenceOfApplicationDelta

        Description
        -----------
        Returns available manager redos.

        """
        return _TDocStd.TDocStd_MultiTransactionManager_GetAvailableRedos(self, *args)

    def GetAvailableUndos(self, *args):
        r"""
        Return
        -------
        TDocStd_SequenceOfApplicationDelta

        Description
        -----------
        Returns available manager undos.

        """
        return _TDocStd.TDocStd_MultiTransactionManager_GetAvailableUndos(self, *args)

    def GetUndoLimit(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        Returns undo limit for the manager.

        """
        return _TDocStd.TDocStd_MultiTransactionManager_GetUndoLimit(self, *args)

    def HasOpenCommand(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Returns true if a transaction is opened.

        """
        return _TDocStd.TDocStd_MultiTransactionManager_HasOpenCommand(self, *args)

    def IsNestedTransactionMode(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Returns standard_true if nestedtransaction mode is set. methods for protection of changes outside transactions.

        """
        return _TDocStd.TDocStd_MultiTransactionManager_IsNestedTransactionMode(self, *args)

    def ModificationMode(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Returns true if changes are allowed only inside transactions.

        """
        return _TDocStd.TDocStd_MultiTransactionManager_ModificationMode(self, *args)

    def OpenCommand(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Opens transaction in each document and sets the flag that transaction is opened. if there are already opened transactions in the documents, these transactions will be aborted before opening new ones.

        """
        return _TDocStd.TDocStd_MultiTransactionManager_OpenCommand(self, *args)

    def Redo(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Redoes the current transaction of the application. it calls the redo () method of the document being on top of the manager list of redos (list.first()) and moves the list item to the top of the list of manager undos (list.prepend(item)).

        """
        return _TDocStd.TDocStd_MultiTransactionManager_Redo(self, *args)

    def RemoveDocument(self, *args):
        r"""

        Parameters
        ----------
        theDoc: TDocStd_Document

        Return
        -------
        None

        Description
        -----------
        Removes the document from the transaction manager.

        """
        return _TDocStd.TDocStd_MultiTransactionManager_RemoveDocument(self, *args)

    def RemoveLastUndo(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Removes undo information from the list of undos of the manager and all documents which have been modified during the transaction.

        """
        return _TDocStd.TDocStd_MultiTransactionManager_RemoveLastUndo(self, *args)

    def SetModificationMode(self, *args):
        r"""

        Parameters
        ----------
        theTransactionOnly: bool

        Return
        -------
        None

        Description
        -----------
        If thetransactiononly is true, denies all changes outside transactions.

        """
        return _TDocStd.TDocStd_MultiTransactionManager_SetModificationMode(self, *args)

    def SetNestedTransactionMode(self, *args):
        r"""

        Parameters
        ----------
        isAllowed: bool (optional, default to Standard_True)

        Return
        -------
        None

        Description
        -----------
        Sets nested transaction mode if isallowed == standard_true note: field myisnestedtransactionmode exists only for synchronization between several documents and has no effect on transactions of multitransaction manager.

        """
        return _TDocStd.TDocStd_MultiTransactionManager_SetNestedTransactionMode(self, *args)

    def SetUndoLimit(self, *args):
        r"""

        Parameters
        ----------
        theLimit: int

        Return
        -------
        None

        Description
        -----------
        Sets undo limit for the manager and all documents.

        """
        return _TDocStd.TDocStd_MultiTransactionManager_SetUndoLimit(self, *args)

    def Undo(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Undoes the current transaction of the manager. it calls the undo () method of the document being on top of the manager list of undos (list.first()) and moves the list item to the top of the list of manager redos (list.prepend(item)).

        """
        return _TDocStd.TDocStd_MultiTransactionManager_Undo(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _TDocStd.delete_TDocStd_MultiTransactionManager

# Register TDocStd_MultiTransactionManager in _TDocStd:
_TDocStd.TDocStd_MultiTransactionManager_swigregister(TDocStd_MultiTransactionManager)
class TDocStd_Owner(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

    def __init__(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        _TDocStd.TDocStd_Owner_swiginit(self, _TDocStd.new_TDocStd_Owner(*args))

    def DumpToString(self):
        r"""DumpToString(TDocStd_Owner self) -> std::string"""
        return _TDocStd.TDocStd_Owner_DumpToString(self)

    def DumpJsonToString(self, depth=-1):
        r"""Json string serializer.Json string serializer."""
        return _TDocStd.TDocStd_Owner_DumpJsonToString(self, depth)

    def GetDocument(self, *args):
        r"""

        Parameters
        ----------
        ofdata: TDF_Data

        Return
        -------
        opencascade::handle<TDocStd_Document>

        Description
        -----------
        Owner methods ===============.
        Return
        -------
        opencascade::handle<TDocStd_Document>

        Description
        -----------
        No available documentation.

        """
        return _TDocStd.TDocStd_Owner_GetDocument(self, *args)

    @staticmethod
    def GetID(*args):
        r"""
        Return
        -------
        Standard_GUID

        Description
        -----------
        Class methods =============.

        """
        return _TDocStd.TDocStd_Owner_GetID(*args)

    def SetDocument(self, *args):
        r"""

        Parameters
        ----------
        indata: TDF_Data
        doc: TDocStd_Document

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        Parameters
        ----------
        indata: TDF_Data
        doc: TDocStd_Document *

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        Parameters
        ----------
        document: TDocStd_Document

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        Parameters
        ----------
        document: TDocStd_Document *

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _TDocStd.TDocStd_Owner_SetDocument(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _TDocStd.delete_TDocStd_Owner

# Register TDocStd_Owner in _TDocStd:
_TDocStd.TDocStd_Owner_swigregister(TDocStd_Owner)
class TDocStd_PathParser(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        r"""

        Parameters
        ----------
        path: str

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        _TDocStd.TDocStd_PathParser_swiginit(self, _TDocStd.new_TDocStd_PathParser(*args))

    def Extension(self, *args):
        r"""
        Return
        -------
        TCollection_ExtendedString

        Description
        -----------
        No available documentation.

        """
        return _TDocStd.TDocStd_PathParser_Extension(self, *args)

    def Length(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        No available documentation.

        """
        return _TDocStd.TDocStd_PathParser_Length(self, *args)

    def Name(self, *args):
        r"""
        Return
        -------
        TCollection_ExtendedString

        Description
        -----------
        No available documentation.

        """
        return _TDocStd.TDocStd_PathParser_Name(self, *args)

    def Parse(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _TDocStd.TDocStd_PathParser_Parse(self, *args)

    def Path(self, *args):
        r"""
        Return
        -------
        TCollection_ExtendedString

        Description
        -----------
        No available documentation.

        """
        return _TDocStd.TDocStd_PathParser_Path(self, *args)

    def Trek(self, *args):
        r"""
        Return
        -------
        TCollection_ExtendedString

        Description
        -----------
        No available documentation.

        """
        return _TDocStd.TDocStd_PathParser_Trek(self, *args)

    __repr__ = _dumps_object

    __swig_destroy__ = _TDocStd.delete_TDocStd_PathParser

# Register TDocStd_PathParser in _TDocStd:
_TDocStd.TDocStd_PathParser_swigregister(TDocStd_PathParser)
class TDocStd_XLink(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

    def __init__(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Initializes fields.

        """
        _TDocStd.TDocStd_XLink_swiginit(self, _TDocStd.new_TDocStd_XLink(*args))

    def DocumentEntry(self, *args):
        r"""

        Parameters
        ----------
        aDocEntry: str

        Return
        -------
        None

        Description
        -----------
        Sets the name adocentry for the external document in this external link attribute.
        Return
        -------
        TCollection_AsciiString

        Description
        -----------
        Returns the contents of the document identified by adocentry. adocentry provides external data to this external link attribute.

        """
        return _TDocStd.TDocStd_XLink_DocumentEntry(self, *args)

    def DumpToString(self):
        r"""DumpToString(TDocStd_XLink self) -> std::string"""
        return _TDocStd.TDocStd_XLink_DumpToString(self)

    @staticmethod
    def GetID(*args):
        r"""
        Return
        -------
        Standard_GUID

        Description
        -----------
        Returns the guid for external links.

        """
        return _TDocStd.TDocStd_XLink_GetID(*args)

    def LabelEntry(self, *args):
        r"""

        Parameters
        ----------
        aLabel: TDF_Label

        Return
        -------
        None

        Description
        -----------
        Sets the label entry for this external link attribute with the label alabel. alabel pilots the importation of data from the document entry.

        Parameters
        ----------
        aLabEntry: str

        Return
        -------
        None

        Description
        -----------
        Sets the label entry for this external link attribute as a document identified by alabentry.
        Return
        -------
        TCollection_AsciiString

        Description
        -----------
        Returns the contents of the field <mylabelentry>.

        """
        return _TDocStd.TDocStd_XLink_LabelEntry(self, *args)

    @staticmethod
    def Set(*args):
        r"""

        Parameters
        ----------
        atLabel: TDF_Label

        Return
        -------
        opencascade::handle<TDocStd_XLink>

        Description
        -----------
        Sets an empty external reference, at the label alabel.

        """
        return _TDocStd.TDocStd_XLink_Set(*args)

    def Update(self, *args):
        r"""
        Return
        -------
        opencascade::handle<TDF_Reference>

        Description
        -----------
        Updates the data referenced in this external link attribute.

        """
        return _TDocStd.TDocStd_XLink_Update(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _TDocStd.delete_TDocStd_XLink

# Register TDocStd_XLink in _TDocStd:
_TDocStd.TDocStd_XLink_swigregister(TDocStd_XLink)
class TDocStd_XLinkIterator(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Returns an empty iterator;.

        Parameters
        ----------
        D: TDocStd_Document

        Return
        -------
        None

        Description
        -----------
        Creates an iterator on reference of <d>.

        """
        _TDocStd.TDocStd_XLinkIterator_swiginit(self, _TDocStd.new_TDocStd_XLinkIterator(*args))

    def Initialize(self, *args):
        r"""

        Parameters
        ----------
        D: TDocStd_Document

        Return
        -------
        None

        Description
        -----------
        Restarts an iteration with <d>.

        """
        return _TDocStd.TDocStd_XLinkIterator_Initialize(self, *args)

    def More(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Returns true if there is a current item in the iteration.

        """
        return _TDocStd.TDocStd_XLinkIterator_More(self, *args)

    def Next(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Move to the next item; raises if there is no more item.

        """
        return _TDocStd.TDocStd_XLinkIterator_Next(self, *args)

    def Value(self, *args):
        r"""
        Return
        -------
        TDocStd_XLinkPtr

        Description
        -----------
        Returns the current item; a null handle if there is none.

        """
        return _TDocStd.TDocStd_XLinkIterator_Value(self, *args)

    __repr__ = _dumps_object

    __swig_destroy__ = _TDocStd.delete_TDocStd_XLinkIterator

# Register TDocStd_XLinkIterator in _TDocStd:
_TDocStd.TDocStd_XLinkIterator_swigregister(TDocStd_XLinkIterator)
class TDocStd_XLinkRoot(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

    def DumpToString(self):
        r"""DumpToString(TDocStd_XLinkRoot self) -> std::string"""
        return _TDocStd.TDocStd_XLinkRoot_DumpToString(self)

    @staticmethod
    def GetID(*args):
        r"""
        Return
        -------
        Standard_GUID

        Description
        -----------
        Returns the id: 2a96b61d-ec8b-11d0-bee7-080009dc3333.

        """
        return _TDocStd.TDocStd_XLinkRoot_GetID(*args)

    @staticmethod
    def Insert(*args):
        r"""

        Parameters
        ----------
        anXLinkPtr: TDocStd_XLinkPtr

        Return
        -------
        None

        Description
        -----------
        Inserts <anxlinkptr> at the beginning of the xlink chain.

        """
        return _TDocStd.TDocStd_XLinkRoot_Insert(*args)

    @staticmethod
    def Remove(*args):
        r"""

        Parameters
        ----------
        anXLinkPtr: TDocStd_XLinkPtr

        Return
        -------
        None

        Description
        -----------
        Removes <anxlinkptr> from the xlink chain, if it exists.

        """
        return _TDocStd.TDocStd_XLinkRoot_Remove(*args)

    @staticmethod
    def Set(*args):
        r"""

        Parameters
        ----------
        aDF: TDF_Data

        Return
        -------
        opencascade::handle<TDocStd_XLinkRoot>

        Description
        -----------
        Sets an empty xlinkroot to root or gets the existing one. only one attribute per tdf_data.

        """
        return _TDocStd.TDocStd_XLinkRoot_Set(*args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _TDocStd.delete_TDocStd_XLinkRoot

# Register TDocStd_XLinkRoot in _TDocStd:
_TDocStd.TDocStd_XLinkRoot_swigregister(TDocStd_XLinkRoot)
class TDocStd_XLinkTool(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        _TDocStd.TDocStd_XLinkTool_swiginit(self, _TDocStd.new_TDocStd_XLinkTool(*args))

    def Copy(self, *args):
        r"""

        Parameters
        ----------
        intarget: TDF_Label
        fromsource: TDF_Label

        Return
        -------
        None

        Description
        -----------
        Copy the content of <fromsource> under <intarget>. no link is registered. no check is done. example opencascade::handle<tdocstd_document> doc, xdoc; tdf_label l, xl; tdocstd_xlinktool xlinktool; xlinktool.copy(l,xl); exceptions: standard_domainerror if the contents of fromsource are not entirely in the scope of this label, in other words, are not self-contained. !!! ==> warning: if the document manages shapes use the next way: tdocstd_xlinktool xlinktool; xlinktool.copy(l,xl); toptools_datamapofshapeshape m; tnaming::changeshapes(target,m);.

        """
        return _TDocStd.TDocStd_XLinkTool_Copy(self, *args)

    def CopyWithLink(self, *args):
        r"""

        Parameters
        ----------
        intarget: TDF_Label
        fromsource: TDF_Label

        Return
        -------
        None

        Description
        -----------
        Copies the content of the label <fromsource> to the label <intarget>. the link is registered with an xlink attribute by <intarget> label. if the content of <fromsource> is not self-contained, and/or <intarget> has already an xlink attribute, an exception is raised.

        """
        return _TDocStd.TDocStd_XLinkTool_CopyWithLink(self, *args)

    def DataSet(self, *args):
        r"""
        Return
        -------
        opencascade::handle<TDF_DataSet>

        Description
        -----------
        No available documentation.

        """
        return _TDocStd.TDocStd_XLinkTool_DataSet(self, *args)

    def IsDone(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        No available documentation.

        """
        return _TDocStd.TDocStd_XLinkTool_IsDone(self, *args)

    def RelocationTable(self, *args):
        r"""
        Return
        -------
        opencascade::handle<TDF_RelocationTable>

        Description
        -----------
        No available documentation.

        """
        return _TDocStd.TDocStd_XLinkTool_RelocationTable(self, *args)

    def UpdateLink(self, *args):
        r"""

        Parameters
        ----------
        L: TDF_Label

        Return
        -------
        None

        Description
        -----------
        Update the external reference set at <l>. example opencascade::handle<tdocstd_document> adoc; if (!ocaftest::getdocument(1,adoc)) return 1; opencascade::handle<tdatastd_reference> aref; tdocstd_xlinktool xlinktool; if (!ocaftest::find(adoc,2),tdatastd_reference::getid(),aref) return 1; xlinktool.updatelink(aref->label()); exceptions standard_domainerror if <l> has no xlink attribute.

        """
        return _TDocStd.TDocStd_XLinkTool_UpdateLink(self, *args)

    __repr__ = _dumps_object

    __swig_destroy__ = _TDocStd.delete_TDocStd_XLinkTool

# Register TDocStd_XLinkTool in _TDocStd:
_TDocStd.TDocStd_XLinkTool_swigregister(TDocStd_XLinkTool)



@deprecated
def tdocstd_IDList(*args):
	return tdocstd.IDList(*args)

@deprecated
def TDocStd_Document_CurrentStorageFormatVersion(*args):
	return TDocStd_Document.CurrentStorageFormatVersion(*args)

@deprecated
def TDocStd_Document_Get(*args):
	return TDocStd_Document.Get(*args)

@deprecated
def TDocStd_Modified_Add(*args):
	return TDocStd_Modified.Add(*args)

@deprecated
def TDocStd_Modified_Clear(*args):
	return TDocStd_Modified.Clear(*args)

@deprecated
def TDocStd_Modified_Contains(*args):
	return TDocStd_Modified.Contains(*args)

@deprecated
def TDocStd_Modified_Get(*args):
	return TDocStd_Modified.Get(*args)

@deprecated
def TDocStd_Modified_GetID(*args):
	return TDocStd_Modified.GetID(*args)

@deprecated
def TDocStd_Modified_IsEmpty(*args):
	return TDocStd_Modified.IsEmpty(*args)

@deprecated
def TDocStd_Modified_Remove(*args):
	return TDocStd_Modified.Remove(*args)

@deprecated
def TDocStd_Owner_GetDocument(*args):
	return TDocStd_Owner.GetDocument(*args)

@deprecated
def TDocStd_Owner_GetID(*args):
	return TDocStd_Owner.GetID(*args)

@deprecated
def TDocStd_Owner_SetDocument(*args):
	return TDocStd_Owner.SetDocument(*args)

@deprecated
def TDocStd_Owner_SetDocument(*args):
	return TDocStd_Owner.SetDocument(*args)

@deprecated
def TDocStd_XLink_GetID(*args):
	return TDocStd_XLink.GetID(*args)

@deprecated
def TDocStd_XLink_Set(*args):
	return TDocStd_XLink.Set(*args)

@deprecated
def TDocStd_XLinkRoot_GetID(*args):
	return TDocStd_XLinkRoot.GetID(*args)

@deprecated
def TDocStd_XLinkRoot_Insert(*args):
	return TDocStd_XLinkRoot.Insert(*args)

@deprecated
def TDocStd_XLinkRoot_Remove(*args):
	return TDocStd_XLinkRoot.Remove(*args)

@deprecated
def TDocStd_XLinkRoot_Set(*args):
	return TDocStd_XLinkRoot.Set(*args)



