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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

endl_cb_ptr = _TPrsStd.endl_cb_ptr
endl = _TPrsStd.endl
ends_cb_ptr = _TPrsStd.ends_cb_ptr
ends = _TPrsStd.ends
flush_cb_ptr = _TPrsStd.flush_cb_ptr
flush = _TPrsStd.flush
import OCC.Core.Standard
import OCC.Core.NCollection
import OCC.Core.TDF
import OCC.Core.TCollection
import OCC.Core.TColStd
import OCC.Core.Quantity
import OCC.Core.AIS
import OCC.Core.SelectMgr
import OCC.Core.Graphic3d
import OCC.Core.BVH
import OCC.Core.gp
import OCC.Core.Aspect
import OCC.Core.Image
import OCC.Core.TopLoc
import OCC.Core.Bnd
import OCC.Core.TColgp
import OCC.Core.OSD
import OCC.Core.Media
import OCC.Core.Select3D
import OCC.Core.SelectBasics
import OCC.Core.Geom
import OCC.Core.GeomAbs
import OCC.Core.PrsMgr
import OCC.Core.Prs3d
import OCC.Core.Poly
import OCC.Core.TShort
import OCC.Core.V3d
import OCC.Core.TopAbs
import OCC.Core.TopoDS
import OCC.Core.Message
import OCC.Core.StdSelect
import OCC.Core.TopTools
import OCC.Core.TDataXtd
import OCC.Core.TDataStd
import OCC.Core.TNaming

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




def Handle_TPrsStd_AISPresentation_Create():
    return _TPrsStd.Handle_TPrsStd_AISPresentation_Create()

def Handle_TPrsStd_AISPresentation_DownCast(t):
    return _TPrsStd.Handle_TPrsStd_AISPresentation_DownCast(t)

def Handle_TPrsStd_AISPresentation_IsNull(t):
    return _TPrsStd.Handle_TPrsStd_AISPresentation_IsNull(t)

def Handle_TPrsStd_AISViewer_Create():
    return _TPrsStd.Handle_TPrsStd_AISViewer_Create()

def Handle_TPrsStd_AISViewer_DownCast(t):
    return _TPrsStd.Handle_TPrsStd_AISViewer_DownCast(t)

def Handle_TPrsStd_AISViewer_IsNull(t):
    return _TPrsStd.Handle_TPrsStd_AISViewer_IsNull(t)

def Handle_TPrsStd_Driver_Create():
    return _TPrsStd.Handle_TPrsStd_Driver_Create()

def Handle_TPrsStd_Driver_DownCast(t):
    return _TPrsStd.Handle_TPrsStd_Driver_DownCast(t)

def Handle_TPrsStd_Driver_IsNull(t):
    return _TPrsStd.Handle_TPrsStd_Driver_IsNull(t)

def Handle_TPrsStd_DriverTable_Create():
    return _TPrsStd.Handle_TPrsStd_DriverTable_Create()

def Handle_TPrsStd_DriverTable_DownCast(t):
    return _TPrsStd.Handle_TPrsStd_DriverTable_DownCast(t)

def Handle_TPrsStd_DriverTable_IsNull(t):
    return _TPrsStd.Handle_TPrsStd_DriverTable_IsNull(t)

def Handle_TPrsStd_AxisDriver_Create():
    return _TPrsStd.Handle_TPrsStd_AxisDriver_Create()

def Handle_TPrsStd_AxisDriver_DownCast(t):
    return _TPrsStd.Handle_TPrsStd_AxisDriver_DownCast(t)

def Handle_TPrsStd_AxisDriver_IsNull(t):
    return _TPrsStd.Handle_TPrsStd_AxisDriver_IsNull(t)

def Handle_TPrsStd_ConstraintDriver_Create():
    return _TPrsStd.Handle_TPrsStd_ConstraintDriver_Create()

def Handle_TPrsStd_ConstraintDriver_DownCast(t):
    return _TPrsStd.Handle_TPrsStd_ConstraintDriver_DownCast(t)

def Handle_TPrsStd_ConstraintDriver_IsNull(t):
    return _TPrsStd.Handle_TPrsStd_ConstraintDriver_IsNull(t)

def Handle_TPrsStd_GeometryDriver_Create():
    return _TPrsStd.Handle_TPrsStd_GeometryDriver_Create()

def Handle_TPrsStd_GeometryDriver_DownCast(t):
    return _TPrsStd.Handle_TPrsStd_GeometryDriver_DownCast(t)

def Handle_TPrsStd_GeometryDriver_IsNull(t):
    return _TPrsStd.Handle_TPrsStd_GeometryDriver_IsNull(t)

def Handle_TPrsStd_NamedShapeDriver_Create():
    return _TPrsStd.Handle_TPrsStd_NamedShapeDriver_Create()

def Handle_TPrsStd_NamedShapeDriver_DownCast(t):
    return _TPrsStd.Handle_TPrsStd_NamedShapeDriver_DownCast(t)

def Handle_TPrsStd_NamedShapeDriver_IsNull(t):
    return _TPrsStd.Handle_TPrsStd_NamedShapeDriver_IsNull(t)

def Handle_TPrsStd_PlaneDriver_Create():
    return _TPrsStd.Handle_TPrsStd_PlaneDriver_Create()

def Handle_TPrsStd_PlaneDriver_DownCast(t):
    return _TPrsStd.Handle_TPrsStd_PlaneDriver_DownCast(t)

def Handle_TPrsStd_PlaneDriver_IsNull(t):
    return _TPrsStd.Handle_TPrsStd_PlaneDriver_IsNull(t)

def Handle_TPrsStd_PointDriver_Create():
    return _TPrsStd.Handle_TPrsStd_PointDriver_Create()

def Handle_TPrsStd_PointDriver_DownCast(t):
    return _TPrsStd.Handle_TPrsStd_PointDriver_DownCast(t)

def Handle_TPrsStd_PointDriver_IsNull(t):
    return _TPrsStd.Handle_TPrsStd_PointDriver_IsNull(t)
class TPrsStd_DataMapOfGUIDDriver(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 _TPrsStd.TPrsStd_DataMapOfGUIDDriver_begin(self)

    def end(self):
        return _TPrsStd.TPrsStd_DataMapOfGUIDDriver_end(self)

    def cbegin(self):
        return _TPrsStd.TPrsStd_DataMapOfGUIDDriver_cbegin(self)

    def cend(self):
        return _TPrsStd.TPrsStd_DataMapOfGUIDDriver_cend(self)

    def __init__(self, *args):
        _TPrsStd.TPrsStd_DataMapOfGUIDDriver_swiginit(self, _TPrsStd.new_TPrsStd_DataMapOfGUIDDriver(*args))

    def Exchange(self, theOther):
        return _TPrsStd.TPrsStd_DataMapOfGUIDDriver_Exchange(self, theOther)

    def Assign(self, theOther):
        return _TPrsStd.TPrsStd_DataMapOfGUIDDriver_Assign(self, theOther)

    def Set(self, *args):
        return _TPrsStd.TPrsStd_DataMapOfGUIDDriver_Set(self, *args)

    def ReSize(self, N):
        return _TPrsStd.TPrsStd_DataMapOfGUIDDriver_ReSize(self, N)

    def Bind(self, *args):
        return _TPrsStd.TPrsStd_DataMapOfGUIDDriver_Bind(self, *args)

    def Bound(self, *args):
        return _TPrsStd.TPrsStd_DataMapOfGUIDDriver_Bound(self, *args)

    def IsBound(self, theKey):
        return _TPrsStd.TPrsStd_DataMapOfGUIDDriver_IsBound(self, theKey)

    def UnBind(self, theKey):
        return _TPrsStd.TPrsStd_DataMapOfGUIDDriver_UnBind(self, theKey)

    def Seek(self, theKey):
        return _TPrsStd.TPrsStd_DataMapOfGUIDDriver_Seek(self, theKey)

    def Find(self, *args):
        return _TPrsStd.TPrsStd_DataMapOfGUIDDriver_Find(self, *args)

    def ChangeSeek(self, theKey):
        return _TPrsStd.TPrsStd_DataMapOfGUIDDriver_ChangeSeek(self, theKey)

    def ChangeFind(self, theKey):
        return _TPrsStd.TPrsStd_DataMapOfGUIDDriver_ChangeFind(self, theKey)

    def __call__(self, *args):
        return _TPrsStd.TPrsStd_DataMapOfGUIDDriver___call__(self, *args)

    def Clear(self, *args):
        return _TPrsStd.TPrsStd_DataMapOfGUIDDriver_Clear(self, *args)
    __swig_destroy__ = _TPrsStd.delete_TPrsStd_DataMapOfGUIDDriver

    def Size(self):
        return _TPrsStd.TPrsStd_DataMapOfGUIDDriver_Size(self)

# Register TPrsStd_DataMapOfGUIDDriver in _TPrsStd:
_TPrsStd.TPrsStd_DataMapOfGUIDDriver_swigregister(TPrsStd_DataMapOfGUIDDriver)
class TPrsStd_AISPresentation(OCC.Core.TDF.TDF_Attribute):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

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

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

        """
        _TPrsStd.TPrsStd_AISPresentation_swiginit(self, _TPrsStd.new_TPrsStd_AISPresentation(*args))

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

        Parameters
        ----------
        theSelectionMode: int
        theTransaction: bool (optional, default to Standard_True)

        Return
        -------
        None

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

        """
        return _TPrsStd.TPrsStd_AISPresentation_AddSelectionMode(self, *args)

    def Color(self, *args):
        r"""
        Return
        -------
        Quantity_NameOfColor

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

        """
        return _TPrsStd.TPrsStd_AISPresentation_Color(self, *args)

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

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

        Return
        -------
        None

        Description
        -----------
        Display presentation of object in AIS viewer. If <update> = True then AISObject is recomputed and all the visualization settings are applied.

        """
        return _TPrsStd.TPrsStd_AISPresentation_Display(self, *args)

    def DumpJson(self, depth=-1):
        r"""

        Parameters
        ----------
        depth: int, default=-1

        Return
        -------
        str

        Description
        -----------
        Dump the object to JSON string.

        Parameters
        ----------
        depth: int, default=-1

        Return
        -------
        str

        Description
        -----------
        Dump the object to JSON string.

        """
        return _TPrsStd.TPrsStd_AISPresentation_DumpJson(self, depth)

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

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

        Return
        -------
        None

        Description
        -----------
        Removes the presentation of this AIS presentation attribute from the TPrsStd_AISViewer. If remove is true, this AIS presentation attribute is removed from the interactive context.

        """
        return _TPrsStd.TPrsStd_AISPresentation_Erase(self, *args)

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

        Description
        -----------
        Returns AIS_InteractiveObject stored in the presentation attribute.

        """
        return _TPrsStd.TPrsStd_AISPresentation_GetAIS(self, *args)

    def GetDriverGUID(self, *args):
        r"""
        Return
        -------
        Standard_GUID

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

        """
        return _TPrsStd.TPrsStd_AISPresentation_GetDriverGUID(self, *args)

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

        Description
        -----------
        Returns the GUID for TPrsStd_AISPresentation attributes.

        """
        return _TPrsStd.TPrsStd_AISPresentation_GetID(*args)

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

        Description
        -----------
        Returns selection mode(s) of the attribute. It starts with 1 .. GetNbSelectionModes().

        """
        return _TPrsStd.TPrsStd_AISPresentation_GetNbSelectionModes(self, *args)

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

        Description
        -----------
        Returns true if this presentation attribute already has a color setting.

        """
        return _TPrsStd.TPrsStd_AISPresentation_HasOwnColor(self, *args)

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

        Description
        -----------
        Returns true if this presentation attribute already has a material setting.

        """
        return _TPrsStd.TPrsStd_AISPresentation_HasOwnMaterial(self, *args)

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

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

        """
        return _TPrsStd.TPrsStd_AISPresentation_HasOwnMode(self, *args)

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

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

        """
        return _TPrsStd.TPrsStd_AISPresentation_HasOwnSelectionMode(self, *args)

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

        Description
        -----------
        Returns true if this presentation attribute already has a transparency setting.

        """
        return _TPrsStd.TPrsStd_AISPresentation_HasOwnTransparency(self, *args)

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

        Description
        -----------
        Returns true if this presentation attribute already has a width setting.

        """
        return _TPrsStd.TPrsStd_AISPresentation_HasOwnWidth(self, *args)

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

        Description
        -----------
        Returns true if this AIS presentation attribute is displayed.

        """
        return _TPrsStd.TPrsStd_AISPresentation_IsDisplayed(self, *args)

    def Material(self, *args):
        r"""
        Return
        -------
        Graphic3d_NameOfMaterial

        Description
        -----------
        Returns the material setting for this presentation attribute.

        """
        return _TPrsStd.TPrsStd_AISPresentation_Material(self, *args)

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

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

        """
        return _TPrsStd.TPrsStd_AISPresentation_Mode(self, *args)

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

        Parameters
        ----------
        index: int (optional, default to 1)

        Return
        -------
        int

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

        """
        return _TPrsStd.TPrsStd_AISPresentation_SelectionMode(self, *args)

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

        Parameters
        ----------
        L: TDF_Label
        driver: Standard_GUID

        Return
        -------
        opencascade::handle<TPrsStd_AISPresentation>

        Description
        -----------
        Creates or retrieves the presentation attribute on the label L, and sets the GUID driver.

        Parameters
        ----------
        master: TDF_Attribute

        Return
        -------
        opencascade::handle<TPrsStd_AISPresentation>

        Description
        -----------
        Creates or retrieves the AISPresentation attribute attached to master. The GUID of the driver will be the GUID of master. master is the attribute you want to display.

        """
        return _TPrsStd.TPrsStd_AISPresentation_Set(*args)

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

        Parameters
        ----------
        aColor: Quantity_NameOfColor

        Return
        -------
        None

        Description
        -----------
        Sets the color aColor for this presentation attribute.

        """
        return _TPrsStd.TPrsStd_AISPresentation_SetColor(self, *args)

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

        Parameters
        ----------
        B: bool

        Return
        -------
        None

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

        """
        return _TPrsStd.TPrsStd_AISPresentation_SetDisplayed(self, *args)

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

        Parameters
        ----------
        guid: Standard_GUID

        Return
        -------
        None

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

        """
        return _TPrsStd.TPrsStd_AISPresentation_SetDriverGUID(self, *args)

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

        Parameters
        ----------
        aName: Graphic3d_NameOfMaterial

        Return
        -------
        None

        Description
        -----------
        Sets the material aName for this presentation attribute.

        """
        return _TPrsStd.TPrsStd_AISPresentation_SetMaterial(self, *args)

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

        Parameters
        ----------
        theMode: int

        Return
        -------
        None

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

        """
        return _TPrsStd.TPrsStd_AISPresentation_SetMode(self, *args)

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

        Parameters
        ----------
        theSelectionMode: int
        theTransaction: bool (optional, default to Standard_True)

        Return
        -------
        None

        Description
        -----------
        Sets selection mode. If 'theTransaction' flag is OFF, modification of the attribute doesn't influence the transaction mechanism (the attribute doesn't participate in undo/redo because of this modification). Certainly, if any other data of the attribute is modified (display mode, color, ...), the attribute will be included into undo/redo.

        """
        return _TPrsStd.TPrsStd_AISPresentation_SetSelectionMode(self, *args)

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

        Parameters
        ----------
        aValue: float (optional, default to 0.6)

        Return
        -------
        None

        Description
        -----------
        Sets the transparency value aValue for this presentation attribute. This value is 0.6 by default.

        """
        return _TPrsStd.TPrsStd_AISPresentation_SetTransparency(self, *args)

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

        Parameters
        ----------
        aWidth: float

        Return
        -------
        None

        Description
        -----------
        Sets the width aWidth for this presentation attribute.

        """
        return _TPrsStd.TPrsStd_AISPresentation_SetWidth(self, *args)

    def Transparency(self, *args):
        r"""
        Return
        -------
        float

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

        """
        return _TPrsStd.TPrsStd_AISPresentation_Transparency(self, *args)

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

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

        Return
        -------
        None

        Description
        -----------
        Delete (if exist) the presentation attribute associated to the label <L>.

        """
        return _TPrsStd.TPrsStd_AISPresentation_Unset(*args)

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

        Description
        -----------
        Removes the color setting from this presentation attribute.

        """
        return _TPrsStd.TPrsStd_AISPresentation_UnsetColor(self, *args)

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

        Description
        -----------
        Removes the material setting from this presentation attribute.

        """
        return _TPrsStd.TPrsStd_AISPresentation_UnsetMaterial(self, *args)

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

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

        """
        return _TPrsStd.TPrsStd_AISPresentation_UnsetMode(self, *args)

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

        Description
        -----------
        Clears all selection modes of the attribute.

        """
        return _TPrsStd.TPrsStd_AISPresentation_UnsetSelectionMode(self, *args)

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

        Description
        -----------
        Removes the transparency setting from this presentation attribute.

        """
        return _TPrsStd.TPrsStd_AISPresentation_UnsetTransparency(self, *args)

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

        Description
        -----------
        Removes the width setting from this presentation attribute.

        """
        return _TPrsStd.TPrsStd_AISPresentation_UnsetWidth(self, *args)

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

        Description
        -----------
        Recompute presentation of object and apply the visualization settings.

        """
        return _TPrsStd.TPrsStd_AISPresentation_Update(self, *args)

    def Width(self, *args):
        r"""
        Return
        -------
        float

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

        """
        return _TPrsStd.TPrsStd_AISPresentation_Width(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _TPrsStd.delete_TPrsStd_AISPresentation

# Register TPrsStd_AISPresentation in _TPrsStd:
_TPrsStd.TPrsStd_AISPresentation_swigregister(TPrsStd_AISPresentation)
class TPrsStd_AISViewer(OCC.Core.TDF.TDF_Attribute):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

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

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

        """
        _TPrsStd.TPrsStd_AISViewer_swiginit(self, _TPrsStd.new_TPrsStd_AISViewer(*args))

    def DumpJson(self, depth=-1):
        r"""

        Parameters
        ----------
        depth: int, default=-1

        Return
        -------
        str

        Description
        -----------
        Dump the object to JSON string.

        Parameters
        ----------
        depth: int, default=-1

        Return
        -------
        str

        Description
        -----------
        Dump the object to JSON string.

        """
        return _TPrsStd.TPrsStd_AISViewer_DumpJson(self, depth)

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

        Parameters
        ----------
        acces: TDF_Label
        A: TPrsStd_AISViewer

        Return
        -------
        bool

        Description
        -----------
        Finds the viewer attribute at the label access, the root of the data framework. Calling this function can be used to initialize an AIS viewer.

        Parameters
        ----------
        acces: TDF_Label
        IC: AIS_InteractiveContext

        Return
        -------
        bool

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

        Parameters
        ----------
        acces: TDF_Label
        V: V3d_Viewer

        Return
        -------
        bool

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

        """
        return _TPrsStd.TPrsStd_AISViewer_Find(*args)

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

        Description
        -----------
        class methods =============.

        """
        return _TPrsStd.TPrsStd_AISViewer_GetID(*args)

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

        Description
        -----------
        Returns the interactive context in this attribute.

        """
        return _TPrsStd.TPrsStd_AISViewer_GetInteractiveContext(self, *args)

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

        Parameters
        ----------
        acces: TDF_Label

        Return
        -------
        bool

        Description
        -----------
        returns True if there is an AISViewer attribute in <acces> Data Framework.

        """
        return _TPrsStd.TPrsStd_AISViewer_Has(*args)

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

        Parameters
        ----------
        access: TDF_Label
        selector: AIS_InteractiveContext

        Return
        -------
        opencascade::handle<TPrsStd_AISViewer>

        Description
        -----------
        create and set an AISViewer at. Raise an exception if Has.

        Parameters
        ----------
        acces: TDF_Label
        viewer: V3d_Viewer

        Return
        -------
        opencascade::handle<TPrsStd_AISViewer>

        Description
        -----------
        create and set an AISAttribute at root label. The interactive context is build. Raise an exception if Has.

        """
        return _TPrsStd.TPrsStd_AISViewer_New(*args)

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

        Parameters
        ----------
        ctx: AIS_InteractiveContext

        Return
        -------
        None

        Description
        -----------
        Sets the interactive context ctx for this attribute.

        """
        return _TPrsStd.TPrsStd_AISViewer_SetInteractiveContext(self, *args)

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

        Parameters
        ----------
        acces: TDF_Label

        Return
        -------
        None

        Description
        -----------
        AISViewer methods =================.
        Return
        -------
        None

        Description
        -----------
        Updates the viewer at the label access. access is the root of the data framework.

        """
        return _TPrsStd.TPrsStd_AISViewer_Update(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _TPrsStd.delete_TPrsStd_AISViewer

# Register TPrsStd_AISViewer in _TPrsStd:
_TPrsStd.TPrsStd_AISViewer_swigregister(TPrsStd_AISViewer)
class TPrsStd_ConstraintTools(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

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

        Parameters
        ----------
        aConst: TDataXtd_Constraint
        anAIS: AIS_InteractiveObject

        Return
        -------
        None

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

        """
        return _TPrsStd.TPrsStd_ConstraintTools_ComputeAngle(*args)

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

        Parameters
        ----------
        aConst: TDataXtd_Constraint
        anAIS: AIS_InteractiveObject

        Return
        -------
        None

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

        """
        return _TPrsStd.TPrsStd_ConstraintTools_ComputeAngleForOneFace(*args)

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

        Parameters
        ----------
        aConst: TDataXtd_Constraint
        anAIS: AIS_InteractiveObject

        Return
        -------
        None

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

        """
        return _TPrsStd.TPrsStd_ConstraintTools_ComputeCoincident(*args)

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

        Parameters
        ----------
        aConst: TDataXtd_Constraint
        anAIS: AIS_InteractiveObject

        Return
        -------
        None

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

        """
        return _TPrsStd.TPrsStd_ConstraintTools_ComputeConcentric(*args)

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

        Parameters
        ----------
        aConst: TDataXtd_Constraint
        anAIS: AIS_InteractiveObject

        Return
        -------
        None

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

        """
        return _TPrsStd.TPrsStd_ConstraintTools_ComputeDiameter(*args)

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

        Parameters
        ----------
        aConst: TDataXtd_Constraint
        anAIS: AIS_InteractiveObject

        Return
        -------
        None

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

        """
        return _TPrsStd.TPrsStd_ConstraintTools_ComputeDistance(*args)

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

        Parameters
        ----------
        aConst: TDataXtd_Constraint
        anAIS: AIS_InteractiveObject

        Return
        -------
        None

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

        """
        return _TPrsStd.TPrsStd_ConstraintTools_ComputeEqualDistance(*args)

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

        Parameters
        ----------
        aConst: TDataXtd_Constraint
        anAIS: AIS_InteractiveObject

        Return
        -------
        None

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

        """
        return _TPrsStd.TPrsStd_ConstraintTools_ComputeEqualRadius(*args)

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

        Parameters
        ----------
        aConst: TDataXtd_Constraint
        anAIS: AIS_InteractiveObject

        Return
        -------
        None

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

        """
        return _TPrsStd.TPrsStd_ConstraintTools_ComputeFix(*args)

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

        Parameters
        ----------
        aConst: TDataXtd_Constraint
        anAIS: AIS_InteractiveObject

        Return
        -------
        None

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

        """
        return _TPrsStd.TPrsStd_ConstraintTools_ComputeMaxRadius(*args)

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

        Parameters
        ----------
        aConst: TDataXtd_Constraint
        anAIS: AIS_InteractiveObject

        Return
        -------
        None

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

        """
        return _TPrsStd.TPrsStd_ConstraintTools_ComputeMidPoint(*args)

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

        Parameters
        ----------
        aConst: TDataXtd_Constraint
        anAIS: AIS_InteractiveObject

        Return
        -------
        None

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

        """
        return _TPrsStd.TPrsStd_ConstraintTools_ComputeMinRadius(*args)

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

        Parameters
        ----------
        aConst: TDataXtd_Constraint
        anAIS: AIS_InteractiveObject

        Return
        -------
        None

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

        """
        return _TPrsStd.TPrsStd_ConstraintTools_ComputeOffset(*args)

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

        Parameters
        ----------
        aConst: TDataXtd_Constraint
        anAIS: AIS_InteractiveObject

        Return
        -------
        None

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

        """
        return _TPrsStd.TPrsStd_ConstraintTools_ComputeOthers(*args)

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

        Parameters
        ----------
        aConst: TDataXtd_Constraint
        anAIS: AIS_InteractiveObject

        Return
        -------
        None

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

        """
        return _TPrsStd.TPrsStd_ConstraintTools_ComputeParallel(*args)

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

        Parameters
        ----------
        aConst: TDataXtd_Constraint
        anAIS: AIS_InteractiveObject

        Return
        -------
        None

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

        """
        return _TPrsStd.TPrsStd_ConstraintTools_ComputePerpendicular(*args)

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

        Parameters
        ----------
        aConst: TDataXtd_Constraint
        anAIS: AIS_InteractiveObject

        Return
        -------
        None

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

        """
        return _TPrsStd.TPrsStd_ConstraintTools_ComputePlacement(*args)

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

        Parameters
        ----------
        aConst: TDataXtd_Constraint
        anAIS: AIS_InteractiveObject

        Return
        -------
        None

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

        """
        return _TPrsStd.TPrsStd_ConstraintTools_ComputeRadius(*args)

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

        Parameters
        ----------
        aConst: TDataXtd_Constraint
        anAIS: AIS_InteractiveObject

        Return
        -------
        None

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

        """
        return _TPrsStd.TPrsStd_ConstraintTools_ComputeRound(*args)

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

        Parameters
        ----------
        aConst: TDataXtd_Constraint
        anAIS: AIS_InteractiveObject

        Return
        -------
        None

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

        """
        return _TPrsStd.TPrsStd_ConstraintTools_ComputeSymmetry(*args)

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

        Parameters
        ----------
        aConst: TDataXtd_Constraint
        anAIS: AIS_InteractiveObject

        Return
        -------
        None

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

        """
        return _TPrsStd.TPrsStd_ConstraintTools_ComputeTangent(*args)

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

        Parameters
        ----------
        aConst: TDataXtd_Constraint
        aText: str
        anIsAngle: bool

        Return
        -------
        aValue: float

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

        """
        return _TPrsStd.TPrsStd_ConstraintTools_ComputeTextAndValue(*args)

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

        Parameters
        ----------
        aConst: TDataXtd_Constraint
        anAIS: AIS_InteractiveObject

        Return
        -------
        None

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

        """
        return _TPrsStd.TPrsStd_ConstraintTools_UpdateOnlyValue(*args)

    __repr__ = _dumps_object


    def __init__(self):
        _TPrsStd.TPrsStd_ConstraintTools_swiginit(self, _TPrsStd.new_TPrsStd_ConstraintTools())
    __swig_destroy__ = _TPrsStd.delete_TPrsStd_ConstraintTools

# Register TPrsStd_ConstraintTools in _TPrsStd:
_TPrsStd.TPrsStd_ConstraintTools_swigregister(TPrsStd_ConstraintTools)
class TPrsStd_Driver(OCC.Core.Standard.Standard_Transient):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined")
    __repr__ = _swig_repr

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

        Parameters
        ----------
        L: TDF_Label
        ais: AIS_InteractiveObject

        Return
        -------
        bool

        Description
        -----------
        Updates the interactive object ais with information found on the attributes associated with the label L.

        """
        return _TPrsStd.TPrsStd_Driver_Update(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _TPrsStd.delete_TPrsStd_Driver

# Register TPrsStd_Driver in _TPrsStd:
_TPrsStd.TPrsStd_Driver_swigregister(TPrsStd_Driver)
class TPrsStd_DriverTable(OCC.Core.Standard.Standard_Transient):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

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

        Description
        -----------
        Default constructor.

        """
        _TPrsStd.TPrsStd_DriverTable_swiginit(self, _TPrsStd.new_TPrsStd_DriverTable(*args))

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

        Parameters
        ----------
        guid: Standard_GUID
        driver: TPrsStd_Driver

        Return
        -------
        bool

        Description
        -----------
        Returns true if the driver has been added successfully to the driver table.

        """
        return _TPrsStd.TPrsStd_DriverTable_AddDriver(self, *args)

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

        Description
        -----------
        Removes all drivers. Returns true if the driver has been removed successfully. If this method is used, the InitStandardDrivers method should be called to fill the table with standard drivers.

        """
        return _TPrsStd.TPrsStd_DriverTable_Clear(self, *args)

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

        Parameters
        ----------
        guid: Standard_GUID
        driver: TPrsStd_Driver

        Return
        -------
        bool

        Description
        -----------
        Returns true if the driver was found.

        """
        return _TPrsStd.TPrsStd_DriverTable_FindDriver(self, *args)

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

        Description
        -----------
        Returns the static table. If it does not exist, creates it and fills it with standard drivers.

        """
        return _TPrsStd.TPrsStd_DriverTable_Get(*args)

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

        Description
        -----------
        Fills the table with standard drivers.

        """
        return _TPrsStd.TPrsStd_DriverTable_InitStandardDrivers(self, *args)

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

        Parameters
        ----------
        guid: Standard_GUID

        Return
        -------
        bool

        Description
        -----------
        Removes a driver with the given GUID. Returns true if the driver has been removed successfully.

        """
        return _TPrsStd.TPrsStd_DriverTable_RemoveDriver(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _TPrsStd.delete_TPrsStd_DriverTable

# Register TPrsStd_DriverTable in _TPrsStd:
_TPrsStd.TPrsStd_DriverTable_swigregister(TPrsStd_DriverTable)
class TPrsStd_AxisDriver(TPrsStd_Driver):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

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

        Description
        -----------
        Constructs an empty axis driver.

        """
        _TPrsStd.TPrsStd_AxisDriver_swiginit(self, _TPrsStd.new_TPrsStd_AxisDriver(*args))


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


    __repr__ = _dumps_object

    __swig_destroy__ = _TPrsStd.delete_TPrsStd_AxisDriver

# Register TPrsStd_AxisDriver in _TPrsStd:
_TPrsStd.TPrsStd_AxisDriver_swigregister(TPrsStd_AxisDriver)
class TPrsStd_ConstraintDriver(TPrsStd_Driver):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

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

        Description
        -----------
        Constructs an empty constraint driver.

        """
        _TPrsStd.TPrsStd_ConstraintDriver_swiginit(self, _TPrsStd.new_TPrsStd_ConstraintDriver(*args))


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


    __repr__ = _dumps_object

    __swig_destroy__ = _TPrsStd.delete_TPrsStd_ConstraintDriver

# Register TPrsStd_ConstraintDriver in _TPrsStd:
_TPrsStd.TPrsStd_ConstraintDriver_swigregister(TPrsStd_ConstraintDriver)
class TPrsStd_GeometryDriver(TPrsStd_Driver):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

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

        Description
        -----------
        Constructs an empty geometry driver.

        """
        _TPrsStd.TPrsStd_GeometryDriver_swiginit(self, _TPrsStd.new_TPrsStd_GeometryDriver(*args))


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


    __repr__ = _dumps_object

    __swig_destroy__ = _TPrsStd.delete_TPrsStd_GeometryDriver

# Register TPrsStd_GeometryDriver in _TPrsStd:
_TPrsStd.TPrsStd_GeometryDriver_swigregister(TPrsStd_GeometryDriver)
class TPrsStd_NamedShapeDriver(TPrsStd_Driver):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

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

        Description
        -----------
        Constructs an empty named shape driver.

        """
        _TPrsStd.TPrsStd_NamedShapeDriver_swiginit(self, _TPrsStd.new_TPrsStd_NamedShapeDriver(*args))


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


    __repr__ = _dumps_object

    __swig_destroy__ = _TPrsStd.delete_TPrsStd_NamedShapeDriver

# Register TPrsStd_NamedShapeDriver in _TPrsStd:
_TPrsStd.TPrsStd_NamedShapeDriver_swigregister(TPrsStd_NamedShapeDriver)
class TPrsStd_PlaneDriver(TPrsStd_Driver):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

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

        Description
        -----------
        Constructs an empty plane driver.

        """
        _TPrsStd.TPrsStd_PlaneDriver_swiginit(self, _TPrsStd.new_TPrsStd_PlaneDriver(*args))


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


    __repr__ = _dumps_object

    __swig_destroy__ = _TPrsStd.delete_TPrsStd_PlaneDriver

# Register TPrsStd_PlaneDriver in _TPrsStd:
_TPrsStd.TPrsStd_PlaneDriver_swigregister(TPrsStd_PlaneDriver)
class TPrsStd_PointDriver(TPrsStd_Driver):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

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

        Description
        -----------
        Constructs an empty point driver.

        """
        _TPrsStd.TPrsStd_PointDriver_swiginit(self, _TPrsStd.new_TPrsStd_PointDriver(*args))


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


    __repr__ = _dumps_object

    __swig_destroy__ = _TPrsStd.delete_TPrsStd_PointDriver

# Register TPrsStd_PointDriver in _TPrsStd:
_TPrsStd.TPrsStd_PointDriver_swigregister(TPrsStd_PointDriver)



@deprecated
def TPrsStd_AISPresentation_GetID(*args):
	return TPrsStd_AISPresentation.GetID(*args)

@deprecated
def TPrsStd_AISPresentation_Set(*args):
	return TPrsStd_AISPresentation.Set(*args)

@deprecated
def TPrsStd_AISPresentation_Set(*args):
	return TPrsStd_AISPresentation.Set(*args)

@deprecated
def TPrsStd_AISPresentation_Unset(*args):
	return TPrsStd_AISPresentation.Unset(*args)

@deprecated
def TPrsStd_AISViewer_Find(*args):
	return TPrsStd_AISViewer.Find(*args)

@deprecated
def TPrsStd_AISViewer_Find(*args):
	return TPrsStd_AISViewer.Find(*args)

@deprecated
def TPrsStd_AISViewer_Find(*args):
	return TPrsStd_AISViewer.Find(*args)

@deprecated
def TPrsStd_AISViewer_GetID(*args):
	return TPrsStd_AISViewer.GetID(*args)

@deprecated
def TPrsStd_AISViewer_Has(*args):
	return TPrsStd_AISViewer.Has(*args)

@deprecated
def TPrsStd_AISViewer_New(*args):
	return TPrsStd_AISViewer.New(*args)

@deprecated
def TPrsStd_AISViewer_New(*args):
	return TPrsStd_AISViewer.New(*args)

@deprecated
def TPrsStd_AISViewer_Update(*args):
	return TPrsStd_AISViewer.Update(*args)

@deprecated
def TPrsStd_ConstraintTools_ComputeAngle(*args):
	return TPrsStd_ConstraintTools.ComputeAngle(*args)

@deprecated
def TPrsStd_ConstraintTools_ComputeAngleForOneFace(*args):
	return TPrsStd_ConstraintTools.ComputeAngleForOneFace(*args)

@deprecated
def TPrsStd_ConstraintTools_ComputeCoincident(*args):
	return TPrsStd_ConstraintTools.ComputeCoincident(*args)

@deprecated
def TPrsStd_ConstraintTools_ComputeConcentric(*args):
	return TPrsStd_ConstraintTools.ComputeConcentric(*args)

@deprecated
def TPrsStd_ConstraintTools_ComputeDiameter(*args):
	return TPrsStd_ConstraintTools.ComputeDiameter(*args)

@deprecated
def TPrsStd_ConstraintTools_ComputeDistance(*args):
	return TPrsStd_ConstraintTools.ComputeDistance(*args)

@deprecated
def TPrsStd_ConstraintTools_ComputeEqualDistance(*args):
	return TPrsStd_ConstraintTools.ComputeEqualDistance(*args)

@deprecated
def TPrsStd_ConstraintTools_ComputeEqualRadius(*args):
	return TPrsStd_ConstraintTools.ComputeEqualRadius(*args)

@deprecated
def TPrsStd_ConstraintTools_ComputeFix(*args):
	return TPrsStd_ConstraintTools.ComputeFix(*args)

@deprecated
def TPrsStd_ConstraintTools_ComputeMaxRadius(*args):
	return TPrsStd_ConstraintTools.ComputeMaxRadius(*args)

@deprecated
def TPrsStd_ConstraintTools_ComputeMidPoint(*args):
	return TPrsStd_ConstraintTools.ComputeMidPoint(*args)

@deprecated
def TPrsStd_ConstraintTools_ComputeMinRadius(*args):
	return TPrsStd_ConstraintTools.ComputeMinRadius(*args)

@deprecated
def TPrsStd_ConstraintTools_ComputeOffset(*args):
	return TPrsStd_ConstraintTools.ComputeOffset(*args)

@deprecated
def TPrsStd_ConstraintTools_ComputeOthers(*args):
	return TPrsStd_ConstraintTools.ComputeOthers(*args)

@deprecated
def TPrsStd_ConstraintTools_ComputeParallel(*args):
	return TPrsStd_ConstraintTools.ComputeParallel(*args)

@deprecated
def TPrsStd_ConstraintTools_ComputePerpendicular(*args):
	return TPrsStd_ConstraintTools.ComputePerpendicular(*args)

@deprecated
def TPrsStd_ConstraintTools_ComputePlacement(*args):
	return TPrsStd_ConstraintTools.ComputePlacement(*args)

@deprecated
def TPrsStd_ConstraintTools_ComputeRadius(*args):
	return TPrsStd_ConstraintTools.ComputeRadius(*args)

@deprecated
def TPrsStd_ConstraintTools_ComputeRound(*args):
	return TPrsStd_ConstraintTools.ComputeRound(*args)

@deprecated
def TPrsStd_ConstraintTools_ComputeSymmetry(*args):
	return TPrsStd_ConstraintTools.ComputeSymmetry(*args)

@deprecated
def TPrsStd_ConstraintTools_ComputeTangent(*args):
	return TPrsStd_ConstraintTools.ComputeTangent(*args)

@deprecated
def TPrsStd_ConstraintTools_ComputeTextAndValue(*args):
	return TPrsStd_ConstraintTools.ComputeTextAndValue(*args)

@deprecated
def TPrsStd_ConstraintTools_UpdateOnlyValue(*args):
	return TPrsStd_ConstraintTools.UpdateOnlyValue(*args)

@deprecated
def TPrsStd_DriverTable_Get(*args):
	return TPrsStd_DriverTable.Get(*args)



