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

"""
Resource module, see official documentation at
https://dev.opencascade.org/doc/occt-7.9.0/refman/html/package_resource.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 _Resource
else:
    import _Resource

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

# Register SwigPyIterator in _Resource:
_Resource.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 _Resource.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 = _Resource.ios_base_erase_event
    imbue_event = _Resource.ios_base_imbue_event
    copyfmt_event = _Resource.ios_base_copyfmt_event

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

# Register ios in _Resource:
_Resource.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):
        _Resource.ostream_swiginit(self, _Resource.new_ostream(__sb))
    __swig_destroy__ = _Resource.delete_ostream

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

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

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

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

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

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

# Register ostream in _Resource:
_Resource.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):
        _Resource.istream_swiginit(self, _Resource.new_istream(__sb))
    __swig_destroy__ = _Resource.delete_istream

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

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

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

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

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

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

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

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

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

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

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

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

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

# Register istream in _Resource:
_Resource.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):
        _Resource.iostream_swiginit(self, _Resource.new_iostream(__sb))
    __swig_destroy__ = _Resource.delete_iostream

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

endl_cb_ptr = _Resource.endl_cb_ptr
endl = _Resource.endl
ends_cb_ptr = _Resource.ends_cb_ptr
ends = _Resource.ends
flush_cb_ptr = _Resource.flush_cb_ptr
flush = _Resource.flush
import OCC.Core.Standard
import OCC.Core.NCollection
import OCC.Core.TCollection

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

Resource_FormatType_SJIS = _Resource.Resource_FormatType_SJIS
Resource_FormatType_EUC = _Resource.Resource_FormatType_EUC
Resource_FormatType_NoConversion = _Resource.Resource_FormatType_NoConversion
Resource_FormatType_GB = _Resource.Resource_FormatType_GB
Resource_FormatType_UTF8 = _Resource.Resource_FormatType_UTF8
Resource_FormatType_SystemLocale = _Resource.Resource_FormatType_SystemLocale
Resource_FormatType_CP1250 = _Resource.Resource_FormatType_CP1250
Resource_FormatType_CP1251 = _Resource.Resource_FormatType_CP1251
Resource_FormatType_CP1252 = _Resource.Resource_FormatType_CP1252
Resource_FormatType_CP1253 = _Resource.Resource_FormatType_CP1253
Resource_FormatType_CP1254 = _Resource.Resource_FormatType_CP1254
Resource_FormatType_CP1255 = _Resource.Resource_FormatType_CP1255
Resource_FormatType_CP1256 = _Resource.Resource_FormatType_CP1256
Resource_FormatType_CP1257 = _Resource.Resource_FormatType_CP1257
Resource_FormatType_CP1258 = _Resource.Resource_FormatType_CP1258
Resource_FormatType_iso8859_1 = _Resource.Resource_FormatType_iso8859_1
Resource_FormatType_iso8859_2 = _Resource.Resource_FormatType_iso8859_2
Resource_FormatType_iso8859_3 = _Resource.Resource_FormatType_iso8859_3
Resource_FormatType_iso8859_4 = _Resource.Resource_FormatType_iso8859_4
Resource_FormatType_iso8859_5 = _Resource.Resource_FormatType_iso8859_5
Resource_FormatType_iso8859_6 = _Resource.Resource_FormatType_iso8859_6
Resource_FormatType_iso8859_7 = _Resource.Resource_FormatType_iso8859_7
Resource_FormatType_iso8859_8 = _Resource.Resource_FormatType_iso8859_8
Resource_FormatType_iso8859_9 = _Resource.Resource_FormatType_iso8859_9
Resource_FormatType_CP850 = _Resource.Resource_FormatType_CP850
Resource_FormatType_GBK = _Resource.Resource_FormatType_GBK
Resource_FormatType_Big5 = _Resource.Resource_FormatType_Big5
Resource_FormatType_ANSI = _Resource.Resource_FormatType_ANSI
Resource_SJIS = _Resource.Resource_SJIS
Resource_EUC = _Resource.Resource_EUC
Resource_ANSI = _Resource.Resource_ANSI
Resource_GB = _Resource.Resource_GB


class Resource_FormatType(IntEnum):
	Resource_FormatType_SJIS = 0
	Resource_FormatType_EUC = 1
	Resource_FormatType_NoConversion = 2
	Resource_FormatType_GB = 3
	Resource_FormatType_UTF8 = 4
	Resource_FormatType_SystemLocale = 5
	Resource_FormatType_CP1250 = 6
	Resource_FormatType_CP1251 = 7
	Resource_FormatType_CP1252 = 8
	Resource_FormatType_CP1253 = 9
	Resource_FormatType_CP1254 = 10
	Resource_FormatType_CP1255 = 11
	Resource_FormatType_CP1256 = 12
	Resource_FormatType_CP1257 = 13
	Resource_FormatType_CP1258 = 14
	Resource_FormatType_iso8859_1 = 15
	Resource_FormatType_iso8859_2 = 16
	Resource_FormatType_iso8859_3 = 17
	Resource_FormatType_iso8859_4 = 18
	Resource_FormatType_iso8859_5 = 19
	Resource_FormatType_iso8859_6 = 20
	Resource_FormatType_iso8859_7 = 21
	Resource_FormatType_iso8859_8 = 22
	Resource_FormatType_iso8859_9 = 23
	Resource_FormatType_CP850 = 24
	Resource_FormatType_GBK = 25
	Resource_FormatType_Big5 = 26
	Resource_FormatType_ANSI = Resource_FormatType_NoConversion
	Resource_SJIS = Resource_FormatType_SJIS
	Resource_EUC = Resource_FormatType_EUC
	Resource_ANSI = Resource_FormatType_ANSI
	Resource_GB = Resource_FormatType_GB
Resource_FormatType_SJIS = Resource_FormatType.Resource_FormatType_SJIS
Resource_FormatType_EUC = Resource_FormatType.Resource_FormatType_EUC
Resource_FormatType_NoConversion = Resource_FormatType.Resource_FormatType_NoConversion
Resource_FormatType_GB = Resource_FormatType.Resource_FormatType_GB
Resource_FormatType_UTF8 = Resource_FormatType.Resource_FormatType_UTF8
Resource_FormatType_SystemLocale = Resource_FormatType.Resource_FormatType_SystemLocale
Resource_FormatType_CP1250 = Resource_FormatType.Resource_FormatType_CP1250
Resource_FormatType_CP1251 = Resource_FormatType.Resource_FormatType_CP1251
Resource_FormatType_CP1252 = Resource_FormatType.Resource_FormatType_CP1252
Resource_FormatType_CP1253 = Resource_FormatType.Resource_FormatType_CP1253
Resource_FormatType_CP1254 = Resource_FormatType.Resource_FormatType_CP1254
Resource_FormatType_CP1255 = Resource_FormatType.Resource_FormatType_CP1255
Resource_FormatType_CP1256 = Resource_FormatType.Resource_FormatType_CP1256
Resource_FormatType_CP1257 = Resource_FormatType.Resource_FormatType_CP1257
Resource_FormatType_CP1258 = Resource_FormatType.Resource_FormatType_CP1258
Resource_FormatType_iso8859_1 = Resource_FormatType.Resource_FormatType_iso8859_1
Resource_FormatType_iso8859_2 = Resource_FormatType.Resource_FormatType_iso8859_2
Resource_FormatType_iso8859_3 = Resource_FormatType.Resource_FormatType_iso8859_3
Resource_FormatType_iso8859_4 = Resource_FormatType.Resource_FormatType_iso8859_4
Resource_FormatType_iso8859_5 = Resource_FormatType.Resource_FormatType_iso8859_5
Resource_FormatType_iso8859_6 = Resource_FormatType.Resource_FormatType_iso8859_6
Resource_FormatType_iso8859_7 = Resource_FormatType.Resource_FormatType_iso8859_7
Resource_FormatType_iso8859_8 = Resource_FormatType.Resource_FormatType_iso8859_8
Resource_FormatType_iso8859_9 = Resource_FormatType.Resource_FormatType_iso8859_9
Resource_FormatType_CP850 = Resource_FormatType.Resource_FormatType_CP850
Resource_FormatType_GBK = Resource_FormatType.Resource_FormatType_GBK
Resource_FormatType_Big5 = Resource_FormatType.Resource_FormatType_Big5
Resource_FormatType_ANSI = Resource_FormatType.Resource_FormatType_ANSI
Resource_SJIS = Resource_FormatType.Resource_SJIS
Resource_EUC = Resource_FormatType.Resource_EUC
Resource_ANSI = Resource_FormatType.Resource_ANSI
Resource_GB = Resource_FormatType.Resource_GB


def Handle_Resource_Manager_Create():
    return _Resource.Handle_Resource_Manager_Create()

def Handle_Resource_Manager_DownCast(t):
    return _Resource.Handle_Resource_Manager_DownCast(t)

def Handle_Resource_Manager_IsNull(t):
    return _Resource.Handle_Resource_Manager_IsNull(t)
class Resource_DataMapOfAsciiStringAsciiString(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 _Resource.Resource_DataMapOfAsciiStringAsciiString_begin(self)

    def end(self):
        return _Resource.Resource_DataMapOfAsciiStringAsciiString_end(self)

    def cbegin(self):
        return _Resource.Resource_DataMapOfAsciiStringAsciiString_cbegin(self)

    def cend(self):
        return _Resource.Resource_DataMapOfAsciiStringAsciiString_cend(self)

    def __init__(self, *args):
        _Resource.Resource_DataMapOfAsciiStringAsciiString_swiginit(self, _Resource.new_Resource_DataMapOfAsciiStringAsciiString(*args))

    def Exchange(self, theOther):
        return _Resource.Resource_DataMapOfAsciiStringAsciiString_Exchange(self, theOther)

    def Assign(self, theOther):
        return _Resource.Resource_DataMapOfAsciiStringAsciiString_Assign(self, theOther)

    def Set(self, *args):
        return _Resource.Resource_DataMapOfAsciiStringAsciiString_Set(self, *args)

    def ReSize(self, N):
        return _Resource.Resource_DataMapOfAsciiStringAsciiString_ReSize(self, N)

    def Bind(self, *args):
        return _Resource.Resource_DataMapOfAsciiStringAsciiString_Bind(self, *args)

    def Bound(self, *args):
        return _Resource.Resource_DataMapOfAsciiStringAsciiString_Bound(self, *args)

    def IsBound(self, theKey):
        return _Resource.Resource_DataMapOfAsciiStringAsciiString_IsBound(self, theKey)

    def UnBind(self, theKey):
        return _Resource.Resource_DataMapOfAsciiStringAsciiString_UnBind(self, theKey)

    def Seek(self, theKey):
        return _Resource.Resource_DataMapOfAsciiStringAsciiString_Seek(self, theKey)

    def Find(self, *args):
        return _Resource.Resource_DataMapOfAsciiStringAsciiString_Find(self, *args)

    def ChangeSeek(self, theKey):
        return _Resource.Resource_DataMapOfAsciiStringAsciiString_ChangeSeek(self, theKey)

    def ChangeFind(self, theKey):
        return _Resource.Resource_DataMapOfAsciiStringAsciiString_ChangeFind(self, theKey)

    def __call__(self, *args):
        return _Resource.Resource_DataMapOfAsciiStringAsciiString___call__(self, *args)

    def Clear(self, *args):
        return _Resource.Resource_DataMapOfAsciiStringAsciiString_Clear(self, *args)
    __swig_destroy__ = _Resource.delete_Resource_DataMapOfAsciiStringAsciiString

    def Size(self):
        return _Resource.Resource_DataMapOfAsciiStringAsciiString_Size(self)

# Register Resource_DataMapOfAsciiStringAsciiString in _Resource:
_Resource.Resource_DataMapOfAsciiStringAsciiString_swigregister(Resource_DataMapOfAsciiStringAsciiString)
class Resource_DataMapOfAsciiStringExtendedString(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 _Resource.Resource_DataMapOfAsciiStringExtendedString_begin(self)

    def end(self):
        return _Resource.Resource_DataMapOfAsciiStringExtendedString_end(self)

    def cbegin(self):
        return _Resource.Resource_DataMapOfAsciiStringExtendedString_cbegin(self)

    def cend(self):
        return _Resource.Resource_DataMapOfAsciiStringExtendedString_cend(self)

    def __init__(self, *args):
        _Resource.Resource_DataMapOfAsciiStringExtendedString_swiginit(self, _Resource.new_Resource_DataMapOfAsciiStringExtendedString(*args))

    def Exchange(self, theOther):
        return _Resource.Resource_DataMapOfAsciiStringExtendedString_Exchange(self, theOther)

    def Assign(self, theOther):
        return _Resource.Resource_DataMapOfAsciiStringExtendedString_Assign(self, theOther)

    def Set(self, *args):
        return _Resource.Resource_DataMapOfAsciiStringExtendedString_Set(self, *args)

    def ReSize(self, N):
        return _Resource.Resource_DataMapOfAsciiStringExtendedString_ReSize(self, N)

    def Bind(self, *args):
        return _Resource.Resource_DataMapOfAsciiStringExtendedString_Bind(self, *args)

    def Bound(self, *args):
        return _Resource.Resource_DataMapOfAsciiStringExtendedString_Bound(self, *args)

    def IsBound(self, theKey):
        return _Resource.Resource_DataMapOfAsciiStringExtendedString_IsBound(self, theKey)

    def UnBind(self, theKey):
        return _Resource.Resource_DataMapOfAsciiStringExtendedString_UnBind(self, theKey)

    def Seek(self, theKey):
        return _Resource.Resource_DataMapOfAsciiStringExtendedString_Seek(self, theKey)

    def Find(self, *args):
        return _Resource.Resource_DataMapOfAsciiStringExtendedString_Find(self, *args)

    def ChangeSeek(self, theKey):
        return _Resource.Resource_DataMapOfAsciiStringExtendedString_ChangeSeek(self, theKey)

    def ChangeFind(self, theKey):
        return _Resource.Resource_DataMapOfAsciiStringExtendedString_ChangeFind(self, theKey)

    def __call__(self, *args):
        return _Resource.Resource_DataMapOfAsciiStringExtendedString___call__(self, *args)

    def Clear(self, *args):
        return _Resource.Resource_DataMapOfAsciiStringExtendedString_Clear(self, *args)
    __swig_destroy__ = _Resource.delete_Resource_DataMapOfAsciiStringExtendedString

    def Size(self):
        return _Resource.Resource_DataMapOfAsciiStringExtendedString_Size(self)

# Register Resource_DataMapOfAsciiStringExtendedString in _Resource:
_Resource.Resource_DataMapOfAsciiStringExtendedString_swigregister(Resource_DataMapOfAsciiStringExtendedString)
class Resource_LexicalCompare(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.

        """
        _Resource.Resource_LexicalCompare_swiginit(self, _Resource.new_Resource_LexicalCompare(*args))

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

        Parameters
        ----------
        Left: str
        Right: str

        Return
        -------
        bool

        Description
        -----------
        Returns True if <Left> is lower than <Right>.

        """
        return _Resource.Resource_LexicalCompare_IsLower(self, *args)

    __repr__ = _dumps_object

    __swig_destroy__ = _Resource.delete_Resource_LexicalCompare

# Register Resource_LexicalCompare in _Resource:
_Resource.Resource_LexicalCompare_swigregister(Resource_LexicalCompare)
class Resource_Manager(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"""

        Parameters
        ----------
        aName: str
        Verbose: bool (optional, default to Standard_False)

        Return
        -------
        None

        Description
        -----------
        Create a Resource manager. Attempts to find the two following files: $CSF_`aName`Defaults/aName $CSF_`aName`UserDefaults/aName and load them respectively into a reference and a user resource structure. //! If CSF_ResourceVerbose defined, seeked files will be printed. //! FILE SYNTAX The syntax of a resource file is a sequence of resource lines terminated by newline characters or end of file. The syntax of an individual resource line is:.
        Return
        -------
        None

        Description
        -----------
        Create an empty Resource manager.

        Parameters
        ----------
        theName: str
        theDefaultsDirectory: str
        theUserDefaultsDirectory: str
        theIsVerbose: bool (optional, default to Standard_False)

        Return
        -------
        None

        Description
        -----------
        Create a Resource manager. 
        Input parameter: theName description file name 
        Input parameter: theDefaultsDirectory default folder for looking description file 
        Input parameter: theUserDefaultsDirectory user folder for looking description file 
        Input parameter: theIsVerbose print verbose messages.

        """
        _Resource.Resource_Manager_swiginit(self, _Resource.new_Resource_Manager(*args))

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

        Parameters
        ----------
        aResourceName: str

        Return
        -------
        Standard_ExtString

        Description
        -----------
        Gets the value of an ExtString resource according to its instance and its type.

        """
        return _Resource.Resource_Manager_ExtValue(self, *args)

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

        Parameters
        ----------
        aResource: str

        Return
        -------
        bool

        Description
        -----------
        returns True if the Resource does exist.

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

        Return
        -------
        bool

        Description
        -----------
        returns True if the Resource does exist.

        """
        return _Resource.Resource_Manager_Find(self, *args)

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

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

        Return
        -------
        Resource_DataMapOfAsciiStringAsciiString

        Description
        -----------
        Returns internal Ref or User map with parameters.

        """
        return _Resource.Resource_Manager_GetMap(self, *args)

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

        Parameters
        ----------
        aPath: str
        aName: str
        isUserDefaults: bool

        Return
        -------
        None

        Description
        -----------
        Gets the resource file full path by its name. If corresponding environment variable is not set or file doesn't exist returns empty string.

        """
        return _Resource.Resource_Manager_GetResourcePath(*args)

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

        Parameters
        ----------
        aResourceName: str

        Return
        -------
        int

        Description
        -----------
        Gets the value of an integer resource according to its instance and its type.

        """
        return _Resource.Resource_Manager_Integer(self, *args)

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

        Description
        -----------
        Returns true if Resource have been found.

        """
        return _Resource.Resource_Manager_IsInitialized(self, *args)

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

        Parameters
        ----------
        aResourceName: str

        Return
        -------
        float

        Description
        -----------
        Gets the value of a real resource according to its instance and its type.

        """
        return _Resource.Resource_Manager_Real(self, *args)

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

        Description
        -----------
        Save the user resource structure in the specified file. Creates the file if it does not exist.

        """
        return _Resource.Resource_Manager_Save(self, *args)

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

        Parameters
        ----------
        aResourceName: str
        aValue: int

        Return
        -------
        None

        Description
        -----------
        Sets the new value of an integer resource. If the resource does not exist, it is created.

        Parameters
        ----------
        aResourceName: str
        aValue: float

        Return
        -------
        None

        Description
        -----------
        Sets the new value of a real resource. If the resource does not exist, it is created.

        Parameters
        ----------
        aResourceName: str
        aValue: str

        Return
        -------
        None

        Description
        -----------
        Sets the new value of an CString resource. If the resource does not exist, it is created.

        Parameters
        ----------
        aResourceName: str
        aValue: Standard_ExtString

        Return
        -------
        None

        Description
        -----------
        Sets the new value of an ExtString resource. If the resource does not exist, it is created.

        """
        return _Resource.Resource_Manager_SetResource(self, *args)

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

        Parameters
        ----------
        aResourceName: str

        Return
        -------
        str

        Description
        -----------
        Gets the value of a CString resource according to its instance and its type.

        """
        return _Resource.Resource_Manager_Value(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _Resource.delete_Resource_Manager

# Register Resource_Manager in _Resource:
_Resource.Resource_Manager_swigregister(Resource_Manager)
class Resource_Unicode(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

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

        Parameters
        ----------
        fromstr: str
        tostr: str

        Return
        -------
        bool

        Description
        -----------
        Converts non-ASCII CString <fromstr> in Big5 format to Unicode ExtendedString <tostr>.

        """
        return _Resource.Resource_Unicode_ConvertBig5ToUnicode(*args)

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

        Parameters
        ----------
        fromstr: str
        tostr: str

        Return
        -------
        None

        Description
        -----------
        Converts non-ASCII CString <fromstr> in EUC format to Unicode ExtendedString <tostr>.

        """
        return _Resource.Resource_Unicode_ConvertEUCToUnicode(*args)

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

        Parameters
        ----------
        theFromStr: str
        theToStr: str

        Return
        -------
        None

        Description
        -----------
        Converts the non-ASCII C string (as specified by GetFormat()) to the Unicode string of extended characters.

        Parameters
        ----------
        theFormat: Resource_FormatType
        theFromStr: str
        theToStr: str

        Return
        -------
        None

        Description
        -----------
        Converts the non-ASCII C string in specified format to the Unicode string of extended characters. 
        Input parameter: theFormat source encoding 
        Input parameter: theFromStr text to convert @param[out] theToStr destination string.

        """
        return _Resource.Resource_Unicode_ConvertFormatToUnicode(*args)

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

        Parameters
        ----------
        fromstr: str
        tostr: str

        Return
        -------
        bool

        Description
        -----------
        Converts non-ASCII CString <fromstr> in GBK format to Unicode ExtendedString <tostr>.

        """
        return _Resource.Resource_Unicode_ConvertGBKToUnicode(*args)

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

        Parameters
        ----------
        fromstr: str
        tostr: str

        Return
        -------
        None

        Description
        -----------
        Converts non-ASCII CString <fromstr> in GB format to Unicode ExtendedString <tostr>.

        """
        return _Resource.Resource_Unicode_ConvertGBToUnicode(*args)

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

        Parameters
        ----------
        fromstr: str
        tostr: str

        Return
        -------
        None

        Description
        -----------
        Converts non-ASCII CString <fromstr> in SJIS format to Unicode ExtendedString <tostr>.

        """
        return _Resource.Resource_Unicode_ConvertSJISToUnicode(*args)

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

        Parameters
        ----------
        fromstr: str
        tostr: Standard_PCharacter
        maxsize: int

        Return
        -------
        bool

        Description
        -----------
        Converts Unicode ExtendedString <fromstr> to non-ASCII CString <tostr> in ANSI format, limited to <maxsize> characters. To translate the whole <fromstr>, use more than twice the length of <fromstr>. Returns true if <maxsize> has not been reached before end of conversion.

        """
        return _Resource.Resource_Unicode_ConvertUnicodeToANSI(*args)

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

        Parameters
        ----------
        fromstr: str
        tostr: Standard_PCharacter
        maxsize: int

        Return
        -------
        bool

        Description
        -----------
        Converts Unicode ExtendedString <fromstr> to non-ASCII CString <tostr> in EUC format, limited to <maxsize> characters. To translate the whole <fromstr>, use more than twice the length of <fromstr>. Returns true if <maxsize> has not been reached before end of conversion.

        """
        return _Resource.Resource_Unicode_ConvertUnicodeToEUC(*args)

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

        Parameters
        ----------
        theFormat: Resource_FormatType
        theFromStr: str
        theToStr: Standard_PCharacter
        theMaxSize: int

        Return
        -------
        bool

        Description
        -----------
        Converts the Unicode string of extended characters to the non-ASCII string according to specified format. You need more than twice the length of the source string to complete the conversion. The function returns true if conversion is complete, i.e. the maximum number of characters is not reached before the end of conversion. 
        Input parameter: theFormat destination encoding 
        Input parameter: theFromStr text to convert @param[out] theToStr destination buffer 
        Input parameter: theMaxSize destination buffer length.

        Parameters
        ----------
        theFromStr: str
        theToStr: Standard_PCharacter
        theMaxSize: int

        Return
        -------
        bool

        Description
        -----------
        Converts the Unicode string of extended characters to the non-ASCII string according to the format returned by the function GetFormat. 
        Input parameter: theFromStr text to convert @param[out] theToStr destination buffer 
        Input parameter: theMaxSize destination buffer length.

        """
        return _Resource.Resource_Unicode_ConvertUnicodeToFormat(*args)

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

        Parameters
        ----------
        fromstr: str
        tostr: Standard_PCharacter
        maxsize: int

        Return
        -------
        bool

        Description
        -----------
        Converts Unicode ExtendedString <fromstr> to non-ASCII CString <tostr> in GB format, limited to <maxsize> characters. To translate the whole <fromstr>, use more than twice the length of <fromstr>. Returns true if <maxsize> has not been reached before end of conversion.

        """
        return _Resource.Resource_Unicode_ConvertUnicodeToGB(*args)

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

        Parameters
        ----------
        fromstr: str
        tostr: Standard_PCharacter
        maxsize: int

        Return
        -------
        bool

        Description
        -----------
        Converts Unicode ExtendedString <fromstr> to non-ASCII CString <tostr> in SJIS format, limited to <maxsize> characters. To translate the whole <fromstr>, use more than twice the length of <fromstr>. Returns true if <maxsize> has not been reached before end of conversion.

        """
        return _Resource.Resource_Unicode_ConvertUnicodeToSJIS(*args)

    @staticmethod
    def GetFormat(*args):
        r"""
        Return
        -------
        Resource_FormatType

        Description
        -----------
        Returns the current conversion format (either ANSI, EUC, GB or SJIS). The current converting format must be defined in advance with the SetFormat function.

        """
        return _Resource.Resource_Unicode_GetFormat(*args)

    @staticmethod
    def ReadFormat(*args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Reads converting format from resource 'FormatType' in Resource Manager 'CharSet'.

        """
        return _Resource.Resource_Unicode_ReadFormat(*args)

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

        Parameters
        ----------
        typecode: Resource_FormatType

        Return
        -------
        None

        Description
        -----------
        Defines the current conversion format as typecode. This conversion format will then be used by the functions ConvertFormatToUnicode and ConvertUnicodeToFormat to convert the strings.

        """
        return _Resource.Resource_Unicode_SetFormat(*args)

    __repr__ = _dumps_object


    def __init__(self):
        _Resource.Resource_Unicode_swiginit(self, _Resource.new_Resource_Unicode())
    __swig_destroy__ = _Resource.delete_Resource_Unicode

# Register Resource_Unicode in _Resource:
_Resource.Resource_Unicode_swigregister(Resource_Unicode)



@deprecated
def Resource_Manager_GetResourcePath(*args):
	return Resource_Manager.GetResourcePath(*args)

@deprecated
def Resource_Unicode_ConvertBig5ToUnicode(*args):
	return Resource_Unicode.ConvertBig5ToUnicode(*args)

@deprecated
def Resource_Unicode_ConvertEUCToUnicode(*args):
	return Resource_Unicode.ConvertEUCToUnicode(*args)

@deprecated
def Resource_Unicode_ConvertFormatToUnicode(*args):
	return Resource_Unicode.ConvertFormatToUnicode(*args)

@deprecated
def Resource_Unicode_ConvertFormatToUnicode(*args):
	return Resource_Unicode.ConvertFormatToUnicode(*args)

@deprecated
def Resource_Unicode_ConvertGBKToUnicode(*args):
	return Resource_Unicode.ConvertGBKToUnicode(*args)

@deprecated
def Resource_Unicode_ConvertGBToUnicode(*args):
	return Resource_Unicode.ConvertGBToUnicode(*args)

@deprecated
def Resource_Unicode_ConvertSJISToUnicode(*args):
	return Resource_Unicode.ConvertSJISToUnicode(*args)

@deprecated
def Resource_Unicode_ConvertUnicodeToANSI(*args):
	return Resource_Unicode.ConvertUnicodeToANSI(*args)

@deprecated
def Resource_Unicode_ConvertUnicodeToEUC(*args):
	return Resource_Unicode.ConvertUnicodeToEUC(*args)

@deprecated
def Resource_Unicode_ConvertUnicodeToFormat(*args):
	return Resource_Unicode.ConvertUnicodeToFormat(*args)

@deprecated
def Resource_Unicode_ConvertUnicodeToFormat(*args):
	return Resource_Unicode.ConvertUnicodeToFormat(*args)

@deprecated
def Resource_Unicode_ConvertUnicodeToGB(*args):
	return Resource_Unicode.ConvertUnicodeToGB(*args)

@deprecated
def Resource_Unicode_ConvertUnicodeToSJIS(*args):
	return Resource_Unicode.ConvertUnicodeToSJIS(*args)

@deprecated
def Resource_Unicode_GetFormat(*args):
	return Resource_Unicode.GetFormat(*args)

@deprecated
def Resource_Unicode_ReadFormat(*args):
	return Resource_Unicode.ReadFormat(*args)

@deprecated
def Resource_Unicode_SetFormat(*args):
	return Resource_Unicode.SetFormat(*args)



