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

"""otmixmod module"""


from sys import version_info as _swig_python_version_info
if _swig_python_version_info >= (2, 7, 0):
    def swig_import_helper():
        import importlib
        pkg = __name__.rpartition('.')[0]
        mname = '.'.join((pkg, '_otmixmod')).lstrip('.')
        try:
            return importlib.import_module(mname)
        except ImportError:
            return importlib.import_module('_otmixmod')
    _otmixmod = swig_import_helper()
    del swig_import_helper
elif _swig_python_version_info >= (2, 6, 0):
    def swig_import_helper():
        from os.path import dirname
        import imp
        fp = None
        try:
            fp, pathname, description = imp.find_module('_otmixmod', [dirname(__file__)])
        except ImportError:
            import _otmixmod
            return _otmixmod
        try:
            _mod = imp.load_module('_otmixmod', fp, pathname, description)
        finally:
            if fp is not None:
                fp.close()
        return _mod
    _otmixmod = swig_import_helper()
    del swig_import_helper
else:
    import _otmixmod
del _swig_python_version_info

try:
    _swig_property = property
except NameError:
    pass  # Python < 2.2 doesn't have 'property'.

try:
    import builtins as __builtin__
except ImportError:
    import __builtin__

def _swig_setattr_nondynamic(self, class_type, name, value, static=1):
    if (name == "thisown"):
        return self.this.own(value)
    if (name == "this"):
        if type(value).__name__ == 'SwigPyObject':
            self.__dict__[name] = value
            return
    method = class_type.__swig_setmethods__.get(name, None)
    if method:
        return method(self, value)
    if (not static):
        if _newclass:
            object.__setattr__(self, name, value)
        else:
            self.__dict__[name] = value
    else:
        raise AttributeError("You cannot add attributes to %s" % self)


def _swig_setattr(self, class_type, name, value):
    return _swig_setattr_nondynamic(self, class_type, name, value, 0)


def _swig_getattr(self, class_type, name):
    if (name == "thisown"):
        return self.this.own()
    method = class_type.__swig_getmethods__.get(name, None)
    if method:
        return method(self)
    raise AttributeError("'%s' object has no attribute '%s'" % (class_type.__name__, name))


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,)

try:
    _object = object
    _newclass = 1
except __builtin__.Exception:
    class _object:
        pass
    _newclass = 0

import openturns.base
import openturns.common
import openturns.typ
import openturns.statistics
import openturns.graph
import openturns.func
import openturns.geom
import openturns.diff
import openturns.optim
import openturns.experiment
import openturns.solver
import openturns.algo
import openturns.uncertainty
import openturns.model_copula
import openturns.randomvector
import openturns.dist_bundle1
import openturns.dist_bundle2
import openturns.weightedexperiment
import openturns.classification
import openturns.orthogonalbasis
import openturns.metamodel
import openturns.transformation
import openturns.analytical
import openturns.simulation
import openturns.stattests
import openturns.model_process
class MixmodCovarianceModelImplementation(openturns.common.PersistentObject):
    """Proxy of C++ OTMIXMOD::MixmodCovarianceModelImplementation class."""

    __swig_setmethods__ = {}
    for _s in [openturns.common.PersistentObject]:
        __swig_setmethods__.update(getattr(_s, '__swig_setmethods__', {}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, MixmodCovarianceModelImplementation, name, value)
    __swig_getmethods__ = {}
    for _s in [openturns.common.PersistentObject]:
        __swig_getmethods__.update(getattr(_s, '__swig_getmethods__', {}))
    __getattr__ = lambda self, name: _swig_getattr(self, MixmodCovarianceModelImplementation, name)

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

    def getClassName(self):
        """
        getClassName(MixmodCovarianceModelImplementation self) -> OT::String

        Accessor to the object's name.

        Returns
        -------
        class_name : str
            The object class name (`object.__class__.__name__`).
        """
        return _otmixmod.MixmodCovarianceModelImplementation_getClassName(self)


    def convertToMixmod(self):
        """convertToMixmod(MixmodCovarianceModelImplementation self) -> OT::String"""
        return _otmixmod.MixmodCovarianceModelImplementation_convertToMixmod(self)

    __swig_destroy__ = _otmixmod.delete_MixmodCovarianceModelImplementation
    __del__ = lambda self: None
MixmodCovarianceModelImplementation_swigregister = _otmixmod.MixmodCovarianceModelImplementation_swigregister
MixmodCovarianceModelImplementation_swigregister(MixmodCovarianceModelImplementation)

class Gaussian_pk_L_B(MixmodCovarianceModelImplementation):
    """Proxy of C++ OTMIXMOD::Gaussian_pk_L_B class."""

    __swig_setmethods__ = {}
    for _s in [MixmodCovarianceModelImplementation]:
        __swig_setmethods__.update(getattr(_s, '__swig_setmethods__', {}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, Gaussian_pk_L_B, name, value)
    __swig_getmethods__ = {}
    for _s in [MixmodCovarianceModelImplementation]:
        __swig_getmethods__.update(getattr(_s, '__swig_getmethods__', {}))
    __getattr__ = lambda self, name: _swig_getattr(self, Gaussian_pk_L_B, name)
    __repr__ = _swig_repr

    def getClassName(self):
        """
        getClassName(Gaussian_pk_L_B self) -> OT::String

        Accessor to the object's name.

        Returns
        -------
        class_name : str
            The object class name (`object.__class__.__name__`).
        """
        return _otmixmod.Gaussian_pk_L_B_getClassName(self)


    def convertToMixmod(self):
        """convertToMixmod(Gaussian_pk_L_B self) -> OT::String"""
        return _otmixmod.Gaussian_pk_L_B_convertToMixmod(self)


    def __init__(self, *args):
        """
        __init__(OTMIXMOD::Gaussian_pk_L_B self) -> Gaussian_pk_L_B
        __init__(OTMIXMOD::Gaussian_pk_L_B self, Gaussian_pk_L_B other) -> Gaussian_pk_L_B
        """
        this = _otmixmod.new_Gaussian_pk_L_B(*args)
        try:
            self.this.append(this)
        except __builtin__.Exception:
            self.this = this
    __swig_destroy__ = _otmixmod.delete_Gaussian_pk_L_B
    __del__ = lambda self: None
Gaussian_pk_L_B_swigregister = _otmixmod.Gaussian_pk_L_B_swigregister
Gaussian_pk_L_B_swigregister(Gaussian_pk_L_B)

class Gaussian_pk_L_Bk(MixmodCovarianceModelImplementation):
    """Proxy of C++ OTMIXMOD::Gaussian_pk_L_Bk class."""

    __swig_setmethods__ = {}
    for _s in [MixmodCovarianceModelImplementation]:
        __swig_setmethods__.update(getattr(_s, '__swig_setmethods__', {}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, Gaussian_pk_L_Bk, name, value)
    __swig_getmethods__ = {}
    for _s in [MixmodCovarianceModelImplementation]:
        __swig_getmethods__.update(getattr(_s, '__swig_getmethods__', {}))
    __getattr__ = lambda self, name: _swig_getattr(self, Gaussian_pk_L_Bk, name)
    __repr__ = _swig_repr

    def getClassName(self):
        """
        getClassName(Gaussian_pk_L_Bk self) -> OT::String

        Accessor to the object's name.

        Returns
        -------
        class_name : str
            The object class name (`object.__class__.__name__`).
        """
        return _otmixmod.Gaussian_pk_L_Bk_getClassName(self)


    def convertToMixmod(self):
        """convertToMixmod(Gaussian_pk_L_Bk self) -> OT::String"""
        return _otmixmod.Gaussian_pk_L_Bk_convertToMixmod(self)


    def __init__(self, *args):
        """
        __init__(OTMIXMOD::Gaussian_pk_L_Bk self) -> Gaussian_pk_L_Bk
        __init__(OTMIXMOD::Gaussian_pk_L_Bk self, Gaussian_pk_L_Bk other) -> Gaussian_pk_L_Bk
        """
        this = _otmixmod.new_Gaussian_pk_L_Bk(*args)
        try:
            self.this.append(this)
        except __builtin__.Exception:
            self.this = this
    __swig_destroy__ = _otmixmod.delete_Gaussian_pk_L_Bk
    __del__ = lambda self: None
Gaussian_pk_L_Bk_swigregister = _otmixmod.Gaussian_pk_L_Bk_swigregister
Gaussian_pk_L_Bk_swigregister(Gaussian_pk_L_Bk)

class Gaussian_pk_L_C(MixmodCovarianceModelImplementation):
    """Proxy of C++ OTMIXMOD::Gaussian_pk_L_C class."""

    __swig_setmethods__ = {}
    for _s in [MixmodCovarianceModelImplementation]:
        __swig_setmethods__.update(getattr(_s, '__swig_setmethods__', {}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, Gaussian_pk_L_C, name, value)
    __swig_getmethods__ = {}
    for _s in [MixmodCovarianceModelImplementation]:
        __swig_getmethods__.update(getattr(_s, '__swig_getmethods__', {}))
    __getattr__ = lambda self, name: _swig_getattr(self, Gaussian_pk_L_C, name)
    __repr__ = _swig_repr

    def getClassName(self):
        """
        getClassName(Gaussian_pk_L_C self) -> OT::String

        Accessor to the object's name.

        Returns
        -------
        class_name : str
            The object class name (`object.__class__.__name__`).
        """
        return _otmixmod.Gaussian_pk_L_C_getClassName(self)


    def convertToMixmod(self):
        """convertToMixmod(Gaussian_pk_L_C self) -> OT::String"""
        return _otmixmod.Gaussian_pk_L_C_convertToMixmod(self)


    def __init__(self, *args):
        """
        __init__(OTMIXMOD::Gaussian_pk_L_C self) -> Gaussian_pk_L_C
        __init__(OTMIXMOD::Gaussian_pk_L_C self, Gaussian_pk_L_C other) -> Gaussian_pk_L_C
        """
        this = _otmixmod.new_Gaussian_pk_L_C(*args)
        try:
            self.this.append(this)
        except __builtin__.Exception:
            self.this = this
    __swig_destroy__ = _otmixmod.delete_Gaussian_pk_L_C
    __del__ = lambda self: None
Gaussian_pk_L_C_swigregister = _otmixmod.Gaussian_pk_L_C_swigregister
Gaussian_pk_L_C_swigregister(Gaussian_pk_L_C)

class Gaussian_pk_L_Ck(MixmodCovarianceModelImplementation):
    """Proxy of C++ OTMIXMOD::Gaussian_pk_L_Ck class."""

    __swig_setmethods__ = {}
    for _s in [MixmodCovarianceModelImplementation]:
        __swig_setmethods__.update(getattr(_s, '__swig_setmethods__', {}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, Gaussian_pk_L_Ck, name, value)
    __swig_getmethods__ = {}
    for _s in [MixmodCovarianceModelImplementation]:
        __swig_getmethods__.update(getattr(_s, '__swig_getmethods__', {}))
    __getattr__ = lambda self, name: _swig_getattr(self, Gaussian_pk_L_Ck, name)
    __repr__ = _swig_repr

    def getClassName(self):
        """
        getClassName(Gaussian_pk_L_Ck self) -> OT::String

        Accessor to the object's name.

        Returns
        -------
        class_name : str
            The object class name (`object.__class__.__name__`).
        """
        return _otmixmod.Gaussian_pk_L_Ck_getClassName(self)


    def convertToMixmod(self):
        """convertToMixmod(Gaussian_pk_L_Ck self) -> OT::String"""
        return _otmixmod.Gaussian_pk_L_Ck_convertToMixmod(self)


    def __init__(self, *args):
        """
        __init__(OTMIXMOD::Gaussian_pk_L_Ck self) -> Gaussian_pk_L_Ck
        __init__(OTMIXMOD::Gaussian_pk_L_Ck self, Gaussian_pk_L_Ck other) -> Gaussian_pk_L_Ck
        """
        this = _otmixmod.new_Gaussian_pk_L_Ck(*args)
        try:
            self.this.append(this)
        except __builtin__.Exception:
            self.this = this
    __swig_destroy__ = _otmixmod.delete_Gaussian_pk_L_Ck
    __del__ = lambda self: None
Gaussian_pk_L_Ck_swigregister = _otmixmod.Gaussian_pk_L_Ck_swigregister
Gaussian_pk_L_Ck_swigregister(Gaussian_pk_L_Ck)

class Gaussian_pk_L_D_Ak_D(MixmodCovarianceModelImplementation):
    """Proxy of C++ OTMIXMOD::Gaussian_pk_L_D_Ak_D class."""

    __swig_setmethods__ = {}
    for _s in [MixmodCovarianceModelImplementation]:
        __swig_setmethods__.update(getattr(_s, '__swig_setmethods__', {}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, Gaussian_pk_L_D_Ak_D, name, value)
    __swig_getmethods__ = {}
    for _s in [MixmodCovarianceModelImplementation]:
        __swig_getmethods__.update(getattr(_s, '__swig_getmethods__', {}))
    __getattr__ = lambda self, name: _swig_getattr(self, Gaussian_pk_L_D_Ak_D, name)
    __repr__ = _swig_repr

    def getClassName(self):
        """
        getClassName(Gaussian_pk_L_D_Ak_D self) -> OT::String

        Accessor to the object's name.

        Returns
        -------
        class_name : str
            The object class name (`object.__class__.__name__`).
        """
        return _otmixmod.Gaussian_pk_L_D_Ak_D_getClassName(self)


    def convertToMixmod(self):
        """convertToMixmod(Gaussian_pk_L_D_Ak_D self) -> OT::String"""
        return _otmixmod.Gaussian_pk_L_D_Ak_D_convertToMixmod(self)


    def __init__(self, *args):
        """
        __init__(OTMIXMOD::Gaussian_pk_L_D_Ak_D self) -> Gaussian_pk_L_D_Ak_D
        __init__(OTMIXMOD::Gaussian_pk_L_D_Ak_D self, Gaussian_pk_L_D_Ak_D other) -> Gaussian_pk_L_D_Ak_D
        """
        this = _otmixmod.new_Gaussian_pk_L_D_Ak_D(*args)
        try:
            self.this.append(this)
        except __builtin__.Exception:
            self.this = this
    __swig_destroy__ = _otmixmod.delete_Gaussian_pk_L_D_Ak_D
    __del__ = lambda self: None
Gaussian_pk_L_D_Ak_D_swigregister = _otmixmod.Gaussian_pk_L_D_Ak_D_swigregister
Gaussian_pk_L_D_Ak_D_swigregister(Gaussian_pk_L_D_Ak_D)

class Gaussian_pk_L_Dk_A_Dk(MixmodCovarianceModelImplementation):
    """Proxy of C++ OTMIXMOD::Gaussian_pk_L_Dk_A_Dk class."""

    __swig_setmethods__ = {}
    for _s in [MixmodCovarianceModelImplementation]:
        __swig_setmethods__.update(getattr(_s, '__swig_setmethods__', {}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, Gaussian_pk_L_Dk_A_Dk, name, value)
    __swig_getmethods__ = {}
    for _s in [MixmodCovarianceModelImplementation]:
        __swig_getmethods__.update(getattr(_s, '__swig_getmethods__', {}))
    __getattr__ = lambda self, name: _swig_getattr(self, Gaussian_pk_L_Dk_A_Dk, name)
    __repr__ = _swig_repr

    def getClassName(self):
        """
        getClassName(Gaussian_pk_L_Dk_A_Dk self) -> OT::String

        Accessor to the object's name.

        Returns
        -------
        class_name : str
            The object class name (`object.__class__.__name__`).
        """
        return _otmixmod.Gaussian_pk_L_Dk_A_Dk_getClassName(self)


    def convertToMixmod(self):
        """convertToMixmod(Gaussian_pk_L_Dk_A_Dk self) -> OT::String"""
        return _otmixmod.Gaussian_pk_L_Dk_A_Dk_convertToMixmod(self)


    def __init__(self, *args):
        """
        __init__(OTMIXMOD::Gaussian_pk_L_Dk_A_Dk self) -> Gaussian_pk_L_Dk_A_Dk
        __init__(OTMIXMOD::Gaussian_pk_L_Dk_A_Dk self, Gaussian_pk_L_Dk_A_Dk other) -> Gaussian_pk_L_Dk_A_Dk
        """
        this = _otmixmod.new_Gaussian_pk_L_Dk_A_Dk(*args)
        try:
            self.this.append(this)
        except __builtin__.Exception:
            self.this = this
    __swig_destroy__ = _otmixmod.delete_Gaussian_pk_L_Dk_A_Dk
    __del__ = lambda self: None
Gaussian_pk_L_Dk_A_Dk_swigregister = _otmixmod.Gaussian_pk_L_Dk_A_Dk_swigregister
Gaussian_pk_L_Dk_A_Dk_swigregister(Gaussian_pk_L_Dk_A_Dk)

class Gaussian_pk_L_I(MixmodCovarianceModelImplementation):
    """Proxy of C++ OTMIXMOD::Gaussian_pk_L_I class."""

    __swig_setmethods__ = {}
    for _s in [MixmodCovarianceModelImplementation]:
        __swig_setmethods__.update(getattr(_s, '__swig_setmethods__', {}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, Gaussian_pk_L_I, name, value)
    __swig_getmethods__ = {}
    for _s in [MixmodCovarianceModelImplementation]:
        __swig_getmethods__.update(getattr(_s, '__swig_getmethods__', {}))
    __getattr__ = lambda self, name: _swig_getattr(self, Gaussian_pk_L_I, name)
    __repr__ = _swig_repr

    def getClassName(self):
        """
        getClassName(Gaussian_pk_L_I self) -> OT::String

        Accessor to the object's name.

        Returns
        -------
        class_name : str
            The object class name (`object.__class__.__name__`).
        """
        return _otmixmod.Gaussian_pk_L_I_getClassName(self)


    def convertToMixmod(self):
        """convertToMixmod(Gaussian_pk_L_I self) -> OT::String"""
        return _otmixmod.Gaussian_pk_L_I_convertToMixmod(self)


    def __init__(self, *args):
        """
        __init__(OTMIXMOD::Gaussian_pk_L_I self) -> Gaussian_pk_L_I
        __init__(OTMIXMOD::Gaussian_pk_L_I self, Gaussian_pk_L_I other) -> Gaussian_pk_L_I
        """
        this = _otmixmod.new_Gaussian_pk_L_I(*args)
        try:
            self.this.append(this)
        except __builtin__.Exception:
            self.this = this
    __swig_destroy__ = _otmixmod.delete_Gaussian_pk_L_I
    __del__ = lambda self: None
Gaussian_pk_L_I_swigregister = _otmixmod.Gaussian_pk_L_I_swigregister
Gaussian_pk_L_I_swigregister(Gaussian_pk_L_I)

class Gaussian_pk_Lk_B(MixmodCovarianceModelImplementation):
    """Proxy of C++ OTMIXMOD::Gaussian_pk_Lk_B class."""

    __swig_setmethods__ = {}
    for _s in [MixmodCovarianceModelImplementation]:
        __swig_setmethods__.update(getattr(_s, '__swig_setmethods__', {}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, Gaussian_pk_Lk_B, name, value)
    __swig_getmethods__ = {}
    for _s in [MixmodCovarianceModelImplementation]:
        __swig_getmethods__.update(getattr(_s, '__swig_getmethods__', {}))
    __getattr__ = lambda self, name: _swig_getattr(self, Gaussian_pk_Lk_B, name)
    __repr__ = _swig_repr

    def getClassName(self):
        """
        getClassName(Gaussian_pk_Lk_B self) -> OT::String

        Accessor to the object's name.

        Returns
        -------
        class_name : str
            The object class name (`object.__class__.__name__`).
        """
        return _otmixmod.Gaussian_pk_Lk_B_getClassName(self)


    def convertToMixmod(self):
        """convertToMixmod(Gaussian_pk_Lk_B self) -> OT::String"""
        return _otmixmod.Gaussian_pk_Lk_B_convertToMixmod(self)


    def __init__(self, *args):
        """
        __init__(OTMIXMOD::Gaussian_pk_Lk_B self) -> Gaussian_pk_Lk_B
        __init__(OTMIXMOD::Gaussian_pk_Lk_B self, Gaussian_pk_Lk_B other) -> Gaussian_pk_Lk_B
        """
        this = _otmixmod.new_Gaussian_pk_Lk_B(*args)
        try:
            self.this.append(this)
        except __builtin__.Exception:
            self.this = this
    __swig_destroy__ = _otmixmod.delete_Gaussian_pk_Lk_B
    __del__ = lambda self: None
Gaussian_pk_Lk_B_swigregister = _otmixmod.Gaussian_pk_Lk_B_swigregister
Gaussian_pk_Lk_B_swigregister(Gaussian_pk_Lk_B)

class Gaussian_pk_Lk_Bk(MixmodCovarianceModelImplementation):
    """Proxy of C++ OTMIXMOD::Gaussian_pk_Lk_Bk class."""

    __swig_setmethods__ = {}
    for _s in [MixmodCovarianceModelImplementation]:
        __swig_setmethods__.update(getattr(_s, '__swig_setmethods__', {}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, Gaussian_pk_Lk_Bk, name, value)
    __swig_getmethods__ = {}
    for _s in [MixmodCovarianceModelImplementation]:
        __swig_getmethods__.update(getattr(_s, '__swig_getmethods__', {}))
    __getattr__ = lambda self, name: _swig_getattr(self, Gaussian_pk_Lk_Bk, name)
    __repr__ = _swig_repr

    def getClassName(self):
        """
        getClassName(Gaussian_pk_Lk_Bk self) -> OT::String

        Accessor to the object's name.

        Returns
        -------
        class_name : str
            The object class name (`object.__class__.__name__`).
        """
        return _otmixmod.Gaussian_pk_Lk_Bk_getClassName(self)


    def convertToMixmod(self):
        """convertToMixmod(Gaussian_pk_Lk_Bk self) -> OT::String"""
        return _otmixmod.Gaussian_pk_Lk_Bk_convertToMixmod(self)


    def __init__(self, *args):
        """
        __init__(OTMIXMOD::Gaussian_pk_Lk_Bk self) -> Gaussian_pk_Lk_Bk
        __init__(OTMIXMOD::Gaussian_pk_Lk_Bk self, Gaussian_pk_Lk_Bk other) -> Gaussian_pk_Lk_Bk
        """
        this = _otmixmod.new_Gaussian_pk_Lk_Bk(*args)
        try:
            self.this.append(this)
        except __builtin__.Exception:
            self.this = this
    __swig_destroy__ = _otmixmod.delete_Gaussian_pk_Lk_Bk
    __del__ = lambda self: None
Gaussian_pk_Lk_Bk_swigregister = _otmixmod.Gaussian_pk_Lk_Bk_swigregister
Gaussian_pk_Lk_Bk_swigregister(Gaussian_pk_Lk_Bk)

class Gaussian_pk_Lk_C(MixmodCovarianceModelImplementation):
    """Proxy of C++ OTMIXMOD::Gaussian_pk_Lk_C class."""

    __swig_setmethods__ = {}
    for _s in [MixmodCovarianceModelImplementation]:
        __swig_setmethods__.update(getattr(_s, '__swig_setmethods__', {}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, Gaussian_pk_Lk_C, name, value)
    __swig_getmethods__ = {}
    for _s in [MixmodCovarianceModelImplementation]:
        __swig_getmethods__.update(getattr(_s, '__swig_getmethods__', {}))
    __getattr__ = lambda self, name: _swig_getattr(self, Gaussian_pk_Lk_C, name)
    __repr__ = _swig_repr

    def getClassName(self):
        """
        getClassName(Gaussian_pk_Lk_C self) -> OT::String

        Accessor to the object's name.

        Returns
        -------
        class_name : str
            The object class name (`object.__class__.__name__`).
        """
        return _otmixmod.Gaussian_pk_Lk_C_getClassName(self)


    def convertToMixmod(self):
        """convertToMixmod(Gaussian_pk_Lk_C self) -> OT::String"""
        return _otmixmod.Gaussian_pk_Lk_C_convertToMixmod(self)


    def __init__(self, *args):
        """
        __init__(OTMIXMOD::Gaussian_pk_Lk_C self) -> Gaussian_pk_Lk_C
        __init__(OTMIXMOD::Gaussian_pk_Lk_C self, Gaussian_pk_Lk_C other) -> Gaussian_pk_Lk_C
        """
        this = _otmixmod.new_Gaussian_pk_Lk_C(*args)
        try:
            self.this.append(this)
        except __builtin__.Exception:
            self.this = this
    __swig_destroy__ = _otmixmod.delete_Gaussian_pk_Lk_C
    __del__ = lambda self: None
Gaussian_pk_Lk_C_swigregister = _otmixmod.Gaussian_pk_Lk_C_swigregister
Gaussian_pk_Lk_C_swigregister(Gaussian_pk_Lk_C)

class Gaussian_pk_Lk_Ck(MixmodCovarianceModelImplementation):
    """Proxy of C++ OTMIXMOD::Gaussian_pk_Lk_Ck class."""

    __swig_setmethods__ = {}
    for _s in [MixmodCovarianceModelImplementation]:
        __swig_setmethods__.update(getattr(_s, '__swig_setmethods__', {}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, Gaussian_pk_Lk_Ck, name, value)
    __swig_getmethods__ = {}
    for _s in [MixmodCovarianceModelImplementation]:
        __swig_getmethods__.update(getattr(_s, '__swig_getmethods__', {}))
    __getattr__ = lambda self, name: _swig_getattr(self, Gaussian_pk_Lk_Ck, name)
    __repr__ = _swig_repr

    def getClassName(self):
        """
        getClassName(Gaussian_pk_Lk_Ck self) -> OT::String

        Accessor to the object's name.

        Returns
        -------
        class_name : str
            The object class name (`object.__class__.__name__`).
        """
        return _otmixmod.Gaussian_pk_Lk_Ck_getClassName(self)


    def convertToMixmod(self):
        """convertToMixmod(Gaussian_pk_Lk_Ck self) -> OT::String"""
        return _otmixmod.Gaussian_pk_Lk_Ck_convertToMixmod(self)


    def __init__(self, *args):
        """
        __init__(OTMIXMOD::Gaussian_pk_Lk_Ck self) -> Gaussian_pk_Lk_Ck
        __init__(OTMIXMOD::Gaussian_pk_Lk_Ck self, Gaussian_pk_Lk_Ck other) -> Gaussian_pk_Lk_Ck
        """
        this = _otmixmod.new_Gaussian_pk_Lk_Ck(*args)
        try:
            self.this.append(this)
        except __builtin__.Exception:
            self.this = this
    __swig_destroy__ = _otmixmod.delete_Gaussian_pk_Lk_Ck
    __del__ = lambda self: None
Gaussian_pk_Lk_Ck_swigregister = _otmixmod.Gaussian_pk_Lk_Ck_swigregister
Gaussian_pk_Lk_Ck_swigregister(Gaussian_pk_Lk_Ck)

class Gaussian_pk_Lk_D_Ak_D(MixmodCovarianceModelImplementation):
    """Proxy of C++ OTMIXMOD::Gaussian_pk_Lk_D_Ak_D class."""

    __swig_setmethods__ = {}
    for _s in [MixmodCovarianceModelImplementation]:
        __swig_setmethods__.update(getattr(_s, '__swig_setmethods__', {}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, Gaussian_pk_Lk_D_Ak_D, name, value)
    __swig_getmethods__ = {}
    for _s in [MixmodCovarianceModelImplementation]:
        __swig_getmethods__.update(getattr(_s, '__swig_getmethods__', {}))
    __getattr__ = lambda self, name: _swig_getattr(self, Gaussian_pk_Lk_D_Ak_D, name)
    __repr__ = _swig_repr

    def getClassName(self):
        """
        getClassName(Gaussian_pk_Lk_D_Ak_D self) -> OT::String

        Accessor to the object's name.

        Returns
        -------
        class_name : str
            The object class name (`object.__class__.__name__`).
        """
        return _otmixmod.Gaussian_pk_Lk_D_Ak_D_getClassName(self)


    def convertToMixmod(self):
        """convertToMixmod(Gaussian_pk_Lk_D_Ak_D self) -> OT::String"""
        return _otmixmod.Gaussian_pk_Lk_D_Ak_D_convertToMixmod(self)


    def __init__(self, *args):
        """
        __init__(OTMIXMOD::Gaussian_pk_Lk_D_Ak_D self) -> Gaussian_pk_Lk_D_Ak_D
        __init__(OTMIXMOD::Gaussian_pk_Lk_D_Ak_D self, Gaussian_pk_Lk_D_Ak_D other) -> Gaussian_pk_Lk_D_Ak_D
        """
        this = _otmixmod.new_Gaussian_pk_Lk_D_Ak_D(*args)
        try:
            self.this.append(this)
        except __builtin__.Exception:
            self.this = this
    __swig_destroy__ = _otmixmod.delete_Gaussian_pk_Lk_D_Ak_D
    __del__ = lambda self: None
Gaussian_pk_Lk_D_Ak_D_swigregister = _otmixmod.Gaussian_pk_Lk_D_Ak_D_swigregister
Gaussian_pk_Lk_D_Ak_D_swigregister(Gaussian_pk_Lk_D_Ak_D)

class Gaussian_pk_Lk_Dk_A_Dk(MixmodCovarianceModelImplementation):
    """Proxy of C++ OTMIXMOD::Gaussian_pk_Lk_Dk_A_Dk class."""

    __swig_setmethods__ = {}
    for _s in [MixmodCovarianceModelImplementation]:
        __swig_setmethods__.update(getattr(_s, '__swig_setmethods__', {}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, Gaussian_pk_Lk_Dk_A_Dk, name, value)
    __swig_getmethods__ = {}
    for _s in [MixmodCovarianceModelImplementation]:
        __swig_getmethods__.update(getattr(_s, '__swig_getmethods__', {}))
    __getattr__ = lambda self, name: _swig_getattr(self, Gaussian_pk_Lk_Dk_A_Dk, name)
    __repr__ = _swig_repr

    def getClassName(self):
        """
        getClassName(Gaussian_pk_Lk_Dk_A_Dk self) -> OT::String

        Accessor to the object's name.

        Returns
        -------
        class_name : str
            The object class name (`object.__class__.__name__`).
        """
        return _otmixmod.Gaussian_pk_Lk_Dk_A_Dk_getClassName(self)


    def convertToMixmod(self):
        """convertToMixmod(Gaussian_pk_Lk_Dk_A_Dk self) -> OT::String"""
        return _otmixmod.Gaussian_pk_Lk_Dk_A_Dk_convertToMixmod(self)


    def __init__(self, *args):
        """
        __init__(OTMIXMOD::Gaussian_pk_Lk_Dk_A_Dk self) -> Gaussian_pk_Lk_Dk_A_Dk
        __init__(OTMIXMOD::Gaussian_pk_Lk_Dk_A_Dk self, Gaussian_pk_Lk_Dk_A_Dk other) -> Gaussian_pk_Lk_Dk_A_Dk
        """
        this = _otmixmod.new_Gaussian_pk_Lk_Dk_A_Dk(*args)
        try:
            self.this.append(this)
        except __builtin__.Exception:
            self.this = this
    __swig_destroy__ = _otmixmod.delete_Gaussian_pk_Lk_Dk_A_Dk
    __del__ = lambda self: None
Gaussian_pk_Lk_Dk_A_Dk_swigregister = _otmixmod.Gaussian_pk_Lk_Dk_A_Dk_swigregister
Gaussian_pk_Lk_Dk_A_Dk_swigregister(Gaussian_pk_Lk_Dk_A_Dk)

class Gaussian_pk_Lk_I(MixmodCovarianceModelImplementation):
    """Proxy of C++ OTMIXMOD::Gaussian_pk_Lk_I class."""

    __swig_setmethods__ = {}
    for _s in [MixmodCovarianceModelImplementation]:
        __swig_setmethods__.update(getattr(_s, '__swig_setmethods__', {}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, Gaussian_pk_Lk_I, name, value)
    __swig_getmethods__ = {}
    for _s in [MixmodCovarianceModelImplementation]:
        __swig_getmethods__.update(getattr(_s, '__swig_getmethods__', {}))
    __getattr__ = lambda self, name: _swig_getattr(self, Gaussian_pk_Lk_I, name)
    __repr__ = _swig_repr

    def getClassName(self):
        """
        getClassName(Gaussian_pk_Lk_I self) -> OT::String

        Accessor to the object's name.

        Returns
        -------
        class_name : str
            The object class name (`object.__class__.__name__`).
        """
        return _otmixmod.Gaussian_pk_Lk_I_getClassName(self)


    def convertToMixmod(self):
        """convertToMixmod(Gaussian_pk_Lk_I self) -> OT::String"""
        return _otmixmod.Gaussian_pk_Lk_I_convertToMixmod(self)


    def __init__(self, *args):
        """
        __init__(OTMIXMOD::Gaussian_pk_Lk_I self) -> Gaussian_pk_Lk_I
        __init__(OTMIXMOD::Gaussian_pk_Lk_I self, Gaussian_pk_Lk_I other) -> Gaussian_pk_Lk_I
        """
        this = _otmixmod.new_Gaussian_pk_Lk_I(*args)
        try:
            self.this.append(this)
        except __builtin__.Exception:
            self.this = this
    __swig_destroy__ = _otmixmod.delete_Gaussian_pk_Lk_I
    __del__ = lambda self: None
Gaussian_pk_Lk_I_swigregister = _otmixmod.Gaussian_pk_Lk_I_swigregister
Gaussian_pk_Lk_I_swigregister(Gaussian_pk_Lk_I)

class Gaussian_p_L_B(MixmodCovarianceModelImplementation):
    """Proxy of C++ OTMIXMOD::Gaussian_p_L_B class."""

    __swig_setmethods__ = {}
    for _s in [MixmodCovarianceModelImplementation]:
        __swig_setmethods__.update(getattr(_s, '__swig_setmethods__', {}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, Gaussian_p_L_B, name, value)
    __swig_getmethods__ = {}
    for _s in [MixmodCovarianceModelImplementation]:
        __swig_getmethods__.update(getattr(_s, '__swig_getmethods__', {}))
    __getattr__ = lambda self, name: _swig_getattr(self, Gaussian_p_L_B, name)
    __repr__ = _swig_repr

    def getClassName(self):
        """
        getClassName(Gaussian_p_L_B self) -> OT::String

        Accessor to the object's name.

        Returns
        -------
        class_name : str
            The object class name (`object.__class__.__name__`).
        """
        return _otmixmod.Gaussian_p_L_B_getClassName(self)


    def convertToMixmod(self):
        """convertToMixmod(Gaussian_p_L_B self) -> OT::String"""
        return _otmixmod.Gaussian_p_L_B_convertToMixmod(self)


    def __init__(self, *args):
        """
        __init__(OTMIXMOD::Gaussian_p_L_B self) -> Gaussian_p_L_B
        __init__(OTMIXMOD::Gaussian_p_L_B self, Gaussian_p_L_B other) -> Gaussian_p_L_B
        """
        this = _otmixmod.new_Gaussian_p_L_B(*args)
        try:
            self.this.append(this)
        except __builtin__.Exception:
            self.this = this
    __swig_destroy__ = _otmixmod.delete_Gaussian_p_L_B
    __del__ = lambda self: None
Gaussian_p_L_B_swigregister = _otmixmod.Gaussian_p_L_B_swigregister
Gaussian_p_L_B_swigregister(Gaussian_p_L_B)

class Gaussian_p_L_Bk(MixmodCovarianceModelImplementation):
    """Proxy of C++ OTMIXMOD::Gaussian_p_L_Bk class."""

    __swig_setmethods__ = {}
    for _s in [MixmodCovarianceModelImplementation]:
        __swig_setmethods__.update(getattr(_s, '__swig_setmethods__', {}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, Gaussian_p_L_Bk, name, value)
    __swig_getmethods__ = {}
    for _s in [MixmodCovarianceModelImplementation]:
        __swig_getmethods__.update(getattr(_s, '__swig_getmethods__', {}))
    __getattr__ = lambda self, name: _swig_getattr(self, Gaussian_p_L_Bk, name)
    __repr__ = _swig_repr

    def getClassName(self):
        """
        getClassName(Gaussian_p_L_Bk self) -> OT::String

        Accessor to the object's name.

        Returns
        -------
        class_name : str
            The object class name (`object.__class__.__name__`).
        """
        return _otmixmod.Gaussian_p_L_Bk_getClassName(self)


    def convertToMixmod(self):
        """convertToMixmod(Gaussian_p_L_Bk self) -> OT::String"""
        return _otmixmod.Gaussian_p_L_Bk_convertToMixmod(self)


    def __init__(self, *args):
        """
        __init__(OTMIXMOD::Gaussian_p_L_Bk self) -> Gaussian_p_L_Bk
        __init__(OTMIXMOD::Gaussian_p_L_Bk self, Gaussian_p_L_Bk other) -> Gaussian_p_L_Bk
        """
        this = _otmixmod.new_Gaussian_p_L_Bk(*args)
        try:
            self.this.append(this)
        except __builtin__.Exception:
            self.this = this
    __swig_destroy__ = _otmixmod.delete_Gaussian_p_L_Bk
    __del__ = lambda self: None
Gaussian_p_L_Bk_swigregister = _otmixmod.Gaussian_p_L_Bk_swigregister
Gaussian_p_L_Bk_swigregister(Gaussian_p_L_Bk)

class Gaussian_p_L_C(MixmodCovarianceModelImplementation):
    """Proxy of C++ OTMIXMOD::Gaussian_p_L_C class."""

    __swig_setmethods__ = {}
    for _s in [MixmodCovarianceModelImplementation]:
        __swig_setmethods__.update(getattr(_s, '__swig_setmethods__', {}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, Gaussian_p_L_C, name, value)
    __swig_getmethods__ = {}
    for _s in [MixmodCovarianceModelImplementation]:
        __swig_getmethods__.update(getattr(_s, '__swig_getmethods__', {}))
    __getattr__ = lambda self, name: _swig_getattr(self, Gaussian_p_L_C, name)
    __repr__ = _swig_repr

    def getClassName(self):
        """
        getClassName(Gaussian_p_L_C self) -> OT::String

        Accessor to the object's name.

        Returns
        -------
        class_name : str
            The object class name (`object.__class__.__name__`).
        """
        return _otmixmod.Gaussian_p_L_C_getClassName(self)


    def convertToMixmod(self):
        """convertToMixmod(Gaussian_p_L_C self) -> OT::String"""
        return _otmixmod.Gaussian_p_L_C_convertToMixmod(self)


    def __init__(self, *args):
        """
        __init__(OTMIXMOD::Gaussian_p_L_C self) -> Gaussian_p_L_C
        __init__(OTMIXMOD::Gaussian_p_L_C self, Gaussian_p_L_C other) -> Gaussian_p_L_C
        """
        this = _otmixmod.new_Gaussian_p_L_C(*args)
        try:
            self.this.append(this)
        except __builtin__.Exception:
            self.this = this
    __swig_destroy__ = _otmixmod.delete_Gaussian_p_L_C
    __del__ = lambda self: None
Gaussian_p_L_C_swigregister = _otmixmod.Gaussian_p_L_C_swigregister
Gaussian_p_L_C_swigregister(Gaussian_p_L_C)

class Gaussian_p_L_Ck(MixmodCovarianceModelImplementation):
    """Proxy of C++ OTMIXMOD::Gaussian_p_L_Ck class."""

    __swig_setmethods__ = {}
    for _s in [MixmodCovarianceModelImplementation]:
        __swig_setmethods__.update(getattr(_s, '__swig_setmethods__', {}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, Gaussian_p_L_Ck, name, value)
    __swig_getmethods__ = {}
    for _s in [MixmodCovarianceModelImplementation]:
        __swig_getmethods__.update(getattr(_s, '__swig_getmethods__', {}))
    __getattr__ = lambda self, name: _swig_getattr(self, Gaussian_p_L_Ck, name)
    __repr__ = _swig_repr

    def getClassName(self):
        """
        getClassName(Gaussian_p_L_Ck self) -> OT::String

        Accessor to the object's name.

        Returns
        -------
        class_name : str
            The object class name (`object.__class__.__name__`).
        """
        return _otmixmod.Gaussian_p_L_Ck_getClassName(self)


    def convertToMixmod(self):
        """convertToMixmod(Gaussian_p_L_Ck self) -> OT::String"""
        return _otmixmod.Gaussian_p_L_Ck_convertToMixmod(self)


    def __init__(self, *args):
        """
        __init__(OTMIXMOD::Gaussian_p_L_Ck self) -> Gaussian_p_L_Ck
        __init__(OTMIXMOD::Gaussian_p_L_Ck self, Gaussian_p_L_Ck other) -> Gaussian_p_L_Ck
        """
        this = _otmixmod.new_Gaussian_p_L_Ck(*args)
        try:
            self.this.append(this)
        except __builtin__.Exception:
            self.this = this
    __swig_destroy__ = _otmixmod.delete_Gaussian_p_L_Ck
    __del__ = lambda self: None
Gaussian_p_L_Ck_swigregister = _otmixmod.Gaussian_p_L_Ck_swigregister
Gaussian_p_L_Ck_swigregister(Gaussian_p_L_Ck)

class Gaussian_p_L_D_Ak_D(MixmodCovarianceModelImplementation):
    """Proxy of C++ OTMIXMOD::Gaussian_p_L_D_Ak_D class."""

    __swig_setmethods__ = {}
    for _s in [MixmodCovarianceModelImplementation]:
        __swig_setmethods__.update(getattr(_s, '__swig_setmethods__', {}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, Gaussian_p_L_D_Ak_D, name, value)
    __swig_getmethods__ = {}
    for _s in [MixmodCovarianceModelImplementation]:
        __swig_getmethods__.update(getattr(_s, '__swig_getmethods__', {}))
    __getattr__ = lambda self, name: _swig_getattr(self, Gaussian_p_L_D_Ak_D, name)
    __repr__ = _swig_repr

    def getClassName(self):
        """
        getClassName(Gaussian_p_L_D_Ak_D self) -> OT::String

        Accessor to the object's name.

        Returns
        -------
        class_name : str
            The object class name (`object.__class__.__name__`).
        """
        return _otmixmod.Gaussian_p_L_D_Ak_D_getClassName(self)


    def convertToMixmod(self):
        """convertToMixmod(Gaussian_p_L_D_Ak_D self) -> OT::String"""
        return _otmixmod.Gaussian_p_L_D_Ak_D_convertToMixmod(self)


    def __init__(self, *args):
        """
        __init__(OTMIXMOD::Gaussian_p_L_D_Ak_D self) -> Gaussian_p_L_D_Ak_D
        __init__(OTMIXMOD::Gaussian_p_L_D_Ak_D self, Gaussian_p_L_D_Ak_D other) -> Gaussian_p_L_D_Ak_D
        """
        this = _otmixmod.new_Gaussian_p_L_D_Ak_D(*args)
        try:
            self.this.append(this)
        except __builtin__.Exception:
            self.this = this
    __swig_destroy__ = _otmixmod.delete_Gaussian_p_L_D_Ak_D
    __del__ = lambda self: None
Gaussian_p_L_D_Ak_D_swigregister = _otmixmod.Gaussian_p_L_D_Ak_D_swigregister
Gaussian_p_L_D_Ak_D_swigregister(Gaussian_p_L_D_Ak_D)

class Gaussian_p_L_Dk_A_Dk(MixmodCovarianceModelImplementation):
    """Proxy of C++ OTMIXMOD::Gaussian_p_L_Dk_A_Dk class."""

    __swig_setmethods__ = {}
    for _s in [MixmodCovarianceModelImplementation]:
        __swig_setmethods__.update(getattr(_s, '__swig_setmethods__', {}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, Gaussian_p_L_Dk_A_Dk, name, value)
    __swig_getmethods__ = {}
    for _s in [MixmodCovarianceModelImplementation]:
        __swig_getmethods__.update(getattr(_s, '__swig_getmethods__', {}))
    __getattr__ = lambda self, name: _swig_getattr(self, Gaussian_p_L_Dk_A_Dk, name)
    __repr__ = _swig_repr

    def getClassName(self):
        """
        getClassName(Gaussian_p_L_Dk_A_Dk self) -> OT::String

        Accessor to the object's name.

        Returns
        -------
        class_name : str
            The object class name (`object.__class__.__name__`).
        """
        return _otmixmod.Gaussian_p_L_Dk_A_Dk_getClassName(self)


    def convertToMixmod(self):
        """convertToMixmod(Gaussian_p_L_Dk_A_Dk self) -> OT::String"""
        return _otmixmod.Gaussian_p_L_Dk_A_Dk_convertToMixmod(self)


    def __init__(self, *args):
        """
        __init__(OTMIXMOD::Gaussian_p_L_Dk_A_Dk self) -> Gaussian_p_L_Dk_A_Dk
        __init__(OTMIXMOD::Gaussian_p_L_Dk_A_Dk self, Gaussian_p_L_Dk_A_Dk other) -> Gaussian_p_L_Dk_A_Dk
        """
        this = _otmixmod.new_Gaussian_p_L_Dk_A_Dk(*args)
        try:
            self.this.append(this)
        except __builtin__.Exception:
            self.this = this
    __swig_destroy__ = _otmixmod.delete_Gaussian_p_L_Dk_A_Dk
    __del__ = lambda self: None
Gaussian_p_L_Dk_A_Dk_swigregister = _otmixmod.Gaussian_p_L_Dk_A_Dk_swigregister
Gaussian_p_L_Dk_A_Dk_swigregister(Gaussian_p_L_Dk_A_Dk)

class Gaussian_p_L_I(MixmodCovarianceModelImplementation):
    """Proxy of C++ OTMIXMOD::Gaussian_p_L_I class."""

    __swig_setmethods__ = {}
    for _s in [MixmodCovarianceModelImplementation]:
        __swig_setmethods__.update(getattr(_s, '__swig_setmethods__', {}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, Gaussian_p_L_I, name, value)
    __swig_getmethods__ = {}
    for _s in [MixmodCovarianceModelImplementation]:
        __swig_getmethods__.update(getattr(_s, '__swig_getmethods__', {}))
    __getattr__ = lambda self, name: _swig_getattr(self, Gaussian_p_L_I, name)
    __repr__ = _swig_repr

    def getClassName(self):
        """
        getClassName(Gaussian_p_L_I self) -> OT::String

        Accessor to the object's name.

        Returns
        -------
        class_name : str
            The object class name (`object.__class__.__name__`).
        """
        return _otmixmod.Gaussian_p_L_I_getClassName(self)


    def convertToMixmod(self):
        """convertToMixmod(Gaussian_p_L_I self) -> OT::String"""
        return _otmixmod.Gaussian_p_L_I_convertToMixmod(self)


    def __init__(self, *args):
        """
        __init__(OTMIXMOD::Gaussian_p_L_I self) -> Gaussian_p_L_I
        __init__(OTMIXMOD::Gaussian_p_L_I self, Gaussian_p_L_I other) -> Gaussian_p_L_I
        """
        this = _otmixmod.new_Gaussian_p_L_I(*args)
        try:
            self.this.append(this)
        except __builtin__.Exception:
            self.this = this
    __swig_destroy__ = _otmixmod.delete_Gaussian_p_L_I
    __del__ = lambda self: None
Gaussian_p_L_I_swigregister = _otmixmod.Gaussian_p_L_I_swigregister
Gaussian_p_L_I_swigregister(Gaussian_p_L_I)

class Gaussian_p_Lk_B(MixmodCovarianceModelImplementation):
    """Proxy of C++ OTMIXMOD::Gaussian_p_Lk_B class."""

    __swig_setmethods__ = {}
    for _s in [MixmodCovarianceModelImplementation]:
        __swig_setmethods__.update(getattr(_s, '__swig_setmethods__', {}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, Gaussian_p_Lk_B, name, value)
    __swig_getmethods__ = {}
    for _s in [MixmodCovarianceModelImplementation]:
        __swig_getmethods__.update(getattr(_s, '__swig_getmethods__', {}))
    __getattr__ = lambda self, name: _swig_getattr(self, Gaussian_p_Lk_B, name)
    __repr__ = _swig_repr

    def getClassName(self):
        """
        getClassName(Gaussian_p_Lk_B self) -> OT::String

        Accessor to the object's name.

        Returns
        -------
        class_name : str
            The object class name (`object.__class__.__name__`).
        """
        return _otmixmod.Gaussian_p_Lk_B_getClassName(self)


    def convertToMixmod(self):
        """convertToMixmod(Gaussian_p_Lk_B self) -> OT::String"""
        return _otmixmod.Gaussian_p_Lk_B_convertToMixmod(self)


    def __init__(self, *args):
        """
        __init__(OTMIXMOD::Gaussian_p_Lk_B self) -> Gaussian_p_Lk_B
        __init__(OTMIXMOD::Gaussian_p_Lk_B self, Gaussian_p_Lk_B other) -> Gaussian_p_Lk_B
        """
        this = _otmixmod.new_Gaussian_p_Lk_B(*args)
        try:
            self.this.append(this)
        except __builtin__.Exception:
            self.this = this
    __swig_destroy__ = _otmixmod.delete_Gaussian_p_Lk_B
    __del__ = lambda self: None
Gaussian_p_Lk_B_swigregister = _otmixmod.Gaussian_p_Lk_B_swigregister
Gaussian_p_Lk_B_swigregister(Gaussian_p_Lk_B)

class Gaussian_p_Lk_Bk(MixmodCovarianceModelImplementation):
    """Proxy of C++ OTMIXMOD::Gaussian_p_Lk_Bk class."""

    __swig_setmethods__ = {}
    for _s in [MixmodCovarianceModelImplementation]:
        __swig_setmethods__.update(getattr(_s, '__swig_setmethods__', {}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, Gaussian_p_Lk_Bk, name, value)
    __swig_getmethods__ = {}
    for _s in [MixmodCovarianceModelImplementation]:
        __swig_getmethods__.update(getattr(_s, '__swig_getmethods__', {}))
    __getattr__ = lambda self, name: _swig_getattr(self, Gaussian_p_Lk_Bk, name)
    __repr__ = _swig_repr

    def getClassName(self):
        """
        getClassName(Gaussian_p_Lk_Bk self) -> OT::String

        Accessor to the object's name.

        Returns
        -------
        class_name : str
            The object class name (`object.__class__.__name__`).
        """
        return _otmixmod.Gaussian_p_Lk_Bk_getClassName(self)


    def convertToMixmod(self):
        """convertToMixmod(Gaussian_p_Lk_Bk self) -> OT::String"""
        return _otmixmod.Gaussian_p_Lk_Bk_convertToMixmod(self)


    def __init__(self, *args):
        """
        __init__(OTMIXMOD::Gaussian_p_Lk_Bk self) -> Gaussian_p_Lk_Bk
        __init__(OTMIXMOD::Gaussian_p_Lk_Bk self, Gaussian_p_Lk_Bk other) -> Gaussian_p_Lk_Bk
        """
        this = _otmixmod.new_Gaussian_p_Lk_Bk(*args)
        try:
            self.this.append(this)
        except __builtin__.Exception:
            self.this = this
    __swig_destroy__ = _otmixmod.delete_Gaussian_p_Lk_Bk
    __del__ = lambda self: None
Gaussian_p_Lk_Bk_swigregister = _otmixmod.Gaussian_p_Lk_Bk_swigregister
Gaussian_p_Lk_Bk_swigregister(Gaussian_p_Lk_Bk)

class Gaussian_p_Lk_C(MixmodCovarianceModelImplementation):
    """Proxy of C++ OTMIXMOD::Gaussian_p_Lk_C class."""

    __swig_setmethods__ = {}
    for _s in [MixmodCovarianceModelImplementation]:
        __swig_setmethods__.update(getattr(_s, '__swig_setmethods__', {}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, Gaussian_p_Lk_C, name, value)
    __swig_getmethods__ = {}
    for _s in [MixmodCovarianceModelImplementation]:
        __swig_getmethods__.update(getattr(_s, '__swig_getmethods__', {}))
    __getattr__ = lambda self, name: _swig_getattr(self, Gaussian_p_Lk_C, name)
    __repr__ = _swig_repr

    def getClassName(self):
        """
        getClassName(Gaussian_p_Lk_C self) -> OT::String

        Accessor to the object's name.

        Returns
        -------
        class_name : str
            The object class name (`object.__class__.__name__`).
        """
        return _otmixmod.Gaussian_p_Lk_C_getClassName(self)


    def convertToMixmod(self):
        """convertToMixmod(Gaussian_p_Lk_C self) -> OT::String"""
        return _otmixmod.Gaussian_p_Lk_C_convertToMixmod(self)


    def __init__(self, *args):
        """
        __init__(OTMIXMOD::Gaussian_p_Lk_C self) -> Gaussian_p_Lk_C
        __init__(OTMIXMOD::Gaussian_p_Lk_C self, Gaussian_p_Lk_C other) -> Gaussian_p_Lk_C
        """
        this = _otmixmod.new_Gaussian_p_Lk_C(*args)
        try:
            self.this.append(this)
        except __builtin__.Exception:
            self.this = this
    __swig_destroy__ = _otmixmod.delete_Gaussian_p_Lk_C
    __del__ = lambda self: None
Gaussian_p_Lk_C_swigregister = _otmixmod.Gaussian_p_Lk_C_swigregister
Gaussian_p_Lk_C_swigregister(Gaussian_p_Lk_C)

class Gaussian_p_Lk_Ck(MixmodCovarianceModelImplementation):
    """Proxy of C++ OTMIXMOD::Gaussian_p_Lk_Ck class."""

    __swig_setmethods__ = {}
    for _s in [MixmodCovarianceModelImplementation]:
        __swig_setmethods__.update(getattr(_s, '__swig_setmethods__', {}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, Gaussian_p_Lk_Ck, name, value)
    __swig_getmethods__ = {}
    for _s in [MixmodCovarianceModelImplementation]:
        __swig_getmethods__.update(getattr(_s, '__swig_getmethods__', {}))
    __getattr__ = lambda self, name: _swig_getattr(self, Gaussian_p_Lk_Ck, name)
    __repr__ = _swig_repr

    def getClassName(self):
        """
        getClassName(Gaussian_p_Lk_Ck self) -> OT::String

        Accessor to the object's name.

        Returns
        -------
        class_name : str
            The object class name (`object.__class__.__name__`).
        """
        return _otmixmod.Gaussian_p_Lk_Ck_getClassName(self)


    def convertToMixmod(self):
        """convertToMixmod(Gaussian_p_Lk_Ck self) -> OT::String"""
        return _otmixmod.Gaussian_p_Lk_Ck_convertToMixmod(self)


    def __init__(self, *args):
        """
        __init__(OTMIXMOD::Gaussian_p_Lk_Ck self) -> Gaussian_p_Lk_Ck
        __init__(OTMIXMOD::Gaussian_p_Lk_Ck self, Gaussian_p_Lk_Ck other) -> Gaussian_p_Lk_Ck
        """
        this = _otmixmod.new_Gaussian_p_Lk_Ck(*args)
        try:
            self.this.append(this)
        except __builtin__.Exception:
            self.this = this
    __swig_destroy__ = _otmixmod.delete_Gaussian_p_Lk_Ck
    __del__ = lambda self: None
Gaussian_p_Lk_Ck_swigregister = _otmixmod.Gaussian_p_Lk_Ck_swigregister
Gaussian_p_Lk_Ck_swigregister(Gaussian_p_Lk_Ck)

class Gaussian_p_Lk_D_Ak_D(MixmodCovarianceModelImplementation):
    """Proxy of C++ OTMIXMOD::Gaussian_p_Lk_D_Ak_D class."""

    __swig_setmethods__ = {}
    for _s in [MixmodCovarianceModelImplementation]:
        __swig_setmethods__.update(getattr(_s, '__swig_setmethods__', {}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, Gaussian_p_Lk_D_Ak_D, name, value)
    __swig_getmethods__ = {}
    for _s in [MixmodCovarianceModelImplementation]:
        __swig_getmethods__.update(getattr(_s, '__swig_getmethods__', {}))
    __getattr__ = lambda self, name: _swig_getattr(self, Gaussian_p_Lk_D_Ak_D, name)
    __repr__ = _swig_repr

    def getClassName(self):
        """
        getClassName(Gaussian_p_Lk_D_Ak_D self) -> OT::String

        Accessor to the object's name.

        Returns
        -------
        class_name : str
            The object class name (`object.__class__.__name__`).
        """
        return _otmixmod.Gaussian_p_Lk_D_Ak_D_getClassName(self)


    def convertToMixmod(self):
        """convertToMixmod(Gaussian_p_Lk_D_Ak_D self) -> OT::String"""
        return _otmixmod.Gaussian_p_Lk_D_Ak_D_convertToMixmod(self)


    def __init__(self, *args):
        """
        __init__(OTMIXMOD::Gaussian_p_Lk_D_Ak_D self) -> Gaussian_p_Lk_D_Ak_D
        __init__(OTMIXMOD::Gaussian_p_Lk_D_Ak_D self, Gaussian_p_Lk_D_Ak_D other) -> Gaussian_p_Lk_D_Ak_D
        """
        this = _otmixmod.new_Gaussian_p_Lk_D_Ak_D(*args)
        try:
            self.this.append(this)
        except __builtin__.Exception:
            self.this = this
    __swig_destroy__ = _otmixmod.delete_Gaussian_p_Lk_D_Ak_D
    __del__ = lambda self: None
Gaussian_p_Lk_D_Ak_D_swigregister = _otmixmod.Gaussian_p_Lk_D_Ak_D_swigregister
Gaussian_p_Lk_D_Ak_D_swigregister(Gaussian_p_Lk_D_Ak_D)

class Gaussian_p_Lk_Dk_A_Dk(MixmodCovarianceModelImplementation):
    """Proxy of C++ OTMIXMOD::Gaussian_p_Lk_Dk_A_Dk class."""

    __swig_setmethods__ = {}
    for _s in [MixmodCovarianceModelImplementation]:
        __swig_setmethods__.update(getattr(_s, '__swig_setmethods__', {}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, Gaussian_p_Lk_Dk_A_Dk, name, value)
    __swig_getmethods__ = {}
    for _s in [MixmodCovarianceModelImplementation]:
        __swig_getmethods__.update(getattr(_s, '__swig_getmethods__', {}))
    __getattr__ = lambda self, name: _swig_getattr(self, Gaussian_p_Lk_Dk_A_Dk, name)
    __repr__ = _swig_repr

    def getClassName(self):
        """
        getClassName(Gaussian_p_Lk_Dk_A_Dk self) -> OT::String

        Accessor to the object's name.

        Returns
        -------
        class_name : str
            The object class name (`object.__class__.__name__`).
        """
        return _otmixmod.Gaussian_p_Lk_Dk_A_Dk_getClassName(self)


    def convertToMixmod(self):
        """convertToMixmod(Gaussian_p_Lk_Dk_A_Dk self) -> OT::String"""
        return _otmixmod.Gaussian_p_Lk_Dk_A_Dk_convertToMixmod(self)


    def __init__(self, *args):
        """
        __init__(OTMIXMOD::Gaussian_p_Lk_Dk_A_Dk self) -> Gaussian_p_Lk_Dk_A_Dk
        __init__(OTMIXMOD::Gaussian_p_Lk_Dk_A_Dk self, Gaussian_p_Lk_Dk_A_Dk other) -> Gaussian_p_Lk_Dk_A_Dk
        """
        this = _otmixmod.new_Gaussian_p_Lk_Dk_A_Dk(*args)
        try:
            self.this.append(this)
        except __builtin__.Exception:
            self.this = this
    __swig_destroy__ = _otmixmod.delete_Gaussian_p_Lk_Dk_A_Dk
    __del__ = lambda self: None
Gaussian_p_Lk_Dk_A_Dk_swigregister = _otmixmod.Gaussian_p_Lk_Dk_A_Dk_swigregister
Gaussian_p_Lk_Dk_A_Dk_swigregister(Gaussian_p_Lk_Dk_A_Dk)

class Gaussian_p_Lk_I(MixmodCovarianceModelImplementation):
    """Proxy of C++ OTMIXMOD::Gaussian_p_Lk_I class."""

    __swig_setmethods__ = {}
    for _s in [MixmodCovarianceModelImplementation]:
        __swig_setmethods__.update(getattr(_s, '__swig_setmethods__', {}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, Gaussian_p_Lk_I, name, value)
    __swig_getmethods__ = {}
    for _s in [MixmodCovarianceModelImplementation]:
        __swig_getmethods__.update(getattr(_s, '__swig_getmethods__', {}))
    __getattr__ = lambda self, name: _swig_getattr(self, Gaussian_p_Lk_I, name)
    __repr__ = _swig_repr

    def getClassName(self):
        """
        getClassName(Gaussian_p_Lk_I self) -> OT::String

        Accessor to the object's name.

        Returns
        -------
        class_name : str
            The object class name (`object.__class__.__name__`).
        """
        return _otmixmod.Gaussian_p_Lk_I_getClassName(self)


    def convertToMixmod(self):
        """convertToMixmod(Gaussian_p_Lk_I self) -> OT::String"""
        return _otmixmod.Gaussian_p_Lk_I_convertToMixmod(self)


    def __init__(self, *args):
        """
        __init__(OTMIXMOD::Gaussian_p_Lk_I self) -> Gaussian_p_Lk_I
        __init__(OTMIXMOD::Gaussian_p_Lk_I self, Gaussian_p_Lk_I other) -> Gaussian_p_Lk_I
        """
        this = _otmixmod.new_Gaussian_p_Lk_I(*args)
        try:
            self.this.append(this)
        except __builtin__.Exception:
            self.this = this
    __swig_destroy__ = _otmixmod.delete_Gaussian_p_Lk_I
    __del__ = lambda self: None
Gaussian_p_Lk_I_swigregister = _otmixmod.Gaussian_p_Lk_I_swigregister
Gaussian_p_Lk_I_swigregister(Gaussian_p_Lk_I)

class MixmodCovarianceModelImplementationFactoryTypedInterfaceObject(openturns.common.InterfaceObject):
    """Proxy of C++ OT::TypedInterfaceObject<(OTMIXMOD::MixmodCovarianceModelImplementation)> class."""

    __swig_setmethods__ = {}
    for _s in [openturns.common.InterfaceObject]:
        __swig_setmethods__.update(getattr(_s, '__swig_setmethods__', {}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, MixmodCovarianceModelImplementationFactoryTypedInterfaceObject, name, value)
    __swig_getmethods__ = {}
    for _s in [openturns.common.InterfaceObject]:
        __swig_getmethods__.update(getattr(_s, '__swig_getmethods__', {}))
    __getattr__ = lambda self, name: _swig_getattr(self, MixmodCovarianceModelImplementationFactoryTypedInterfaceObject, name)
    __repr__ = _swig_repr

    def __init__(self, *args):
        """
        __init__(OT::TypedInterfaceObject<(OTMIXMOD::MixmodCovarianceModelImplementation)> self) -> MixmodCovarianceModelImplementationFactoryTypedInterfaceObject
        __init__(OT::TypedInterfaceObject<(OTMIXMOD::MixmodCovarianceModelImplementation)> self, OT::TypedInterfaceObject< OTMIXMOD::MixmodCovarianceModelImplementation >::Implementation const & impl) -> MixmodCovarianceModelImplementationFactoryTypedInterfaceObject
        """
        this = _otmixmod.new_MixmodCovarianceModelImplementationFactoryTypedInterfaceObject(*args)
        try:
            self.this.append(this)
        except __builtin__.Exception:
            self.this = this

    def getImplementation(self, *args):
        """
        getImplementation(MixmodCovarianceModelImplementationFactoryTypedInterfaceObject self) -> OT::TypedInterfaceObject< OTMIXMOD::MixmodCovarianceModelImplementation >::Implementation
        getImplementation(MixmodCovarianceModelImplementationFactoryTypedInterfaceObject self) -> OT::TypedInterfaceObject< OTMIXMOD::MixmodCovarianceModelImplementation >::Implementation const &

        Accessor to the underlying implementation.

        Returns
        -------
        impl : Implementation
            The implementation class.
        """
        return _otmixmod.MixmodCovarianceModelImplementationFactoryTypedInterfaceObject_getImplementation(self, *args)


    def setName(self, name):
        """
        setName(MixmodCovarianceModelImplementationFactoryTypedInterfaceObject self, OT::String const & name)

        Accessor to the object's name.

        Parameters
        ----------
        name : str
            The name of the object.
        """
        return _otmixmod.MixmodCovarianceModelImplementationFactoryTypedInterfaceObject_setName(self, name)


    def getName(self):
        """
        getName(MixmodCovarianceModelImplementationFactoryTypedInterfaceObject self) -> OT::String

        Accessor to the object's name.

        Returns
        -------
        name : str
            The name of the object.
        """
        return _otmixmod.MixmodCovarianceModelImplementationFactoryTypedInterfaceObject_getName(self)


    def __eq__(self, other):
        """__eq__(MixmodCovarianceModelImplementationFactoryTypedInterfaceObject self, MixmodCovarianceModelImplementationFactoryTypedInterfaceObject other) -> OT::Bool"""
        return _otmixmod.MixmodCovarianceModelImplementationFactoryTypedInterfaceObject___eq__(self, other)


    def __ne__(self, other):
        """__ne__(MixmodCovarianceModelImplementationFactoryTypedInterfaceObject self, MixmodCovarianceModelImplementationFactoryTypedInterfaceObject other) -> OT::Bool"""
        return _otmixmod.MixmodCovarianceModelImplementationFactoryTypedInterfaceObject___ne__(self, other)

    __swig_destroy__ = _otmixmod.delete_MixmodCovarianceModelImplementationFactoryTypedInterfaceObject
    __del__ = lambda self: None
MixmodCovarianceModelImplementationFactoryTypedInterfaceObject_swigregister = _otmixmod.MixmodCovarianceModelImplementationFactoryTypedInterfaceObject_swigregister
MixmodCovarianceModelImplementationFactoryTypedInterfaceObject_swigregister(MixmodCovarianceModelImplementationFactoryTypedInterfaceObject)

class MixmodCovarianceModel(MixmodCovarianceModelImplementationFactoryTypedInterfaceObject):
    """Proxy of C++ OTMIXMOD::MixmodCovarianceModel class."""

    __swig_setmethods__ = {}
    for _s in [MixmodCovarianceModelImplementationFactoryTypedInterfaceObject]:
        __swig_setmethods__.update(getattr(_s, '__swig_setmethods__', {}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, MixmodCovarianceModel, name, value)
    __swig_getmethods__ = {}
    for _s in [MixmodCovarianceModelImplementationFactoryTypedInterfaceObject]:
        __swig_getmethods__.update(getattr(_s, '__swig_getmethods__', {}))
    __getattr__ = lambda self, name: _swig_getattr(self, MixmodCovarianceModel, name)
    __repr__ = _swig_repr

    def GetClassName():
        """GetClassName() -> OT::String"""
        return _otmixmod.MixmodCovarianceModel_GetClassName()

    GetClassName = staticmethod(GetClassName)

    def getClassName(self):
        """getClassName(MixmodCovarianceModel self) -> OT::String"""
        return _otmixmod.MixmodCovarianceModel_getClassName(self)


    def convertToMixmod(self):
        """convertToMixmod(MixmodCovarianceModel self) -> OT::String"""
        return _otmixmod.MixmodCovarianceModel_convertToMixmod(self)


    def __init__(self, *args):
        """
        __init__(OTMIXMOD::MixmodCovarianceModel self) -> MixmodCovarianceModel
        __init__(OTMIXMOD::MixmodCovarianceModel self, MixmodCovarianceModelImplementation impl) -> MixmodCovarianceModel
        __init__(OTMIXMOD::MixmodCovarianceModel self, MixmodCovarianceModel other) -> MixmodCovarianceModel
        """
        this = _otmixmod.new_MixmodCovarianceModel(*args)
        try:
            self.this.append(this)
        except __builtin__.Exception:
            self.this = this
    __swig_destroy__ = _otmixmod.delete_MixmodCovarianceModel
    __del__ = lambda self: None
MixmodCovarianceModel_swigregister = _otmixmod.MixmodCovarianceModel_swigregister
MixmodCovarianceModel_swigregister(MixmodCovarianceModel)

def MixmodCovarianceModel_GetClassName():
    """MixmodCovarianceModel_GetClassName() -> OT::String"""
    return _otmixmod.MixmodCovarianceModel_GetClassName()

class MixtureFactory(openturns.model_copula.DistributionFactoryImplementation):
    """Proxy of C++ OTMIXMOD::MixtureFactory class."""

    __swig_setmethods__ = {}
    for _s in [openturns.model_copula.DistributionFactoryImplementation]:
        __swig_setmethods__.update(getattr(_s, '__swig_setmethods__', {}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, MixtureFactory, name, value)
    __swig_getmethods__ = {}
    for _s in [openturns.model_copula.DistributionFactoryImplementation]:
        __swig_getmethods__.update(getattr(_s, '__swig_getmethods__', {}))
    __getattr__ = lambda self, name: _swig_getattr(self, MixtureFactory, name)
    __repr__ = _swig_repr

    def getClassName(self):
        """
        getClassName(MixtureFactory self) -> OT::String

        Accessor to the object's name.

        Returns
        -------
        class_name : str
            The object class name (`object.__class__.__name__`).
        """
        return _otmixmod.MixtureFactory_getClassName(self)


    def build(self, *args):
        """
        build(MixtureFactory self, Sample sample) -> Distribution
        build(MixtureFactory self, Point parameters) -> Distribution
        build(MixtureFactory self, Sample sample) -> Distribution
        build(MixtureFactory self, PointCollection parameters) -> Distribution
        build(MixtureFactory self) -> Distribution

        Build the distribution.

        **Available usages**:

            build(*sample*)

            build(*param*)

        Parameters
        ----------
        sample : 2-d sequence of float
            Sample from which the distribution parameters are estimated.
        param : Collection of :class:`~openturns.PointWithDescription`
            A vector of parameters of the distribution.

        Returns
        -------
        dist : :class:`~openturns.Distribution`
            The built distribution.
        """
        return _otmixmod.MixtureFactory_build(self, *args)


    def buildAsMixture(self, sample):
        """buildAsMixture(MixtureFactory self, Sample sample) -> Mixture"""
        return _otmixmod.MixtureFactory_buildAsMixture(self, sample)


    def setAtomsNumber(self, number):
        """setAtomsNumber(MixtureFactory self, OT::UnsignedInteger const & number)"""
        return _otmixmod.MixtureFactory_setAtomsNumber(self, number)


    def getAtomsNumber(self):
        """getAtomsNumber(MixtureFactory self) -> OT::UnsignedInteger"""
        return _otmixmod.MixtureFactory_getAtomsNumber(self)


    def setCovarianceModel(self, covarianceModel):
        """setCovarianceModel(MixtureFactory self, MixmodCovarianceModel covarianceModel)"""
        return _otmixmod.MixtureFactory_setCovarianceModel(self, covarianceModel)


    def getCovarianceModel(self):
        """getCovarianceModel(MixtureFactory self) -> MixmodCovarianceModel"""
        return _otmixmod.MixtureFactory_getCovarianceModel(self)


    def BuildClusters(data, labels, nbClusters):
        """BuildClusters(Sample data, Indices labels, OT::UnsignedInteger const nbClusters) -> SampleCollection"""
        return _otmixmod.MixtureFactory_BuildClusters(data, labels, nbClusters)

    BuildClusters = staticmethod(BuildClusters)

    def setState(self, yState, zState):
        """setState(MixtureFactory self, OT::UnsignedInteger const yState, OT::UnsignedInteger const zState)"""
        return _otmixmod.MixtureFactory_setState(self, yState, zState)


    def __init__(self, *args):
        """
        __init__(OTMIXMOD::MixtureFactory self) -> MixtureFactory
        __init__(OTMIXMOD::MixtureFactory self, OT::UnsignedInteger const atomsNumber, MixmodCovarianceModelImplementation covarianceModel) -> MixtureFactory
        __init__(OTMIXMOD::MixtureFactory self, OT::UnsignedInteger const atomsNumber) -> MixtureFactory
        __init__(OTMIXMOD::MixtureFactory self, OT::UnsignedInteger const atomsNumber, MixmodCovarianceModel covarianceModel) -> MixtureFactory
        __init__(OTMIXMOD::MixtureFactory self, MixtureFactory other) -> MixtureFactory
        """
        this = _otmixmod.new_MixtureFactory(*args)
        try:
            self.this.append(this)
        except __builtin__.Exception:
            self.this = this
    __swig_destroy__ = _otmixmod.delete_MixtureFactory
    __del__ = lambda self: None
MixtureFactory_swigregister = _otmixmod.MixtureFactory_swigregister
MixtureFactory_swigregister(MixtureFactory)

def MixtureFactory_BuildClusters(data, labels, nbClusters):
    """MixtureFactory_BuildClusters(Sample data, Indices labels, OT::UnsignedInteger const nbClusters) -> SampleCollection"""
    return _otmixmod.MixtureFactory_BuildClusters(data, labels, nbClusters)

class MixtureClassifierFactory(openturns.common.Object):
    """Proxy of C++ OTMIXMOD::MixtureClassifierFactory class."""

    __swig_setmethods__ = {}
    for _s in [openturns.common.Object]:
        __swig_setmethods__.update(getattr(_s, '__swig_setmethods__', {}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, MixtureClassifierFactory, name, value)
    __swig_getmethods__ = {}
    for _s in [openturns.common.Object]:
        __swig_getmethods__.update(getattr(_s, '__swig_getmethods__', {}))
    __getattr__ = lambda self, name: _swig_getattr(self, MixtureClassifierFactory, name)
    __repr__ = _swig_repr

    def getClassName(self):
        """
        getClassName(MixtureClassifierFactory self) -> OT::String

        Accessor to the object's name.

        Returns
        -------
        class_name : str
            The object class name (`object.__class__.__name__`).
        """
        return _otmixmod.MixtureClassifierFactory_getClassName(self)


    def build(self, sample):
        """build(MixtureClassifierFactory self, Sample sample) -> MixtureClassifier"""
        return _otmixmod.MixtureClassifierFactory_build(self, sample)


    def getMixtureFactory(self):
        """getMixtureFactory(MixtureClassifierFactory self) -> MixtureFactory"""
        return _otmixmod.MixtureClassifierFactory_getMixtureFactory(self)


    def setMixtureFactory(self, mixtureFactory):
        """setMixtureFactory(MixtureClassifierFactory self, MixtureFactory mixtureFactory)"""
        return _otmixmod.MixtureClassifierFactory_setMixtureFactory(self, mixtureFactory)


    def __init__(self, *args):
        """
        __init__(OTMIXMOD::MixtureClassifierFactory self) -> MixtureClassifierFactory
        __init__(OTMIXMOD::MixtureClassifierFactory self, MixtureFactory mixtureFactory) -> MixtureClassifierFactory
        __init__(OTMIXMOD::MixtureClassifierFactory self, MixtureClassifierFactory other) -> MixtureClassifierFactory
        """
        this = _otmixmod.new_MixtureClassifierFactory(*args)
        try:
            self.this.append(this)
        except __builtin__.Exception:
            self.this = this
    __swig_destroy__ = _otmixmod.delete_MixtureClassifierFactory
    __del__ = lambda self: None
MixtureClassifierFactory_swigregister = _otmixmod.MixtureClassifierFactory_swigregister
MixtureClassifierFactory_swigregister(MixtureClassifierFactory)

# This file is compatible with both classic and new-style classes.


