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

"""
BinMDataStd module, see official documentation at
https://www.opencascade.com/doc/occt-7.4.0/refman/html/package_binmdatastd.html
"""

from sys import version_info as _swig_python_version_info
if _swig_python_version_info < (2, 7, 0):
    raise RuntimeError("Python 2.7 or later required")

# Import the low-level C/C++ module
if __package__ or "." in __name__:
    from . import _BinMDataStd
else:
    import _BinMDataStd

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 == "thisown":
            self.this.own(value)
        elif name == "this":
            set(self, name, value)
        elif hasattr(self, name) and isinstance(getattr(type(self), name), property):
            set(self, name, value)
        else:
            raise AttributeError("You cannot add instance attributes to %s" % self)
    return set_instance_attr


def _swig_setattr_nondynamic_class_variable(set):
    def set_class_attr(cls, name, value):
        if hasattr(cls, name) and not isinstance(getattr(cls, name), property):
            set(cls, name, value)
        else:
            raise AttributeError("You cannot add class attributes to %s" % cls)
    return set_class_attr


def _swig_add_metaclass(metaclass):
    """Class decorator for adding a metaclass to a SWIG wrapped class - a slimmed down version of six.add_metaclass"""
    def wrapper(cls):
        return metaclass(cls.__name__, cls.__bases__, cls.__dict__.copy())
    return wrapper


class _SwigNonDynamicMeta(type):
    """Meta class to enforce nondynamic attributes (no new attributes) for a class"""
    __setattr__ = _swig_setattr_nondynamic_class_variable(type.__setattr__)


class SwigPyIterator(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr
    __swig_destroy__ = _BinMDataStd.delete_SwigPyIterator

    def value(self) -> "PyObject *":
        return _BinMDataStd.SwigPyIterator_value(self)

    def incr(self, n: "size_t"=1) -> "swig::SwigPyIterator *":
        return _BinMDataStd.SwigPyIterator_incr(self, n)

    def decr(self, n: "size_t"=1) -> "swig::SwigPyIterator *":
        return _BinMDataStd.SwigPyIterator_decr(self, n)

    def distance(self, x: "SwigPyIterator") -> "ptrdiff_t":
        return _BinMDataStd.SwigPyIterator_distance(self, x)

    def equal(self, x: "SwigPyIterator") -> "bool":
        return _BinMDataStd.SwigPyIterator_equal(self, x)

    def copy(self) -> "swig::SwigPyIterator *":
        return _BinMDataStd.SwigPyIterator_copy(self)

    def next(self) -> "PyObject *":
        return _BinMDataStd.SwigPyIterator_next(self)

    def __next__(self) -> "PyObject *":
        return _BinMDataStd.SwigPyIterator___next__(self)

    def previous(self) -> "PyObject *":
        return _BinMDataStd.SwigPyIterator_previous(self)

    def advance(self, n: "ptrdiff_t") -> "swig::SwigPyIterator *":
        return _BinMDataStd.SwigPyIterator_advance(self, n)

    def __eq__(self, x: "SwigPyIterator") -> "bool":
        return _BinMDataStd.SwigPyIterator___eq__(self, x)

    def __ne__(self, x: "SwigPyIterator") -> "bool":
        return _BinMDataStd.SwigPyIterator___ne__(self, x)

    def __iadd__(self, n: "ptrdiff_t") -> "swig::SwigPyIterator &":
        return _BinMDataStd.SwigPyIterator___iadd__(self, n)

    def __isub__(self, n: "ptrdiff_t") -> "swig::SwigPyIterator &":
        return _BinMDataStd.SwigPyIterator___isub__(self, n)

    def __add__(self, n: "ptrdiff_t") -> "swig::SwigPyIterator *":
        return _BinMDataStd.SwigPyIterator___add__(self, n)

    def __sub__(self, *args) -> "ptrdiff_t":
        return _BinMDataStd.SwigPyIterator___sub__(self, *args)
    def __iter__(self):
        return self

# Register SwigPyIterator in _BinMDataStd:
_BinMDataStd.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: "Standard_Failure", method_name: "std::string", class_name: "std::string") -> "void":
    return _BinMDataStd.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.BinMDF
import OCC.Core.TColStd
import OCC.Core.TCollection
import OCC.Core.Message
import OCC.Core.OSD
import OCC.Core.TDF
import OCC.Core.BinObjMgt
import OCC.Core.Storage

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




def Handle_BinMDataStd_AsciiStringDriver_Create() -> "opencascade::handle< BinMDataStd_AsciiStringDriver >":
    return _BinMDataStd.Handle_BinMDataStd_AsciiStringDriver_Create()

def Handle_BinMDataStd_AsciiStringDriver_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< BinMDataStd_AsciiStringDriver >":
    return _BinMDataStd.Handle_BinMDataStd_AsciiStringDriver_DownCast(t)

def Handle_BinMDataStd_AsciiStringDriver_IsNull(t: "opencascade::handle< BinMDataStd_AsciiStringDriver > const &") -> "bool":
    return _BinMDataStd.Handle_BinMDataStd_AsciiStringDriver_IsNull(t)

def Handle_BinMDataStd_BooleanArrayDriver_Create() -> "opencascade::handle< BinMDataStd_BooleanArrayDriver >":
    return _BinMDataStd.Handle_BinMDataStd_BooleanArrayDriver_Create()

def Handle_BinMDataStd_BooleanArrayDriver_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< BinMDataStd_BooleanArrayDriver >":
    return _BinMDataStd.Handle_BinMDataStd_BooleanArrayDriver_DownCast(t)

def Handle_BinMDataStd_BooleanArrayDriver_IsNull(t: "opencascade::handle< BinMDataStd_BooleanArrayDriver > const &") -> "bool":
    return _BinMDataStd.Handle_BinMDataStd_BooleanArrayDriver_IsNull(t)

def Handle_BinMDataStd_BooleanListDriver_Create() -> "opencascade::handle< BinMDataStd_BooleanListDriver >":
    return _BinMDataStd.Handle_BinMDataStd_BooleanListDriver_Create()

def Handle_BinMDataStd_BooleanListDriver_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< BinMDataStd_BooleanListDriver >":
    return _BinMDataStd.Handle_BinMDataStd_BooleanListDriver_DownCast(t)

def Handle_BinMDataStd_BooleanListDriver_IsNull(t: "opencascade::handle< BinMDataStd_BooleanListDriver > const &") -> "bool":
    return _BinMDataStd.Handle_BinMDataStd_BooleanListDriver_IsNull(t)

def Handle_BinMDataStd_ByteArrayDriver_Create() -> "opencascade::handle< BinMDataStd_ByteArrayDriver >":
    return _BinMDataStd.Handle_BinMDataStd_ByteArrayDriver_Create()

def Handle_BinMDataStd_ByteArrayDriver_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< BinMDataStd_ByteArrayDriver >":
    return _BinMDataStd.Handle_BinMDataStd_ByteArrayDriver_DownCast(t)

def Handle_BinMDataStd_ByteArrayDriver_IsNull(t: "opencascade::handle< BinMDataStd_ByteArrayDriver > const &") -> "bool":
    return _BinMDataStd.Handle_BinMDataStd_ByteArrayDriver_IsNull(t)

def Handle_BinMDataStd_ExpressionDriver_Create() -> "opencascade::handle< BinMDataStd_ExpressionDriver >":
    return _BinMDataStd.Handle_BinMDataStd_ExpressionDriver_Create()

def Handle_BinMDataStd_ExpressionDriver_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< BinMDataStd_ExpressionDriver >":
    return _BinMDataStd.Handle_BinMDataStd_ExpressionDriver_DownCast(t)

def Handle_BinMDataStd_ExpressionDriver_IsNull(t: "opencascade::handle< BinMDataStd_ExpressionDriver > const &") -> "bool":
    return _BinMDataStd.Handle_BinMDataStd_ExpressionDriver_IsNull(t)

def Handle_BinMDataStd_ExtStringArrayDriver_Create() -> "opencascade::handle< BinMDataStd_ExtStringArrayDriver >":
    return _BinMDataStd.Handle_BinMDataStd_ExtStringArrayDriver_Create()

def Handle_BinMDataStd_ExtStringArrayDriver_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< BinMDataStd_ExtStringArrayDriver >":
    return _BinMDataStd.Handle_BinMDataStd_ExtStringArrayDriver_DownCast(t)

def Handle_BinMDataStd_ExtStringArrayDriver_IsNull(t: "opencascade::handle< BinMDataStd_ExtStringArrayDriver > const &") -> "bool":
    return _BinMDataStd.Handle_BinMDataStd_ExtStringArrayDriver_IsNull(t)

def Handle_BinMDataStd_ExtStringListDriver_Create() -> "opencascade::handle< BinMDataStd_ExtStringListDriver >":
    return _BinMDataStd.Handle_BinMDataStd_ExtStringListDriver_Create()

def Handle_BinMDataStd_ExtStringListDriver_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< BinMDataStd_ExtStringListDriver >":
    return _BinMDataStd.Handle_BinMDataStd_ExtStringListDriver_DownCast(t)

def Handle_BinMDataStd_ExtStringListDriver_IsNull(t: "opencascade::handle< BinMDataStd_ExtStringListDriver > const &") -> "bool":
    return _BinMDataStd.Handle_BinMDataStd_ExtStringListDriver_IsNull(t)

def Handle_BinMDataStd_GenericEmptyDriver_Create() -> "opencascade::handle< BinMDataStd_GenericEmptyDriver >":
    return _BinMDataStd.Handle_BinMDataStd_GenericEmptyDriver_Create()

def Handle_BinMDataStd_GenericEmptyDriver_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< BinMDataStd_GenericEmptyDriver >":
    return _BinMDataStd.Handle_BinMDataStd_GenericEmptyDriver_DownCast(t)

def Handle_BinMDataStd_GenericEmptyDriver_IsNull(t: "opencascade::handle< BinMDataStd_GenericEmptyDriver > const &") -> "bool":
    return _BinMDataStd.Handle_BinMDataStd_GenericEmptyDriver_IsNull(t)

def Handle_BinMDataStd_GenericExtStringDriver_Create() -> "opencascade::handle< BinMDataStd_GenericExtStringDriver >":
    return _BinMDataStd.Handle_BinMDataStd_GenericExtStringDriver_Create()

def Handle_BinMDataStd_GenericExtStringDriver_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< BinMDataStd_GenericExtStringDriver >":
    return _BinMDataStd.Handle_BinMDataStd_GenericExtStringDriver_DownCast(t)

def Handle_BinMDataStd_GenericExtStringDriver_IsNull(t: "opencascade::handle< BinMDataStd_GenericExtStringDriver > const &") -> "bool":
    return _BinMDataStd.Handle_BinMDataStd_GenericExtStringDriver_IsNull(t)

def Handle_BinMDataStd_IntPackedMapDriver_Create() -> "opencascade::handle< BinMDataStd_IntPackedMapDriver >":
    return _BinMDataStd.Handle_BinMDataStd_IntPackedMapDriver_Create()

def Handle_BinMDataStd_IntPackedMapDriver_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< BinMDataStd_IntPackedMapDriver >":
    return _BinMDataStd.Handle_BinMDataStd_IntPackedMapDriver_DownCast(t)

def Handle_BinMDataStd_IntPackedMapDriver_IsNull(t: "opencascade::handle< BinMDataStd_IntPackedMapDriver > const &") -> "bool":
    return _BinMDataStd.Handle_BinMDataStd_IntPackedMapDriver_IsNull(t)

def Handle_BinMDataStd_IntegerArrayDriver_Create() -> "opencascade::handle< BinMDataStd_IntegerArrayDriver >":
    return _BinMDataStd.Handle_BinMDataStd_IntegerArrayDriver_Create()

def Handle_BinMDataStd_IntegerArrayDriver_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< BinMDataStd_IntegerArrayDriver >":
    return _BinMDataStd.Handle_BinMDataStd_IntegerArrayDriver_DownCast(t)

def Handle_BinMDataStd_IntegerArrayDriver_IsNull(t: "opencascade::handle< BinMDataStd_IntegerArrayDriver > const &") -> "bool":
    return _BinMDataStd.Handle_BinMDataStd_IntegerArrayDriver_IsNull(t)

def Handle_BinMDataStd_IntegerDriver_Create() -> "opencascade::handle< BinMDataStd_IntegerDriver >":
    return _BinMDataStd.Handle_BinMDataStd_IntegerDriver_Create()

def Handle_BinMDataStd_IntegerDriver_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< BinMDataStd_IntegerDriver >":
    return _BinMDataStd.Handle_BinMDataStd_IntegerDriver_DownCast(t)

def Handle_BinMDataStd_IntegerDriver_IsNull(t: "opencascade::handle< BinMDataStd_IntegerDriver > const &") -> "bool":
    return _BinMDataStd.Handle_BinMDataStd_IntegerDriver_IsNull(t)

def Handle_BinMDataStd_IntegerListDriver_Create() -> "opencascade::handle< BinMDataStd_IntegerListDriver >":
    return _BinMDataStd.Handle_BinMDataStd_IntegerListDriver_Create()

def Handle_BinMDataStd_IntegerListDriver_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< BinMDataStd_IntegerListDriver >":
    return _BinMDataStd.Handle_BinMDataStd_IntegerListDriver_DownCast(t)

def Handle_BinMDataStd_IntegerListDriver_IsNull(t: "opencascade::handle< BinMDataStd_IntegerListDriver > const &") -> "bool":
    return _BinMDataStd.Handle_BinMDataStd_IntegerListDriver_IsNull(t)

def Handle_BinMDataStd_NamedDataDriver_Create() -> "opencascade::handle< BinMDataStd_NamedDataDriver >":
    return _BinMDataStd.Handle_BinMDataStd_NamedDataDriver_Create()

def Handle_BinMDataStd_NamedDataDriver_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< BinMDataStd_NamedDataDriver >":
    return _BinMDataStd.Handle_BinMDataStd_NamedDataDriver_DownCast(t)

def Handle_BinMDataStd_NamedDataDriver_IsNull(t: "opencascade::handle< BinMDataStd_NamedDataDriver > const &") -> "bool":
    return _BinMDataStd.Handle_BinMDataStd_NamedDataDriver_IsNull(t)

def Handle_BinMDataStd_RealArrayDriver_Create() -> "opencascade::handle< BinMDataStd_RealArrayDriver >":
    return _BinMDataStd.Handle_BinMDataStd_RealArrayDriver_Create()

def Handle_BinMDataStd_RealArrayDriver_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< BinMDataStd_RealArrayDriver >":
    return _BinMDataStd.Handle_BinMDataStd_RealArrayDriver_DownCast(t)

def Handle_BinMDataStd_RealArrayDriver_IsNull(t: "opencascade::handle< BinMDataStd_RealArrayDriver > const &") -> "bool":
    return _BinMDataStd.Handle_BinMDataStd_RealArrayDriver_IsNull(t)

def Handle_BinMDataStd_RealDriver_Create() -> "opencascade::handle< BinMDataStd_RealDriver >":
    return _BinMDataStd.Handle_BinMDataStd_RealDriver_Create()

def Handle_BinMDataStd_RealDriver_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< BinMDataStd_RealDriver >":
    return _BinMDataStd.Handle_BinMDataStd_RealDriver_DownCast(t)

def Handle_BinMDataStd_RealDriver_IsNull(t: "opencascade::handle< BinMDataStd_RealDriver > const &") -> "bool":
    return _BinMDataStd.Handle_BinMDataStd_RealDriver_IsNull(t)

def Handle_BinMDataStd_RealListDriver_Create() -> "opencascade::handle< BinMDataStd_RealListDriver >":
    return _BinMDataStd.Handle_BinMDataStd_RealListDriver_Create()

def Handle_BinMDataStd_RealListDriver_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< BinMDataStd_RealListDriver >":
    return _BinMDataStd.Handle_BinMDataStd_RealListDriver_DownCast(t)

def Handle_BinMDataStd_RealListDriver_IsNull(t: "opencascade::handle< BinMDataStd_RealListDriver > const &") -> "bool":
    return _BinMDataStd.Handle_BinMDataStd_RealListDriver_IsNull(t)

def Handle_BinMDataStd_ReferenceArrayDriver_Create() -> "opencascade::handle< BinMDataStd_ReferenceArrayDriver >":
    return _BinMDataStd.Handle_BinMDataStd_ReferenceArrayDriver_Create()

def Handle_BinMDataStd_ReferenceArrayDriver_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< BinMDataStd_ReferenceArrayDriver >":
    return _BinMDataStd.Handle_BinMDataStd_ReferenceArrayDriver_DownCast(t)

def Handle_BinMDataStd_ReferenceArrayDriver_IsNull(t: "opencascade::handle< BinMDataStd_ReferenceArrayDriver > const &") -> "bool":
    return _BinMDataStd.Handle_BinMDataStd_ReferenceArrayDriver_IsNull(t)

def Handle_BinMDataStd_ReferenceListDriver_Create() -> "opencascade::handle< BinMDataStd_ReferenceListDriver >":
    return _BinMDataStd.Handle_BinMDataStd_ReferenceListDriver_Create()

def Handle_BinMDataStd_ReferenceListDriver_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< BinMDataStd_ReferenceListDriver >":
    return _BinMDataStd.Handle_BinMDataStd_ReferenceListDriver_DownCast(t)

def Handle_BinMDataStd_ReferenceListDriver_IsNull(t: "opencascade::handle< BinMDataStd_ReferenceListDriver > const &") -> "bool":
    return _BinMDataStd.Handle_BinMDataStd_ReferenceListDriver_IsNull(t)

def Handle_BinMDataStd_TreeNodeDriver_Create() -> "opencascade::handle< BinMDataStd_TreeNodeDriver >":
    return _BinMDataStd.Handle_BinMDataStd_TreeNodeDriver_Create()

def Handle_BinMDataStd_TreeNodeDriver_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< BinMDataStd_TreeNodeDriver >":
    return _BinMDataStd.Handle_BinMDataStd_TreeNodeDriver_DownCast(t)

def Handle_BinMDataStd_TreeNodeDriver_IsNull(t: "opencascade::handle< BinMDataStd_TreeNodeDriver > const &") -> "bool":
    return _BinMDataStd.Handle_BinMDataStd_TreeNodeDriver_IsNull(t)

def Handle_BinMDataStd_UAttributeDriver_Create() -> "opencascade::handle< BinMDataStd_UAttributeDriver >":
    return _BinMDataStd.Handle_BinMDataStd_UAttributeDriver_Create()

def Handle_BinMDataStd_UAttributeDriver_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< BinMDataStd_UAttributeDriver >":
    return _BinMDataStd.Handle_BinMDataStd_UAttributeDriver_DownCast(t)

def Handle_BinMDataStd_UAttributeDriver_IsNull(t: "opencascade::handle< BinMDataStd_UAttributeDriver > const &") -> "bool":
    return _BinMDataStd.Handle_BinMDataStd_UAttributeDriver_IsNull(t)

def Handle_BinMDataStd_VariableDriver_Create() -> "opencascade::handle< BinMDataStd_VariableDriver >":
    return _BinMDataStd.Handle_BinMDataStd_VariableDriver_Create()

def Handle_BinMDataStd_VariableDriver_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< BinMDataStd_VariableDriver >":
    return _BinMDataStd.Handle_BinMDataStd_VariableDriver_DownCast(t)

def Handle_BinMDataStd_VariableDriver_IsNull(t: "opencascade::handle< BinMDataStd_VariableDriver > const &") -> "bool":
    return _BinMDataStd.Handle_BinMDataStd_VariableDriver_IsNull(t)
class binmdatastd(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    @staticmethod
    def AddDrivers(*args) -> "void":
        r"""
        Adds the attribute drivers to <thedrivertable>.

        Parameters
        ----------
        theDriverTable: BinMDF_ADriverTable
        aMsgDrv: Message_Messenger

        Returns
        -------
        None

        """
        return _BinMDataStd.binmdatastd_AddDrivers(*args)

    __repr__ = _dumps_object

    @methodnotwrapped
    def SetAttributeID(self):
    	pass


    def __init__(self):
        _BinMDataStd.binmdatastd_swiginit(self, _BinMDataStd.new_binmdatastd())
    __swig_destroy__ = _BinMDataStd.delete_binmdatastd

# Register binmdatastd in _BinMDataStd:
_BinMDataStd.binmdatastd_swigregister(binmdatastd)

def binmdatastd_AddDrivers(*args) -> "void":
    r"""
    Adds the attribute drivers to <thedrivertable>.

    Parameters
    ----------
    theDriverTable: BinMDF_ADriverTable
    aMsgDrv: Message_Messenger

    Returns
    -------
    None

    """
    return _BinMDataStd.binmdatastd_AddDrivers(*args)

class BinMDataStd_AsciiStringDriver(OCC.Core.BinMDF.BinMDF_ADriver):
    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"""
        No available documentation.

        Parameters
        ----------
        theMessageDriver: Message_Messenger

        Returns
        -------
        None

        """
        _BinMDataStd.BinMDataStd_AsciiStringDriver_swiginit(self, _BinMDataStd.new_BinMDataStd_AsciiStringDriver(*args))

    def Paste(self, *args) -> "void":
        r"""
        Persistent -> transient (retrieve).

        Parameters
        ----------
        Source: BinObjMgt_Persistent
        Target: TDF_Attribute
        RelocTable: BinObjMgt_RRelocationTable

        Returns
        -------
        bool
        Transient -> persistent (store).

        Parameters
        ----------
        Source: TDF_Attribute
        Target: BinObjMgt_Persistent
        RelocTable: BinObjMgt_SRelocationTable

        Returns
        -------
        None

        """
        return _BinMDataStd.BinMDataStd_AsciiStringDriver_Paste(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _BinMDataStd.delete_BinMDataStd_AsciiStringDriver

# Register BinMDataStd_AsciiStringDriver in _BinMDataStd:
_BinMDataStd.BinMDataStd_AsciiStringDriver_swigregister(BinMDataStd_AsciiStringDriver)

class BinMDataStd_BooleanArrayDriver(OCC.Core.BinMDF.BinMDF_ADriver):
    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"""
        No available documentation.

        Parameters
        ----------
        theMessageDriver: Message_Messenger

        Returns
        -------
        None

        """
        _BinMDataStd.BinMDataStd_BooleanArrayDriver_swiginit(self, _BinMDataStd.new_BinMDataStd_BooleanArrayDriver(*args))

    def Paste(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        Source: BinObjMgt_Persistent
        Target: TDF_Attribute
        RelocTable: BinObjMgt_RRelocationTable

        Returns
        -------
        bool
        No available documentation.

        Parameters
        ----------
        Source: TDF_Attribute
        Target: BinObjMgt_Persistent
        RelocTable: BinObjMgt_SRelocationTable

        Returns
        -------
        None

        """
        return _BinMDataStd.BinMDataStd_BooleanArrayDriver_Paste(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _BinMDataStd.delete_BinMDataStd_BooleanArrayDriver

# Register BinMDataStd_BooleanArrayDriver in _BinMDataStd:
_BinMDataStd.BinMDataStd_BooleanArrayDriver_swigregister(BinMDataStd_BooleanArrayDriver)

class BinMDataStd_BooleanListDriver(OCC.Core.BinMDF.BinMDF_ADriver):
    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"""
        No available documentation.

        Parameters
        ----------
        theMessageDriver: Message_Messenger

        Returns
        -------
        None

        """
        _BinMDataStd.BinMDataStd_BooleanListDriver_swiginit(self, _BinMDataStd.new_BinMDataStd_BooleanListDriver(*args))

    def Paste(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        Source: BinObjMgt_Persistent
        Target: TDF_Attribute
        RelocTable: BinObjMgt_RRelocationTable

        Returns
        -------
        bool
        No available documentation.

        Parameters
        ----------
        Source: TDF_Attribute
        Target: BinObjMgt_Persistent
        RelocTable: BinObjMgt_SRelocationTable

        Returns
        -------
        None

        """
        return _BinMDataStd.BinMDataStd_BooleanListDriver_Paste(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _BinMDataStd.delete_BinMDataStd_BooleanListDriver

# Register BinMDataStd_BooleanListDriver in _BinMDataStd:
_BinMDataStd.BinMDataStd_BooleanListDriver_swigregister(BinMDataStd_BooleanListDriver)

class BinMDataStd_ByteArrayDriver(OCC.Core.BinMDF.BinMDF_ADriver):
    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"""
        No available documentation.

        Parameters
        ----------
        theMessageDriver: Message_Messenger

        Returns
        -------
        None

        """
        _BinMDataStd.BinMDataStd_ByteArrayDriver_swiginit(self, _BinMDataStd.new_BinMDataStd_ByteArrayDriver(*args))

    def Paste(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        Source: BinObjMgt_Persistent
        Target: TDF_Attribute
        RelocTable: BinObjMgt_RRelocationTable

        Returns
        -------
        bool
        No available documentation.

        Parameters
        ----------
        Source: TDF_Attribute
        Target: BinObjMgt_Persistent
        RelocTable: BinObjMgt_SRelocationTable

        Returns
        -------
        None

        """
        return _BinMDataStd.BinMDataStd_ByteArrayDriver_Paste(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _BinMDataStd.delete_BinMDataStd_ByteArrayDriver

# Register BinMDataStd_ByteArrayDriver in _BinMDataStd:
_BinMDataStd.BinMDataStd_ByteArrayDriver_swigregister(BinMDataStd_ByteArrayDriver)

class BinMDataStd_ExpressionDriver(OCC.Core.BinMDF.BinMDF_ADriver):
    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"""
        No available documentation.

        Parameters
        ----------
        theMessageDriver: Message_Messenger

        Returns
        -------
        None

        """
        _BinMDataStd.BinMDataStd_ExpressionDriver_swiginit(self, _BinMDataStd.new_BinMDataStd_ExpressionDriver(*args))

    def Paste(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        Source: BinObjMgt_Persistent
        Target: TDF_Attribute
        RelocTable: BinObjMgt_RRelocationTable

        Returns
        -------
        bool
        No available documentation.

        Parameters
        ----------
        Source: TDF_Attribute
        Target: BinObjMgt_Persistent
        RelocTable: BinObjMgt_SRelocationTable

        Returns
        -------
        None

        """
        return _BinMDataStd.BinMDataStd_ExpressionDriver_Paste(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _BinMDataStd.delete_BinMDataStd_ExpressionDriver

# Register BinMDataStd_ExpressionDriver in _BinMDataStd:
_BinMDataStd.BinMDataStd_ExpressionDriver_swigregister(BinMDataStd_ExpressionDriver)

class BinMDataStd_ExtStringArrayDriver(OCC.Core.BinMDF.BinMDF_ADriver):
    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"""
        No available documentation.

        Parameters
        ----------
        theMessageDriver: Message_Messenger

        Returns
        -------
        None

        """
        _BinMDataStd.BinMDataStd_ExtStringArrayDriver_swiginit(self, _BinMDataStd.new_BinMDataStd_ExtStringArrayDriver(*args))

    def Paste(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        Source: BinObjMgt_Persistent
        Target: TDF_Attribute
        RelocTable: BinObjMgt_RRelocationTable

        Returns
        -------
        bool
        No available documentation.

        Parameters
        ----------
        Source: TDF_Attribute
        Target: BinObjMgt_Persistent
        RelocTable: BinObjMgt_SRelocationTable

        Returns
        -------
        None

        """
        return _BinMDataStd.BinMDataStd_ExtStringArrayDriver_Paste(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _BinMDataStd.delete_BinMDataStd_ExtStringArrayDriver

# Register BinMDataStd_ExtStringArrayDriver in _BinMDataStd:
_BinMDataStd.BinMDataStd_ExtStringArrayDriver_swigregister(BinMDataStd_ExtStringArrayDriver)

class BinMDataStd_ExtStringListDriver(OCC.Core.BinMDF.BinMDF_ADriver):
    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"""
        No available documentation.

        Parameters
        ----------
        theMessageDriver: Message_Messenger

        Returns
        -------
        None

        """
        _BinMDataStd.BinMDataStd_ExtStringListDriver_swiginit(self, _BinMDataStd.new_BinMDataStd_ExtStringListDriver(*args))

    def Paste(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        Source: BinObjMgt_Persistent
        Target: TDF_Attribute
        RelocTable: BinObjMgt_RRelocationTable

        Returns
        -------
        bool
        No available documentation.

        Parameters
        ----------
        Source: TDF_Attribute
        Target: BinObjMgt_Persistent
        RelocTable: BinObjMgt_SRelocationTable

        Returns
        -------
        None

        """
        return _BinMDataStd.BinMDataStd_ExtStringListDriver_Paste(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _BinMDataStd.delete_BinMDataStd_ExtStringListDriver

# Register BinMDataStd_ExtStringListDriver in _BinMDataStd:
_BinMDataStd.BinMDataStd_ExtStringListDriver_swigregister(BinMDataStd_ExtStringListDriver)

class BinMDataStd_GenericEmptyDriver(OCC.Core.BinMDF.BinMDF_ADriver):
    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"""
        No available documentation.

        Parameters
        ----------
        theMessageDriver: Message_Messenger

        Returns
        -------
        None

        """
        _BinMDataStd.BinMDataStd_GenericEmptyDriver_swiginit(self, _BinMDataStd.new_BinMDataStd_GenericEmptyDriver(*args))

    def Paste(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        Source: BinObjMgt_Persistent
        Target: TDF_Attribute
        RelocTable: BinObjMgt_RRelocationTable

        Returns
        -------
        bool
        No available documentation.

        Parameters
        ----------
        Source: TDF_Attribute
        Target: BinObjMgt_Persistent
        RelocTable: BinObjMgt_SRelocationTable

        Returns
        -------
        None

        """
        return _BinMDataStd.BinMDataStd_GenericEmptyDriver_Paste(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _BinMDataStd.delete_BinMDataStd_GenericEmptyDriver

# Register BinMDataStd_GenericEmptyDriver in _BinMDataStd:
_BinMDataStd.BinMDataStd_GenericEmptyDriver_swigregister(BinMDataStd_GenericEmptyDriver)

class BinMDataStd_GenericExtStringDriver(OCC.Core.BinMDF.BinMDF_ADriver):
    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"""
        No available documentation.

        Parameters
        ----------
        theMessageDriver: Message_Messenger

        Returns
        -------
        None

        """
        _BinMDataStd.BinMDataStd_GenericExtStringDriver_swiginit(self, _BinMDataStd.new_BinMDataStd_GenericExtStringDriver(*args))

    def Paste(self, *args) -> "void":
        r"""
        Persistent -> transient (retrieve).

        Parameters
        ----------
        Source: BinObjMgt_Persistent
        Target: TDF_Attribute
        RelocTable: BinObjMgt_RRelocationTable

        Returns
        -------
        bool
        Transient -> persistent (store).

        Parameters
        ----------
        Source: TDF_Attribute
        Target: BinObjMgt_Persistent
        RelocTable: BinObjMgt_SRelocationTable

        Returns
        -------
        None

        """
        return _BinMDataStd.BinMDataStd_GenericExtStringDriver_Paste(self, *args)

    def SourceType(self, *args) -> "opencascade::handle< Standard_Type > &":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<Standard_Type>

        """
        return _BinMDataStd.BinMDataStd_GenericExtStringDriver_SourceType(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _BinMDataStd.delete_BinMDataStd_GenericExtStringDriver

# Register BinMDataStd_GenericExtStringDriver in _BinMDataStd:
_BinMDataStd.BinMDataStd_GenericExtStringDriver_swigregister(BinMDataStd_GenericExtStringDriver)

class BinMDataStd_IntPackedMapDriver(OCC.Core.BinMDF.BinMDF_ADriver):
    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"""
        No available documentation.

        Parameters
        ----------
        theMessageDriver: Message_Messenger

        Returns
        -------
        None

        """
        _BinMDataStd.BinMDataStd_IntPackedMapDriver_swiginit(self, _BinMDataStd.new_BinMDataStd_IntPackedMapDriver(*args))

    def Paste(self, *args) -> "void":
        r"""
        Persistent -> transient (retrieve).

        Parameters
        ----------
        Source: BinObjMgt_Persistent
        Target: TDF_Attribute
        RelocTable: BinObjMgt_RRelocationTable

        Returns
        -------
        bool
        Transient -> persistent (store).

        Parameters
        ----------
        Source: TDF_Attribute
        Target: BinObjMgt_Persistent
        RelocTable: BinObjMgt_SRelocationTable

        Returns
        -------
        None

        """
        return _BinMDataStd.BinMDataStd_IntPackedMapDriver_Paste(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _BinMDataStd.delete_BinMDataStd_IntPackedMapDriver

# Register BinMDataStd_IntPackedMapDriver in _BinMDataStd:
_BinMDataStd.BinMDataStd_IntPackedMapDriver_swigregister(BinMDataStd_IntPackedMapDriver)

class BinMDataStd_IntegerArrayDriver(OCC.Core.BinMDF.BinMDF_ADriver):
    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"""
        No available documentation.

        Parameters
        ----------
        theMessageDriver: Message_Messenger

        Returns
        -------
        None

        """
        _BinMDataStd.BinMDataStd_IntegerArrayDriver_swiginit(self, _BinMDataStd.new_BinMDataStd_IntegerArrayDriver(*args))

    def Paste(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        Source: BinObjMgt_Persistent
        Target: TDF_Attribute
        RelocTable: BinObjMgt_RRelocationTable

        Returns
        -------
        bool
        No available documentation.

        Parameters
        ----------
        Source: TDF_Attribute
        Target: BinObjMgt_Persistent
        RelocTable: BinObjMgt_SRelocationTable

        Returns
        -------
        None

        """
        return _BinMDataStd.BinMDataStd_IntegerArrayDriver_Paste(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _BinMDataStd.delete_BinMDataStd_IntegerArrayDriver

# Register BinMDataStd_IntegerArrayDriver in _BinMDataStd:
_BinMDataStd.BinMDataStd_IntegerArrayDriver_swigregister(BinMDataStd_IntegerArrayDriver)

class BinMDataStd_IntegerDriver(OCC.Core.BinMDF.BinMDF_ADriver):
    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"""
        No available documentation.

        Parameters
        ----------
        theMessageDriver: Message_Messenger

        Returns
        -------
        None

        """
        _BinMDataStd.BinMDataStd_IntegerDriver_swiginit(self, _BinMDataStd.new_BinMDataStd_IntegerDriver(*args))

    def Paste(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        Source: BinObjMgt_Persistent
        Target: TDF_Attribute
        RelocTable: BinObjMgt_RRelocationTable

        Returns
        -------
        bool
        No available documentation.

        Parameters
        ----------
        Source: TDF_Attribute
        Target: BinObjMgt_Persistent
        RelocTable: BinObjMgt_SRelocationTable

        Returns
        -------
        None

        """
        return _BinMDataStd.BinMDataStd_IntegerDriver_Paste(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _BinMDataStd.delete_BinMDataStd_IntegerDriver

# Register BinMDataStd_IntegerDriver in _BinMDataStd:
_BinMDataStd.BinMDataStd_IntegerDriver_swigregister(BinMDataStd_IntegerDriver)

class BinMDataStd_IntegerListDriver(OCC.Core.BinMDF.BinMDF_ADriver):
    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"""
        No available documentation.

        Parameters
        ----------
        theMessageDriver: Message_Messenger

        Returns
        -------
        None

        """
        _BinMDataStd.BinMDataStd_IntegerListDriver_swiginit(self, _BinMDataStd.new_BinMDataStd_IntegerListDriver(*args))

    def Paste(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        Source: BinObjMgt_Persistent
        Target: TDF_Attribute
        RelocTable: BinObjMgt_RRelocationTable

        Returns
        -------
        bool
        No available documentation.

        Parameters
        ----------
        Source: TDF_Attribute
        Target: BinObjMgt_Persistent
        RelocTable: BinObjMgt_SRelocationTable

        Returns
        -------
        None

        """
        return _BinMDataStd.BinMDataStd_IntegerListDriver_Paste(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _BinMDataStd.delete_BinMDataStd_IntegerListDriver

# Register BinMDataStd_IntegerListDriver in _BinMDataStd:
_BinMDataStd.BinMDataStd_IntegerListDriver_swigregister(BinMDataStd_IntegerListDriver)

class BinMDataStd_NamedDataDriver(OCC.Core.BinMDF.BinMDF_ADriver):
    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"""
        No available documentation.

        Parameters
        ----------
        theMessageDriver: Message_Messenger

        Returns
        -------
        None

        """
        _BinMDataStd.BinMDataStd_NamedDataDriver_swiginit(self, _BinMDataStd.new_BinMDataStd_NamedDataDriver(*args))

    def Paste(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        Source: BinObjMgt_Persistent
        Target: TDF_Attribute
        RelocTable: BinObjMgt_RRelocationTable

        Returns
        -------
        bool
        No available documentation.

        Parameters
        ----------
        Source: TDF_Attribute
        Target: BinObjMgt_Persistent
        RelocTable: BinObjMgt_SRelocationTable

        Returns
        -------
        None

        """
        return _BinMDataStd.BinMDataStd_NamedDataDriver_Paste(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _BinMDataStd.delete_BinMDataStd_NamedDataDriver

# Register BinMDataStd_NamedDataDriver in _BinMDataStd:
_BinMDataStd.BinMDataStd_NamedDataDriver_swigregister(BinMDataStd_NamedDataDriver)

class BinMDataStd_RealArrayDriver(OCC.Core.BinMDF.BinMDF_ADriver):
    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"""
        No available documentation.

        Parameters
        ----------
        theMessageDriver: Message_Messenger

        Returns
        -------
        None

        """
        _BinMDataStd.BinMDataStd_RealArrayDriver_swiginit(self, _BinMDataStd.new_BinMDataStd_RealArrayDriver(*args))

    def Paste(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        Source: BinObjMgt_Persistent
        Target: TDF_Attribute
        RelocTable: BinObjMgt_RRelocationTable

        Returns
        -------
        bool
        No available documentation.

        Parameters
        ----------
        Source: TDF_Attribute
        Target: BinObjMgt_Persistent
        RelocTable: BinObjMgt_SRelocationTable

        Returns
        -------
        None

        """
        return _BinMDataStd.BinMDataStd_RealArrayDriver_Paste(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _BinMDataStd.delete_BinMDataStd_RealArrayDriver

# Register BinMDataStd_RealArrayDriver in _BinMDataStd:
_BinMDataStd.BinMDataStd_RealArrayDriver_swigregister(BinMDataStd_RealArrayDriver)

class BinMDataStd_RealDriver(OCC.Core.BinMDF.BinMDF_ADriver):
    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"""
        No available documentation.

        Parameters
        ----------
        theMessageDriver: Message_Messenger

        Returns
        -------
        None

        """
        _BinMDataStd.BinMDataStd_RealDriver_swiginit(self, _BinMDataStd.new_BinMDataStd_RealDriver(*args))

    def Paste(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        Source: BinObjMgt_Persistent
        Target: TDF_Attribute
        RelocTable: BinObjMgt_RRelocationTable

        Returns
        -------
        bool
        No available documentation.

        Parameters
        ----------
        Source: TDF_Attribute
        Target: BinObjMgt_Persistent
        RelocTable: BinObjMgt_SRelocationTable

        Returns
        -------
        None

        """
        return _BinMDataStd.BinMDataStd_RealDriver_Paste(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _BinMDataStd.delete_BinMDataStd_RealDriver

# Register BinMDataStd_RealDriver in _BinMDataStd:
_BinMDataStd.BinMDataStd_RealDriver_swigregister(BinMDataStd_RealDriver)

class BinMDataStd_RealListDriver(OCC.Core.BinMDF.BinMDF_ADriver):
    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"""
        No available documentation.

        Parameters
        ----------
        theMessageDriver: Message_Messenger

        Returns
        -------
        None

        """
        _BinMDataStd.BinMDataStd_RealListDriver_swiginit(self, _BinMDataStd.new_BinMDataStd_RealListDriver(*args))

    def Paste(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        Source: BinObjMgt_Persistent
        Target: TDF_Attribute
        RelocTable: BinObjMgt_RRelocationTable

        Returns
        -------
        bool
        No available documentation.

        Parameters
        ----------
        Source: TDF_Attribute
        Target: BinObjMgt_Persistent
        RelocTable: BinObjMgt_SRelocationTable

        Returns
        -------
        None

        """
        return _BinMDataStd.BinMDataStd_RealListDriver_Paste(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _BinMDataStd.delete_BinMDataStd_RealListDriver

# Register BinMDataStd_RealListDriver in _BinMDataStd:
_BinMDataStd.BinMDataStd_RealListDriver_swigregister(BinMDataStd_RealListDriver)

class BinMDataStd_ReferenceArrayDriver(OCC.Core.BinMDF.BinMDF_ADriver):
    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"""
        No available documentation.

        Parameters
        ----------
        theMessageDriver: Message_Messenger

        Returns
        -------
        None

        """
        _BinMDataStd.BinMDataStd_ReferenceArrayDriver_swiginit(self, _BinMDataStd.new_BinMDataStd_ReferenceArrayDriver(*args))

    def Paste(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        Source: BinObjMgt_Persistent
        Target: TDF_Attribute
        RelocTable: BinObjMgt_RRelocationTable

        Returns
        -------
        bool
        No available documentation.

        Parameters
        ----------
        Source: TDF_Attribute
        Target: BinObjMgt_Persistent
        RelocTable: BinObjMgt_SRelocationTable

        Returns
        -------
        None

        """
        return _BinMDataStd.BinMDataStd_ReferenceArrayDriver_Paste(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _BinMDataStd.delete_BinMDataStd_ReferenceArrayDriver

# Register BinMDataStd_ReferenceArrayDriver in _BinMDataStd:
_BinMDataStd.BinMDataStd_ReferenceArrayDriver_swigregister(BinMDataStd_ReferenceArrayDriver)

class BinMDataStd_ReferenceListDriver(OCC.Core.BinMDF.BinMDF_ADriver):
    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"""
        No available documentation.

        Parameters
        ----------
        theMessageDriver: Message_Messenger

        Returns
        -------
        None

        """
        _BinMDataStd.BinMDataStd_ReferenceListDriver_swiginit(self, _BinMDataStd.new_BinMDataStd_ReferenceListDriver(*args))

    def Paste(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        Source: BinObjMgt_Persistent
        Target: TDF_Attribute
        RelocTable: BinObjMgt_RRelocationTable

        Returns
        -------
        bool
        No available documentation.

        Parameters
        ----------
        Source: TDF_Attribute
        Target: BinObjMgt_Persistent
        RelocTable: BinObjMgt_SRelocationTable

        Returns
        -------
        None

        """
        return _BinMDataStd.BinMDataStd_ReferenceListDriver_Paste(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _BinMDataStd.delete_BinMDataStd_ReferenceListDriver

# Register BinMDataStd_ReferenceListDriver in _BinMDataStd:
_BinMDataStd.BinMDataStd_ReferenceListDriver_swigregister(BinMDataStd_ReferenceListDriver)

class BinMDataStd_TreeNodeDriver(OCC.Core.BinMDF.BinMDF_ADriver):
    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"""
        No available documentation.

        Parameters
        ----------
        theMessageDriver: Message_Messenger

        Returns
        -------
        None

        """
        _BinMDataStd.BinMDataStd_TreeNodeDriver_swiginit(self, _BinMDataStd.new_BinMDataStd_TreeNodeDriver(*args))

    def Paste(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        Source: BinObjMgt_Persistent
        Target: TDF_Attribute
        RelocTable: BinObjMgt_RRelocationTable

        Returns
        -------
        bool
        No available documentation.

        Parameters
        ----------
        Source: TDF_Attribute
        Target: BinObjMgt_Persistent
        RelocTable: BinObjMgt_SRelocationTable

        Returns
        -------
        None

        """
        return _BinMDataStd.BinMDataStd_TreeNodeDriver_Paste(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _BinMDataStd.delete_BinMDataStd_TreeNodeDriver

# Register BinMDataStd_TreeNodeDriver in _BinMDataStd:
_BinMDataStd.BinMDataStd_TreeNodeDriver_swigregister(BinMDataStd_TreeNodeDriver)

class BinMDataStd_UAttributeDriver(OCC.Core.BinMDF.BinMDF_ADriver):
    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"""
        No available documentation.

        Parameters
        ----------
        theMessageDriver: Message_Messenger

        Returns
        -------
        None

        """
        _BinMDataStd.BinMDataStd_UAttributeDriver_swiginit(self, _BinMDataStd.new_BinMDataStd_UAttributeDriver(*args))

    def Paste(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        Source: BinObjMgt_Persistent
        Target: TDF_Attribute
        RelocTable: BinObjMgt_RRelocationTable

        Returns
        -------
        bool
        No available documentation.

        Parameters
        ----------
        Source: TDF_Attribute
        Target: BinObjMgt_Persistent
        RelocTable: BinObjMgt_SRelocationTable

        Returns
        -------
        None

        """
        return _BinMDataStd.BinMDataStd_UAttributeDriver_Paste(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _BinMDataStd.delete_BinMDataStd_UAttributeDriver

# Register BinMDataStd_UAttributeDriver in _BinMDataStd:
_BinMDataStd.BinMDataStd_UAttributeDriver_swigregister(BinMDataStd_UAttributeDriver)

class BinMDataStd_VariableDriver(OCC.Core.BinMDF.BinMDF_ADriver):
    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"""
        No available documentation.

        Parameters
        ----------
        theMessageDriver: Message_Messenger

        Returns
        -------
        None

        """
        _BinMDataStd.BinMDataStd_VariableDriver_swiginit(self, _BinMDataStd.new_BinMDataStd_VariableDriver(*args))

    def Paste(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        Source: BinObjMgt_Persistent
        Target: TDF_Attribute
        RelocTable: BinObjMgt_RRelocationTable

        Returns
        -------
        bool
        No available documentation.

        Parameters
        ----------
        Source: TDF_Attribute
        Target: BinObjMgt_Persistent
        RelocTable: BinObjMgt_SRelocationTable

        Returns
        -------
        None

        """
        return _BinMDataStd.BinMDataStd_VariableDriver_Paste(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _BinMDataStd.delete_BinMDataStd_VariableDriver

# Register BinMDataStd_VariableDriver in _BinMDataStd:
_BinMDataStd.BinMDataStd_VariableDriver_swigregister(BinMDataStd_VariableDriver)





