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

"""
DE module, see official documentation at
https://dev.opencascade.org/doc/occt-7.9.0/refman/html/package_de.html
"""

from sys import version_info as _swig_python_version_info
# Import the low-level C/C++ module
if getattr(globals().get("__spec__"), "parent", None) or __package__ or "." in __name__:
    from . import _DE
else:
    import _DE

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__ = _DE.delete_SwigPyIterator

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

# Register SwigPyIterator in _DE:
_DE.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 _DE.process_exception(error, method_name, class_name)

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

class ios_base(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
    erase_event = _DE.ios_base_erase_event
    imbue_event = _DE.ios_base_imbue_event
    copyfmt_event = _DE.ios_base_copyfmt_event

    def register_callback(self, __fn, __index):
        return _DE.ios_base_register_callback(self, __fn, __index)

    def flags(self, *args):
        return _DE.ios_base_flags(self, *args)

    def setf(self, *args):
        return _DE.ios_base_setf(self, *args)

    def unsetf(self, __mask):
        return _DE.ios_base_unsetf(self, __mask)

    def precision(self, *args):
        return _DE.ios_base_precision(self, *args)

    def width(self, *args):
        return _DE.ios_base_width(self, *args)

    @staticmethod
    def sync_with_stdio(__sync=True):
        return _DE.ios_base_sync_with_stdio(__sync)

    def imbue(self, __loc):
        return _DE.ios_base_imbue(self, __loc)

    def getloc(self):
        return _DE.ios_base_getloc(self)

    @staticmethod
    def xalloc():
        return _DE.ios_base_xalloc()

    def iword(self, __ix):
        return _DE.ios_base_iword(self, __ix)

    def pword(self, __ix):
        return _DE.ios_base_pword(self, __ix)
    __swig_destroy__ = _DE.delete_ios_base

# Register ios_base in _DE:
_DE.ios_base_swigregister(ios_base)
cvar = _DE.cvar
ios_base.boolalpha = _DE.cvar.ios_base_boolalpha
ios_base.dec = _DE.cvar.ios_base_dec
ios_base.fixed = _DE.cvar.ios_base_fixed
ios_base.hex = _DE.cvar.ios_base_hex
ios_base.internal = _DE.cvar.ios_base_internal
ios_base.left = _DE.cvar.ios_base_left
ios_base.oct = _DE.cvar.ios_base_oct
ios_base.right = _DE.cvar.ios_base_right
ios_base.scientific = _DE.cvar.ios_base_scientific
ios_base.showbase = _DE.cvar.ios_base_showbase
ios_base.showpoint = _DE.cvar.ios_base_showpoint
ios_base.showpos = _DE.cvar.ios_base_showpos
ios_base.skipws = _DE.cvar.ios_base_skipws
ios_base.unitbuf = _DE.cvar.ios_base_unitbuf
ios_base.uppercase = _DE.cvar.ios_base_uppercase
ios_base.adjustfield = _DE.cvar.ios_base_adjustfield
ios_base.basefield = _DE.cvar.ios_base_basefield
ios_base.floatfield = _DE.cvar.ios_base_floatfield
ios_base.badbit = _DE.cvar.ios_base_badbit
ios_base.eofbit = _DE.cvar.ios_base_eofbit
ios_base.failbit = _DE.cvar.ios_base_failbit
ios_base.goodbit = _DE.cvar.ios_base_goodbit
ios_base.app = _DE.cvar.ios_base_app
ios_base.ate = _DE.cvar.ios_base_ate
ios_base.binary = _DE.cvar.ios_base_binary
ios_base.ios_base_in = _DE.cvar.ios_base_ios_base_in
ios_base.out = _DE.cvar.ios_base_out
ios_base.trunc = _DE.cvar.ios_base_trunc
ios_base.beg = _DE.cvar.ios_base_beg
ios_base.cur = _DE.cvar.ios_base_cur
ios_base.end = _DE.cvar.ios_base_end

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

    def rdstate(self):
        return _DE.ios_rdstate(self)

    def clear(self, *args):
        return _DE.ios_clear(self, *args)

    def setstate(self, __state):
        return _DE.ios_setstate(self, __state)

    def good(self):
        return _DE.ios_good(self)

    def eof(self):
        return _DE.ios_eof(self)

    def fail(self):
        return _DE.ios_fail(self)

    def bad(self):
        return _DE.ios_bad(self)

    def exceptions(self, *args):
        return _DE.ios_exceptions(self, *args)

    def __init__(self, __sb):
        _DE.ios_swiginit(self, _DE.new_ios(__sb))
    __swig_destroy__ = _DE.delete_ios

    def tie(self, *args):
        return _DE.ios_tie(self, *args)

    def rdbuf(self, *args):
        return _DE.ios_rdbuf(self, *args)

    def copyfmt(self, __rhs):
        return _DE.ios_copyfmt(self, __rhs)

    def fill(self, *args):
        return _DE.ios_fill(self, *args)

    def imbue(self, __loc):
        return _DE.ios_imbue(self, __loc)

    def narrow(self, __c, __dfault):
        return _DE.ios_narrow(self, __c, __dfault)

    def widen(self, __c):
        return _DE.ios_widen(self, __c)

# Register ios in _DE:
_DE.ios_swigregister(ios)
class ostream(ios):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, __sb):
        _DE.ostream_swiginit(self, _DE.new_ostream(__sb))
    __swig_destroy__ = _DE.delete_ostream

    def __lshift__(self, *args):
        return _DE.ostream___lshift__(self, *args)

    def put(self, __c):
        return _DE.ostream_put(self, __c)

    def write(self, __s, __n):
        return _DE.ostream_write(self, __s, __n)

    def flush(self):
        return _DE.ostream_flush(self)

    def tellp(self):
        return _DE.ostream_tellp(self)

    def seekp(self, *args):
        return _DE.ostream_seekp(self, *args)

# Register ostream in _DE:
_DE.ostream_swigregister(ostream)
class istream(ios):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, __sb):
        _DE.istream_swiginit(self, _DE.new_istream(__sb))
    __swig_destroy__ = _DE.delete_istream

    def __rshift__(self, *args):
        return _DE.istream___rshift__(self, *args)

    def gcount(self):
        return _DE.istream_gcount(self)

    def get(self, *args):
        return _DE.istream_get(self, *args)

    def getline(self, *args):
        return _DE.istream_getline(self, *args)

    def ignore(self, *args):
        return _DE.istream_ignore(self, *args)

    def peek(self):
        return _DE.istream_peek(self)

    def read(self, __s, __n):
        return _DE.istream_read(self, __s, __n)

    def readsome(self, __s, __n):
        return _DE.istream_readsome(self, __s, __n)

    def putback(self, __c):
        return _DE.istream_putback(self, __c)

    def unget(self):
        return _DE.istream_unget(self)

    def sync(self):
        return _DE.istream_sync(self)

    def tellg(self):
        return _DE.istream_tellg(self)

    def seekg(self, *args):
        return _DE.istream_seekg(self, *args)

# Register istream in _DE:
_DE.istream_swigregister(istream)
class iostream(istream, ostream):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, __sb):
        _DE.iostream_swiginit(self, _DE.new_iostream(__sb))
    __swig_destroy__ = _DE.delete_iostream

# Register iostream in _DE:
_DE.iostream_swigregister(iostream)
cin = cvar.cin
cout = cvar.cout
cerr = cvar.cerr
clog = cvar.clog

endl_cb_ptr = _DE.endl_cb_ptr
endl = _DE.endl
ends_cb_ptr = _DE.ends_cb_ptr
ends = _DE.ends
flush_cb_ptr = _DE.flush_cb_ptr
flush = _DE.flush
import OCC.Core.Standard
import OCC.Core.NCollection
import OCC.Core.TCollection
import OCC.Core.TColStd
import OCC.Core.TDocStd
import OCC.Core.TDF
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
import OCC.Core.XSControl
import OCC.Core.IFSelect
import OCC.Core.Interface
import OCC.Core.MoniTool
import OCC.Core.TopoDS
import OCC.Core.TopAbs
import OCC.Core.TopLoc
import OCC.Core.gp
import OCC.Core.Transfer
import OCC.Core.TopTools
import OCC.Core.Geom
import OCC.Core.GeomAbs
import OCC.Core.TColgp
import OCC.Core.Geom2d

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




def Handle_DE_ConfigurationContext_Create():
    return _DE.Handle_DE_ConfigurationContext_Create()

def Handle_DE_ConfigurationContext_DownCast(t):
    return _DE.Handle_DE_ConfigurationContext_DownCast(t)

def Handle_DE_ConfigurationContext_IsNull(t):
    return _DE.Handle_DE_ConfigurationContext_IsNull(t)

def Handle_DE_ConfigurationNode_Create():
    return _DE.Handle_DE_ConfigurationNode_Create()

def Handle_DE_ConfigurationNode_DownCast(t):
    return _DE.Handle_DE_ConfigurationNode_DownCast(t)

def Handle_DE_ConfigurationNode_IsNull(t):
    return _DE.Handle_DE_ConfigurationNode_IsNull(t)

def Handle_DE_Provider_Create():
    return _DE.Handle_DE_Provider_Create()

def Handle_DE_Provider_DownCast(t):
    return _DE.Handle_DE_Provider_DownCast(t)

def Handle_DE_Provider_IsNull(t):
    return _DE.Handle_DE_Provider_IsNull(t)

def Handle_DE_Wrapper_Create():
    return _DE.Handle_DE_Wrapper_Create()

def Handle_DE_Wrapper_DownCast(t):
    return _DE.Handle_DE_Wrapper_DownCast(t)

def Handle_DE_Wrapper_IsNull(t):
    return _DE.Handle_DE_Wrapper_IsNull(t)
class DE_ConfigurationFormatMap(OCC.Core.NCollection.NCollection_BaseMap):
    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 _DE.DE_ConfigurationFormatMap_begin(self)

    def end(self):
        return _DE.DE_ConfigurationFormatMap_end(self)

    def cbegin(self):
        return _DE.DE_ConfigurationFormatMap_cbegin(self)

    def cend(self):
        return _DE.DE_ConfigurationFormatMap_cend(self)

    def __init__(self, *args):
        _DE.DE_ConfigurationFormatMap_swiginit(self, _DE.new_DE_ConfigurationFormatMap(*args))

    def Exchange(self, theOther):
        return _DE.DE_ConfigurationFormatMap_Exchange(self, theOther)

    def Assign(self, theOther):
        return _DE.DE_ConfigurationFormatMap_Assign(self, theOther)

    def Set(self, *args):
        return _DE.DE_ConfigurationFormatMap_Set(self, *args)

    def ReSize(self, N):
        return _DE.DE_ConfigurationFormatMap_ReSize(self, N)

    def Bind(self, *args):
        return _DE.DE_ConfigurationFormatMap_Bind(self, *args)

    def Bound(self, *args):
        return _DE.DE_ConfigurationFormatMap_Bound(self, *args)

    def IsBound(self, theKey):
        return _DE.DE_ConfigurationFormatMap_IsBound(self, theKey)

    def UnBind(self, theKey):
        return _DE.DE_ConfigurationFormatMap_UnBind(self, theKey)

    def Seek(self, theKey):
        return _DE.DE_ConfigurationFormatMap_Seek(self, theKey)

    def Find(self, *args):
        return _DE.DE_ConfigurationFormatMap_Find(self, *args)

    def ChangeSeek(self, theKey):
        return _DE.DE_ConfigurationFormatMap_ChangeSeek(self, theKey)

    def ChangeFind(self, theKey):
        return _DE.DE_ConfigurationFormatMap_ChangeFind(self, theKey)

    def __call__(self, *args):
        return _DE.DE_ConfigurationFormatMap___call__(self, *args)

    def Clear(self, *args):
        return _DE.DE_ConfigurationFormatMap_Clear(self, *args)
    __swig_destroy__ = _DE.delete_DE_ConfigurationFormatMap

    def Size(self):
        return _DE.DE_ConfigurationFormatMap_Size(self)

# Register DE_ConfigurationFormatMap in _DE:
_DE.DE_ConfigurationFormatMap_swigregister(DE_ConfigurationFormatMap)
class DE_ConfigurationVendorMap(OCC.Core.NCollection.NCollection_BaseMap):
    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 _DE.DE_ConfigurationVendorMap_begin(self)

    def end(self):
        return _DE.DE_ConfigurationVendorMap_end(self)

    def cbegin(self):
        return _DE.DE_ConfigurationVendorMap_cbegin(self)

    def cend(self):
        return _DE.DE_ConfigurationVendorMap_cend(self)

    def __init__(self, *args):
        _DE.DE_ConfigurationVendorMap_swiginit(self, _DE.new_DE_ConfigurationVendorMap(*args))

    def Exchange(self, theOther):
        return _DE.DE_ConfigurationVendorMap_Exchange(self, theOther)

    def Assign(self, theOther):
        return _DE.DE_ConfigurationVendorMap_Assign(self, theOther)

    def Set(self, *args):
        return _DE.DE_ConfigurationVendorMap_Set(self, *args)

    def ReSize(self, N):
        return _DE.DE_ConfigurationVendorMap_ReSize(self, N)

    def Add(self, *args):
        return _DE.DE_ConfigurationVendorMap_Add(self, *args)

    def Contains(self, theKey1):
        return _DE.DE_ConfigurationVendorMap_Contains(self, theKey1)

    def Substitute(self, theIndex, theKey1, theItem):
        return _DE.DE_ConfigurationVendorMap_Substitute(self, theIndex, theKey1, theItem)

    def Swap(self, theIndex1, theIndex2):
        return _DE.DE_ConfigurationVendorMap_Swap(self, theIndex1, theIndex2)

    def RemoveLast(self):
        return _DE.DE_ConfigurationVendorMap_RemoveLast(self)

    def RemoveFromIndex(self, theIndex):
        return _DE.DE_ConfigurationVendorMap_RemoveFromIndex(self, theIndex)

    def RemoveKey(self, theKey1):
        return _DE.DE_ConfigurationVendorMap_RemoveKey(self, theKey1)

    def FindKey(self, theIndex):
        return _DE.DE_ConfigurationVendorMap_FindKey(self, theIndex)

    def FindFromIndex(self, theIndex):
        return _DE.DE_ConfigurationVendorMap_FindFromIndex(self, theIndex)

    def ChangeFromIndex(self, theIndex):
        return _DE.DE_ConfigurationVendorMap_ChangeFromIndex(self, theIndex)

    def __call__(self, *args):
        return _DE.DE_ConfigurationVendorMap___call__(self, *args)

    def FindIndex(self, theKey1):
        return _DE.DE_ConfigurationVendorMap_FindIndex(self, theKey1)

    def ChangeFromKey(self, theKey1):
        return _DE.DE_ConfigurationVendorMap_ChangeFromKey(self, theKey1)

    def Seek(self, theKey1):
        return _DE.DE_ConfigurationVendorMap_Seek(self, theKey1)

    def ChangeSeek(self, theKey1):
        return _DE.DE_ConfigurationVendorMap_ChangeSeek(self, theKey1)

    def FindFromKey(self, *args):
        return _DE.DE_ConfigurationVendorMap_FindFromKey(self, *args)

    def Clear(self, *args):
        return _DE.DE_ConfigurationVendorMap_Clear(self, *args)
    __swig_destroy__ = _DE.delete_DE_ConfigurationVendorMap

    def Size(self):
        return _DE.DE_ConfigurationVendorMap_Size(self)

# Register DE_ConfigurationVendorMap in _DE:
_DE.DE_ConfigurationVendorMap_swigregister(DE_ConfigurationVendorMap)
class DE_ConfigurationContext(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
        -----------
        Creates an empty tool.

        """
        _DE.DE_ConfigurationContext_swiginit(self, _DE.new_DE_ConfigurationContext(*args))

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

        Parameters
        ----------
        theParam: str
        theDefValue: bool
        theScope: str (optional, default to )

        Return
        -------
        bool

        Description
        -----------
        Gets value of parameter as being of specific type 
        Input parameter: theParam complex parameter name 
        Input parameter: theDefValue value by default if param is not found or has wrong type 
        Input parameter: theScope base parameter name 
        Return: specific type value.

        """
        return _DE.DE_ConfigurationContext_BooleanVal(self, *args)

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

        Parameters
        ----------
        theParam: str
        theScope: str (optional, default to )

        Return
        -------
        theValue: bool

        Description
        -----------
        Gets value of parameter as being of specific type 
        Input parameter: theParam complex parameter name @param[out] theValue value to get by parameter 
        Input parameter: theScope base parameter name 
        Return: Standard_False if parameter is not defined or has a wrong type.

        """
        return _DE.DE_ConfigurationContext_GetBoolean(self, *args)

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

        Parameters
        ----------
        theParam: str
        theScope: str (optional, default to )

        Return
        -------
        theValue: int

        Description
        -----------
        Gets value of parameter as being of specific type 
        Input parameter: theParam complex parameter name @param[out] theValue value to get by parameter 
        Input parameter: theScope base parameter name 
        Return: Standard_False if parameter is not defined or has a wrong type.

        """
        return _DE.DE_ConfigurationContext_GetInteger(self, *args)

    def GetInternalMap(self, *args):
        r"""
        Return
        -------
        DE_ResourceMap

        Description
        -----------
        Gets internal resource map 
        Return: map with resource value.

        """
        return _DE.DE_ConfigurationContext_GetInternalMap(self, *args)

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

        Parameters
        ----------
        theParam: str
        theScope: str (optional, default to )

        Return
        -------
        theValue: float

        Description
        -----------
        Gets value of parameter as being of specific type 
        Input parameter: theParam complex parameter name @param[out] theValue value to get by parameter 
        Input parameter: theScope base parameter name 
        Return: Standard_False if parameter is not defined or has a wrong type.

        """
        return _DE.DE_ConfigurationContext_GetReal(self, *args)

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

        Parameters
        ----------
        theParam: str
        theValue: str
        theScope: str (optional, default to )

        Return
        -------
        bool

        Description
        -----------
        Gets value of parameter as being of specific type 
        Input parameter: theParam complex parameter name @param[out] theValue value to get by parameter 
        Input parameter: theScope base parameter name 
        Return: Standard_False if parameter is not defined or has a wrong type.

        """
        return _DE.DE_ConfigurationContext_GetString(self, *args)

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

        Parameters
        ----------
        theParam: str
        theValue: TColStd_ListOfAsciiString
        theScope: str (optional, default to )

        Return
        -------
        bool

        Description
        -----------
        Gets value of parameter as being of specific type 
        Input parameter: theParam complex parameter name @param[out] theValue value to get by parameter 
        Input parameter: theScope base parameter name 
        Return: Standard_False if parameter is not defined or has a wrong type.

        """
        return _DE.DE_ConfigurationContext_GetStringSeq(self, *args)

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

        Parameters
        ----------
        theParam: str
        theDefValue: int
        theScope: str (optional, default to )

        Return
        -------
        int

        Description
        -----------
        Gets value of parameter as being of specific type 
        Input parameter: theParam complex parameter name 
        Input parameter: theDefValue value by default if param is not found or has wrong type 
        Input parameter: theScope base parameter name 
        Return: specific type value.

        """
        return _DE.DE_ConfigurationContext_IntegerVal(self, *args)

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

        Parameters
        ----------
        theParam: str
        theScope: str (optional, default to )

        Return
        -------
        bool

        Description
        -----------
        Checks for existing the parameter name 
        Input parameter: theParam complex parameter name 
        Input parameter: theScope base parameter name 
        Return: Standard_True if parameter is defined in the resource file.

        """
        return _DE.DE_ConfigurationContext_IsParamSet(self, *args)

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

        Parameters
        ----------
        theConfiguration: str

        Return
        -------
        bool

        Description
        -----------
        Import the custom configuration Save all parameters with their values. 
        Input parameter: theConfiguration path to configuration file or string value 
        Return: true in case of success, false otherwise.

        """
        return _DE.DE_ConfigurationContext_Load(self, *args)

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

        Parameters
        ----------
        theFile: str

        Return
        -------
        bool

        Description
        -----------
        Import the resource file. Save all parameters with their values. 
        Input parameter: theFile path to the resource file 
        Return: true in case of success, false otherwise.

        """
        return _DE.DE_ConfigurationContext_LoadFile(self, *args)

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

        Parameters
        ----------
        theResource: str

        Return
        -------
        bool

        Description
        -----------
        Import the resource string. Save all parameters with their values. 
        Input parameter: theResource string with resource content 
        Return: true in case of success, false otherwise.

        """
        return _DE.DE_ConfigurationContext_LoadStr(self, *args)

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

        Parameters
        ----------
        theParam: str
        theDefValue: float
        theScope: str (optional, default to )

        Return
        -------
        float

        Description
        -----------
        Gets value of parameter as being of specific type 
        Input parameter: theParam complex parameter name 
        Input parameter: theDefValue value by default if param is not found or has wrong type 
        Input parameter: theScope base parameter name 
        Return: specific type value.

        """
        return _DE.DE_ConfigurationContext_RealVal(self, *args)

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

        Parameters
        ----------
        theParam: str
        theDefValue: str
        theScope: str (optional, default to )

        Return
        -------
        TCollection_AsciiString

        Description
        -----------
        Gets value of parameter as being of specific type 
        Input parameter: theParam complex parameter name 
        Input parameter: theDefValue value by default if param is not found or has wrong type 
        Input parameter: theScope base parameter name 
        Return: specific type value.

        """
        return _DE.DE_ConfigurationContext_StringVal(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _DE.delete_DE_ConfigurationContext

# Register DE_ConfigurationContext in _DE:
_DE.DE_ConfigurationContext_swigregister(DE_ConfigurationContext)
class DE_ConfigurationNode(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

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

        Description
        -----------
        Creates new provider for the own format 
        Return: new created provider.

        """
        return _DE.DE_ConfigurationNode_BuildProvider(self, *args)

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

        Parameters
        ----------
        theBuffer: NCollection_Buffer

        Return
        -------
        bool

        Description
        -----------
        Checks the file content to verify a format 
        Input parameter: theBuffer read stream buffer to check content 
        Return: Standard_True if file is supported by a current provider.

        """
        return _DE.DE_ConfigurationNode_CheckContent(self, *args)

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

        Parameters
        ----------
        theExtension: str

        Return
        -------
        bool

        Description
        -----------
        Checks the file extension to verify a format 
        Input parameter: theExtension input file extension 
        Return: Standard_True if file is supported by a current provider.

        """
        return _DE.DE_ConfigurationNode_CheckExtension(self, *args)

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

        Description
        -----------
        Copies values of all fields 
        Return: new object with the same field values.

        """
        return _DE.DE_ConfigurationNode_Copy(self, *args)

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

        Parameters
        ----------
        &: TColStd_ListOfAsciiString

        Return
        -------
        None

        Description
        -----------
        Custom function to activate commercial DE component. The input is special sequence of values that described in specific component documentation. Order is important. Each component can have own way of activation. //! The main goal - real-time loading plug-in activation. OpenSource components don't need to have activation process.

        """
        return _DE.DE_ConfigurationNode_CustomActivation(self, *args)

    def GetExtensions(self, *args):
        r"""
        Return
        -------
        TColStd_ListOfAsciiString

        Description
        -----------
        Gets list of supported file extensions 
        Return: list of extensions.

        """
        return _DE.DE_ConfigurationNode_GetExtensions(self, *args)

    def GetFormat(self, *args):
        r"""
        Return
        -------
        TCollection_AsciiString

        Description
        -----------
        Gets CAD format name of associated provider 
        Return: provider CAD format.

        """
        return _DE.DE_ConfigurationNode_GetFormat(self, *args)

    def GetVendor(self, *args):
        r"""
        Return
        -------
        TCollection_AsciiString

        Description
        -----------
        Gets provider's vendor name of associated provider 
        Return: provider's vendor name.

        """
        return _DE.DE_ConfigurationNode_GetVendor(self, *args)

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

        Description
        -----------
        Gets the provider loading status 
        Return: Standard_True if the load is correct.

        """
        return _DE.DE_ConfigurationNode_IsEnabled(self, *args)

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

        Description
        -----------
        Checks the export supporting 
        Return: Standard_True if export is support.

        """
        return _DE.DE_ConfigurationNode_IsExportSupported(self, *args)

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

        Description
        -----------
        Checks the import supporting 
        Return: Standard_True if import is support.

        """
        return _DE.DE_ConfigurationNode_IsImportSupported(self, *args)

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

        Parameters
        ----------
        theResourcePath: str (optional, default to )

        Return
        -------
        bool

        Description
        -----------
        Updates values according the resource file 
        Input parameter: theResourcePath file path to resource 
        Return: True if Load was successful.

        Parameters
        ----------
        theResource: DE_ConfigurationContext

        Return
        -------
        bool

        Description
        -----------
        Updates values according the resource 
        Input parameter: theResource input resource to use 
        Return: True if Load was successful.

        """
        return _DE.DE_ConfigurationNode_Load(self, *args)

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

        Parameters
        ----------
        theResourcePath: str

        Return
        -------
        bool

        Description
        -----------
        Writes configuration to the resource file 
        Input parameter: theResourcePath file path to resource 
        Return: True if Save was successful.
        Return
        -------
        TCollection_AsciiString

        Description
        -----------
        Writes configuration to the string 
        Return: result resource string.

        """
        return _DE.DE_ConfigurationNode_Save(self, *args)

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

        Parameters
        ----------
        theIsLoaded: bool

        Return
        -------
        None

        Description
        -----------
        Sets the provider loading status 
        Input parameter: theIsLoaded input load status.

        """
        return _DE.DE_ConfigurationNode_SetEnabled(self, *args)

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

        Parameters
        ----------
        theToImport: bool
        theToKeep: bool

        Return
        -------
        bool

        Description
        -----------
        Update loading status. Checking for the ability to read and write. 
        Input parameter: theToImport flag to updates for import. Standard_True-import, Standard_False-export 
        Input parameter: theToKeep flag to save update result 
        Return: Standard_True, if node can be used.

        """
        return _DE.DE_ConfigurationNode_UpdateLoad(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _DE.delete_DE_ConfigurationNode

# Register DE_ConfigurationNode in _DE:
_DE.DE_ConfigurationNode_swigregister(DE_ConfigurationNode)
class DE_Provider(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

    def GetFormat(self, *args):
        r"""
        Return
        -------
        TCollection_AsciiString

        Description
        -----------
        Gets CAD format name of associated provider 
        Return: provider CAD format.

        """
        return _DE.DE_Provider_GetFormat(self, *args)

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

        Description
        -----------
        Gets internal configuration node 
        Return: configuration node object.

        """
        return _DE.DE_Provider_GetNode(self, *args)

    def GetVendor(self, *args):
        r"""
        Return
        -------
        TCollection_AsciiString

        Description
        -----------
        Gets provider's vendor name of associated provider 
        Return: provider's vendor name.

        """
        return _DE.DE_Provider_GetVendor(self, *args)

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

        Parameters
        ----------
        thePath: str
        theDocument: TDocStd_Document
        theWS: XSControl_WorkSession
        theProgress: Message_ProgressRange (optional, default to Message_ProgressRange())

        Return
        -------
        bool

        Description
        -----------
        Reads a CAD file, according internal configuration 
        Input parameter: thePath path to the import CAD file @param[out] theDocument document to save result 
        Input parameter: theWS current work session 
        Input parameter: theProgress progress indicator 
        Return: True if Read was successful.

        Parameters
        ----------
        thePath: str
        theDocument: TDocStd_Document
        theProgress: Message_ProgressRange (optional, default to Message_ProgressRange())

        Return
        -------
        bool

        Description
        -----------
        Reads a CAD file, according internal configuration 
        Input parameter: thePath path to the import CAD file @param[out] theDocument document to save result 
        Input parameter: theProgress progress indicator 
        Return: True if Read was successful.

        Parameters
        ----------
        thePath: str
        theShape: TopoDS_Shape
        theWS: XSControl_WorkSession
        theProgress: Message_ProgressRange (optional, default to Message_ProgressRange())

        Return
        -------
        bool

        Description
        -----------
        Reads a CAD file, according internal configuration 
        Input parameter: thePath path to the import CAD file @param[out] theShape shape to save result 
        Input parameter: theWS current work session 
        Input parameter: theProgress progress indicator 
        Return: True if Read was successful.

        Parameters
        ----------
        thePath: str
        theShape: TopoDS_Shape
        theProgress: Message_ProgressRange (optional, default to Message_ProgressRange())

        Return
        -------
        bool

        Description
        -----------
        Reads a CAD file, according internal configuration 
        Input parameter: thePath path to the import CAD file @param[out] theShape shape to save result 
        Input parameter: theProgress progress indicator 
        Return: True if Read was successful.

        """
        return _DE.DE_Provider_Read(self, *args)

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

        Parameters
        ----------
        theNode: DE_ConfigurationNode

        Return
        -------
        None

        Description
        -----------
        Sets internal configuration node 
        Input parameter: theNode configuration node to set.

        """
        return _DE.DE_Provider_SetNode(self, *args)

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

        Parameters
        ----------
        thePath: str
        theDocument: TDocStd_Document
        theWS: XSControl_WorkSession
        theProgress: Message_ProgressRange (optional, default to Message_ProgressRange())

        Return
        -------
        bool

        Description
        -----------
        Writes a CAD file, according internal configuration 
        Input parameter: thePath path to the export CAD file @param[out] theDocument document to export 
        Input parameter: theWS current work session 
        Input parameter: theProgress progress indicator 
        Return: True if Write was successful.

        Parameters
        ----------
        thePath: str
        theDocument: TDocStd_Document
        theProgress: Message_ProgressRange (optional, default to Message_ProgressRange())

        Return
        -------
        bool

        Description
        -----------
        Writes a CAD file, according internal configuration 
        Input parameter: thePath path to the export CAD file @param[out] theDocument document to export 
        Input parameter: theProgress progress indicator 
        Return: True if Write was successful.

        Parameters
        ----------
        thePath: str
        theShape: TopoDS_Shape
        theWS: XSControl_WorkSession
        theProgress: Message_ProgressRange (optional, default to Message_ProgressRange())

        Return
        -------
        bool

        Description
        -----------
        Writes a CAD file, according internal configuration 
        Input parameter: thePath path to the export CAD file @param[out] theShape shape to export 
        Input parameter: theWS current work session 
        Input parameter: theProgress progress indicator 
        Return: True if Write was successful.

        Parameters
        ----------
        thePath: str
        theShape: TopoDS_Shape
        theProgress: Message_ProgressRange (optional, default to Message_ProgressRange())

        Return
        -------
        bool

        Description
        -----------
        Writes a CAD file, according internal configuration 
        Input parameter: thePath path to the export CAD file @param[out] theShape shape to export 
        Input parameter: theProgress progress indicator 
        Return: True if Write was successful.

        """
        return _DE.DE_Provider_Write(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _DE.delete_DE_Provider

# Register DE_Provider in _DE:
_DE.DE_Provider_swigregister(DE_Provider)
class DE_Wrapper(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
        -----------
        Initializes all field by default.

        Parameters
        ----------
        theWrapper: DE_Wrapper

        Return
        -------
        None

        Description
        -----------
        Copies values of all fields 
        Input parameter: theWrapper object to copy.

        """
        _DE.DE_Wrapper_swiginit(self, _DE.new_DE_Wrapper(*args))

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

        Parameters
        ----------
        theNode: DE_ConfigurationNode

        Return
        -------
        bool

        Description
        -----------
        Creates new node copy and adds to the map 
        Input parameter: theNode input node to copy 
        Return: Standard_True if binded.

        """
        return _DE.DE_Wrapper_Bind(self, *args)

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

        Parameters
        ----------
        theFormat: str
        theVendorPriority: TColStd_ListOfAsciiString
        theToDisable: bool (optional, default to Standard_False)

        Return
        -------
        None

        Description
        -----------
        Changes provider priority to one format if it exists 
        Input parameter: theFormat input node CAD format 
        Input parameter: theVendorPriority priority of work with vendors 
        Input parameter: theToDisable flag for disabling nodes that are not included in the priority.

        Parameters
        ----------
        theVendorPriority: TColStd_ListOfAsciiString
        theToDisable: bool (optional, default to Standard_False)

        Return
        -------
        None

        Description
        -----------
        Changes provider priority to all loaded nodes 
        Input parameter: theVendorPriority priority of work with vendors 
        Input parameter: theToDisable flag for disabling nodes that are not included in the priority.

        """
        return _DE.DE_Wrapper_ChangePriority(self, *args)

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

        Description
        -----------
        Copies values of all fields 
        Return: new object with the same field values.

        """
        return _DE.DE_Wrapper_Copy(self, *args)

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

        Parameters
        ----------
        theFormat: str
        theVendor: str
        theNode: DE_ConfigurationNode

        Return
        -------
        bool

        Description
        -----------
        Finds a node associated with input format and vendor 
        Input parameter: theFormat input node CAD format 
        Input parameter: theVendor input node vendor name @param[out] theNode output node 
        Return: Standard_True if the node is found.

        """
        return _DE.DE_Wrapper_Find(self, *args)

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

        Parameters
        ----------
        thePath: str
        theToImport: bool
        theProvider: DE_Provider

        Return
        -------
        bool

        Description
        -----------
        Find available provider from the configuration. If there are several providers, choose the one with the highest priority. 
        Input parameter: thePath path to the CAD file 
        Input parameter: theToImport flag to finds for import. Standard_True-import, Standard_False-export @param[out] theProvider created new provider 
        Return: Standard_True if provider found and created.

        """
        return _DE.DE_Wrapper_FindProvider(self, *args)

    @staticmethod
    def GlobalLoadMutex(*args):
        r"""
        Return
        -------
        Standard_Mutex

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

        """
        return _DE.DE_Wrapper_GlobalLoadMutex(*args)

    @staticmethod
    def GlobalWrapper(*args):
        r"""
        Return
        -------
        opencascade::handle<DE_Wrapper>

        Description
        -----------
        Gets global configuration singleton. If wrapper is not set, create it by default as base class object. 
        Return: point to global configuration.

        """
        return _DE.DE_Wrapper_GlobalWrapper(*args)

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

        Description
        -----------
        Gets flag that keeps changes on configuration nodes which are being updated, false by default.

        """
        return _DE.DE_Wrapper_KeepUpdates(self, *args)

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

        Parameters
        ----------
        theResource: str (optional, default to )
        theIsRecursive: bool (optional, default to Standard_True)

        Return
        -------
        bool

        Description
        -----------
        Updates values according the resource file 
        Input parameter: theResource file path to resource or resource value 
        Input parameter: theIsRecursive flag to update all nodes 
        Return: true if theResource has loaded correctly.

        Parameters
        ----------
        theResource: DE_ConfigurationContext
        theIsRecursive: bool (optional, default to Standard_True)

        Return
        -------
        bool

        Description
        -----------
        Updates values according the resource 
        Input parameter: theResource input resource to use 
        Input parameter: theIsRecursive flag to update all nodes 
        Return: true if theResource has loaded correctly.

        """
        return _DE.DE_Wrapper_Load(self, *args)

    def Nodes(self, *args):
        r"""
        Return
        -------
        DE_ConfigurationFormatMap

        Description
        -----------
        Gets format map, contains vendor map with nodes 
        Return: internal map of formats.

        """
        return _DE.DE_Wrapper_Nodes(self, *args)

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

        Parameters
        ----------
        thePath: str
        theDocument: TDocStd_Document
        theWS: XSControl_WorkSession
        theProgress: Message_ProgressRange (optional, default to Message_ProgressRange())

        Return
        -------
        bool

        Description
        -----------
        Reads a CAD file, according internal configuration 
        Input parameter: thePath path to the import CAD file @param[out] theDocument document to save result 
        Input parameter: theWS current work session 
        Input parameter: theProgress progress indicator 
        Return: true if Read operation has ended correctly.

        Parameters
        ----------
        thePath: str
        theDocument: TDocStd_Document
        theProgress: Message_ProgressRange (optional, default to Message_ProgressRange())

        Return
        -------
        bool

        Description
        -----------
        Reads a CAD file, according internal configuration 
        Input parameter: thePath path to the import CAD file @param[out] theDocument document to save result 
        Input parameter: theProgress progress indicator 
        Return: true if Read operation has ended correctly.

        Parameters
        ----------
        thePath: str
        theShape: TopoDS_Shape
        theWS: XSControl_WorkSession
        theProgress: Message_ProgressRange (optional, default to Message_ProgressRange())

        Return
        -------
        bool

        Description
        -----------
        Reads a CAD file, according internal configuration 
        Input parameter: thePath path to the import CAD file @param[out] theShape shape to save result 
        Input parameter: theWS current work session 
        Input parameter: theProgress progress indicator 
        Return: true if Read operation has ended correctly.

        Parameters
        ----------
        thePath: str
        theShape: TopoDS_Shape
        theProgress: Message_ProgressRange (optional, default to Message_ProgressRange())

        Return
        -------
        bool

        Description
        -----------
        Reads a CAD file, according internal configuration 
        Input parameter: thePath path to the import CAD file @param[out] theShape shape to save result 
        Input parameter: theProgress progress indicator 
        Return: true if Read operation has ended correctly.

        """
        return _DE.DE_Wrapper_Read(self, *args)

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

        Parameters
        ----------
        theResourcePath: str
        theIsRecursive: bool (optional, default to Standard_True)
        theFormats: TColStd_ListOfAsciiString (optional, default to TColStd_ListOfAsciiString())
        theVendors: TColStd_ListOfAsciiString (optional, default to TColStd_ListOfAsciiString())

        Return
        -------
        bool

        Description
        -----------
        Writes configuration to the resource file 
        Input parameter: theResourcePath file path to resource 
        Input parameter: theIsRecursive flag to write values of all nodes 
        Input parameter: theFormats list of formats to save. If empty, saves all available 
        Input parameter: theVendors list of providers to save. If empty, saves all available 
        Return: true if the Configuration has saved correctly.

        Parameters
        ----------
        theIsRecursive: bool (optional, default to Standard_True)
        theFormats: TColStd_ListOfAsciiString (optional, default to TColStd_ListOfAsciiString())
        theVendors: TColStd_ListOfAsciiString (optional, default to TColStd_ListOfAsciiString())

        Return
        -------
        TCollection_AsciiString

        Description
        -----------
        Writes configuration to the string 
        Input parameter: theIsRecursive flag to write values of all nodes 
        Input parameter: theFormats list of formats to save. If empty, saves all available 
        Input parameter: theVendors list of providers to save. If empty, saves all available 
        Return: result resource string.

        """
        return _DE.DE_Wrapper_Save(self, *args)

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

        Parameters
        ----------
        theWrapper: DE_Wrapper

        Return
        -------
        None

        Description
        -----------
        Sets global configuration singleton 
        Input parameter: theWrapper object to set as global configuration.

        """
        return _DE.DE_Wrapper_SetGlobalWrapper(*args)

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

        Parameters
        ----------
        theToKeepUpdates: bool

        Return
        -------
        None

        Description
        -----------
        Sets flag that keeps changes on configuration nodes which are being updated, false by default.

        """
        return _DE.DE_Wrapper_SetKeepUpdates(self, *args)

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

        Parameters
        ----------
        theNode: DE_ConfigurationNode

        Return
        -------
        bool

        Description
        -----------
        Removes node with the same type from the map 
        Input parameter: theNode input node to remove the same 
        Return: Standard_True if removed.

        """
        return _DE.DE_Wrapper_UnBind(self, *args)

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

        Parameters
        ----------
        theToForceUpdate: bool (optional, default to Standard_False)

        Return
        -------
        None

        Description
        -----------
        Updates all registered nodes, all changes will be saved in nodes 
        Input parameter: theToForceUpdate flag that turns on/of nodes, according to updated ability to import/export.

        """
        return _DE.DE_Wrapper_UpdateLoad(self, *args)

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

        Parameters
        ----------
        thePath: str
        theDocument: TDocStd_Document
        theWS: XSControl_WorkSession
        theProgress: Message_ProgressRange (optional, default to Message_ProgressRange())

        Return
        -------
        bool

        Description
        -----------
        Writes a CAD file, according internal configuration 
        Input parameter: thePath path to the export CAD file @param[out] theDocument document to export 
        Input parameter: theWS current work session 
        Input parameter: theProgress progress indicator 
        Return: true if Write operation has ended correctly.

        Parameters
        ----------
        thePath: str
        theDocument: TDocStd_Document
        theProgress: Message_ProgressRange (optional, default to Message_ProgressRange())

        Return
        -------
        bool

        Description
        -----------
        Writes a CAD file, according internal configuration 
        Input parameter: thePath path to the export CAD file @param[out] theDocument document to export 
        Input parameter: theProgress progress indicator 
        Return: true if Write operation has ended correctly.

        Parameters
        ----------
        thePath: str
        theShape: TopoDS_Shape
        theWS: XSControl_WorkSession
        theProgress: Message_ProgressRange (optional, default to Message_ProgressRange())

        Return
        -------
        bool

        Description
        -----------
        Writes a CAD file, according internal configuration 
        Input parameter: thePath path to the export CAD file @param[out] theShape shape to export 
        Input parameter: theWS current work session 
        Input parameter: theProgress progress indicator 
        Return: true if Write operation has ended correctly.

        Parameters
        ----------
        thePath: str
        theShape: TopoDS_Shape
        theProgress: Message_ProgressRange (optional, default to Message_ProgressRange())

        Return
        -------
        bool

        Description
        -----------
        Writes a CAD file, according internal configuration 
        Input parameter: thePath path to the export CAD file @param[out] theShape shape to export 
        Input parameter: theProgress progress indicator 
        Return: true if Write operation has ended correctly.

        """
        return _DE.DE_Wrapper_Write(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _DE.delete_DE_Wrapper

# Register DE_Wrapper in _DE:
_DE.DE_Wrapper_swigregister(DE_Wrapper)

@classnotwrapped
class DE_PluginHolder:
	pass

@classnotwrapped
class DE_ShapeFixConfigurationNode:
	pass

@classnotwrapped
class DE_ShapeFixParameters:
	pass





@deprecated
def DE_Wrapper_GlobalLoadMutex(*args):
	return DE_Wrapper.GlobalLoadMutex(*args)

@deprecated
def DE_Wrapper_GlobalWrapper(*args):
	return DE_Wrapper.GlobalWrapper(*args)

@deprecated
def DE_Wrapper_SetGlobalWrapper(*args):
	return DE_Wrapper.SetGlobalWrapper(*args)



