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

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

from sys import version_info as _swig_python_version_info
# Import the low-level C/C++ module
if __package__ or "." in __name__:
    from . import _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)

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

import OCC.Core.Standard
import OCC.Core.NCollection
import OCC.Core.TCollection

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(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def begin(self):
        return _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, theOther):
        return _Resource.Resource_DataMapOfAsciiStringAsciiString_Set(self, theOther)

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

    def Bind(self, theKey, theItem):
        return _Resource.Resource_DataMapOfAsciiStringAsciiString_Bind(self, theKey, theItem)

    def Bound(self, theKey, theItem):
        return _Resource.Resource_DataMapOfAsciiStringAsciiString_Bound(self, theKey, theItem)

    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(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def begin(self):
        return _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, theOther):
        return _Resource.Resource_DataMapOfAsciiStringExtendedString_Set(self, theOther)

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

    def Bind(self, theKey, theItem):
        return _Resource.Resource_DataMapOfAsciiStringExtendedString_Bind(self, theKey, theItem)

    def Bound(self, theKey, theItem):
        return _Resource.Resource_DataMapOfAsciiStringExtendedString_Bound(self, theKey, theItem)

    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. @param thename [in] description file name @param thedefaultsdirectory [in] default folder for looking description file @param theuserdefaultsdirectory [in] user folder for looking description file @param theisverbose [in] 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 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. @param theformat [in] source encoding @param thefromstr [in] text to convert @param thetostr [out] 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. @param theformat [in] destination encoding @param thefromstr [in] text to convert @param thetostr [out] destination buffer @param themaxsize [in] 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. @param thefromstr [in] text to convert @param thetostr [out] destination buffer @param themaxsize [in] 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)



