Update to 2.0.0 tree from current Fremantle build
[opencv] / interfaces / swig / python / ml.py
index 67957a8..046ab9a 100644 (file)
@@ -1,12 +1,32 @@
 # This file was automatically generated by SWIG (http://www.swig.org).
-# Version 1.3.35
+# Version 1.3.40
 #
-# Don't modify this file, modify the SWIG interface instead.
+# Do not make changes to this file unless you know what you are doing--modify
+# the SWIG interface file instead.
 # This file is compatible with both classic and new-style classes.
 
-import _ml
-import new
-new_instancemethod = new.instancemethod
+from sys import version_info
+if 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('_ml', [dirname(__file__)])
+        except ImportError:
+            import _ml
+            return _ml
+        if fp is not None:
+            try:
+                _mod = imp.load_module('_ml', fp, pathname, description)
+            finally:
+                fp.close()
+            return _mod
+    _ml = swig_import_helper()
+    del swig_import_helper
+else:
+    import _ml
+del version_info
 try:
     _swig_property = property
 except NameError:
@@ -14,7 +34,7 @@ except NameError:
 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__ == 'PySwigObject':
+        if type(value).__name__ == 'SwigPyObject':
             self.__dict__[name] = value
             return
     method = class_type.__swig_setmethods__.get(name,None)
@@ -31,21 +51,19 @@ 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,name
+    raise AttributeError(name)
 
 def _swig_repr(self):
     try: strthis = "proxy of " + self.this.__repr__()
     except: strthis = ""
     return "<%s.%s; %s >" % (self.__class__.__module__, self.__class__.__name__, strthis,)
 
-import types
 try:
-    _object = types.ObjectType
+    _object = object
     _newclass = 1
 except AttributeError:
     class _object : pass
     _newclass = 0
-del types
 
 
 class CvRNG_Wrapper(_object):
@@ -58,10 +76,10 @@ class CvRNG_Wrapper(_object):
         this = _ml.new_CvRNG_Wrapper(*args)
         try: self.this.append(this)
         except: self.this = this
-    def ptr(*args): return _ml.CvRNG_Wrapper_ptr(*args)
-    def ref(*args): return _ml.CvRNG_Wrapper_ref(*args)
-    def __eq__(*args): return _ml.CvRNG_Wrapper___eq__(*args)
-    def __ne__(*args): return _ml.CvRNG_Wrapper___ne__(*args)
+    def ptr(self): return _ml.CvRNG_Wrapper_ptr(self)
+    def ref(self): return _ml.CvRNG_Wrapper_ref(self)
+    def __eq__(self, *args): return _ml.CvRNG_Wrapper___eq__(self, *args)
+    def __ne__(self, *args): return _ml.CvRNG_Wrapper___ne__(self, *args)
     __swig_destroy__ = _ml.delete_CvRNG_Wrapper
     __del__ = lambda self : None;
 CvRNG_Wrapper_swigregister = _ml.CvRNG_Wrapper_swigregister
@@ -77,10 +95,10 @@ class CvSubdiv2DEdge_Wrapper(_object):
         this = _ml.new_CvSubdiv2DEdge_Wrapper(*args)
         try: self.this.append(this)
         except: self.this = this
-    def ptr(*args): return _ml.CvSubdiv2DEdge_Wrapper_ptr(*args)
-    def ref(*args): return _ml.CvSubdiv2DEdge_Wrapper_ref(*args)
-    def __eq__(*args): return _ml.CvSubdiv2DEdge_Wrapper___eq__(*args)
-    def __ne__(*args): return _ml.CvSubdiv2DEdge_Wrapper___ne__(*args)
+    def ptr(self): return _ml.CvSubdiv2DEdge_Wrapper_ptr(self)
+    def ref(self): return _ml.CvSubdiv2DEdge_Wrapper_ref(self)
+    def __eq__(self, *args): return _ml.CvSubdiv2DEdge_Wrapper___eq__(self, *args)
+    def __ne__(self, *args): return _ml.CvSubdiv2DEdge_Wrapper___ne__(self, *args)
     __swig_destroy__ = _ml.delete_CvSubdiv2DEdge_Wrapper
     __del__ = lambda self : None;
 CvSubdiv2DEdge_Wrapper_swigregister = _ml.CvSubdiv2DEdge_Wrapper_swigregister
@@ -127,8 +145,8 @@ class CvVectors(_object):
     if _newclass:next = _swig_property(_ml.CvVectors_next_get, _ml.CvVectors_next_set)
     __swig_getmethods__["data"] = _ml.CvVectors_data_get
     if _newclass:data = _swig_property(_ml.CvVectors_data_get)
-    def __init__(self, *args): 
-        this = _ml.new_CvVectors(*args)
+    def __init__(self): 
+        this = _ml.new_CvVectors()
         try: self.this.append(this)
         except: self.this = this
     __swig_destroy__ = _ml.delete_CvVectors
@@ -151,8 +169,8 @@ class CvVectors_data(_object):
     __swig_setmethods__["db"] = _ml.CvVectors_data_db_set
     __swig_getmethods__["db"] = _ml.CvVectors_data_db_get
     if _newclass:db = _swig_property(_ml.CvVectors_data_db_get, _ml.CvVectors_data_db_set)
-    def __init__(self, *args): 
-        this = _ml.new_CvVectors_data(*args)
+    def __init__(self): 
+        this = _ml.new_CvVectors_data()
         try: self.this.append(this)
         except: self.this = this
     __swig_destroy__ = _ml.delete_CvVectors_data
@@ -172,23 +190,25 @@ CV_TYPE_NAME_ML_TREE = _ml.CV_TYPE_NAME_ML_TREE
 CV_TYPE_NAME_ML_ANN_MLP = _ml.CV_TYPE_NAME_ML_ANN_MLP
 CV_TYPE_NAME_ML_CNN = _ml.CV_TYPE_NAME_ML_CNN
 CV_TYPE_NAME_ML_RTREES = _ml.CV_TYPE_NAME_ML_RTREES
+CV_TRAIN_ERROR = _ml.CV_TRAIN_ERROR
+CV_TEST_ERROR = _ml.CV_TEST_ERROR
 class CvStatModel(_object):
     __swig_setmethods__ = {}
     __setattr__ = lambda self, name, value: _swig_setattr(self, CvStatModel, name, value)
     __swig_getmethods__ = {}
     __getattr__ = lambda self, name: _swig_getattr(self, CvStatModel, name)
     __repr__ = _swig_repr
-    def __init__(self, *args): 
-        this = _ml.new_CvStatModel(*args)
+    def __init__(self): 
+        this = _ml.new_CvStatModel()
         try: self.this.append(this)
         except: self.this = this
     __swig_destroy__ = _ml.delete_CvStatModel
     __del__ = lambda self : None;
-    def clear(*args): return _ml.CvStatModel_clear(*args)
-    def save(*args): return _ml.CvStatModel_save(*args)
-    def load(*args): return _ml.CvStatModel_load(*args)
-    def write(*args): return _ml.CvStatModel_write(*args)
-    def read(*args): return _ml.CvStatModel_read(*args)
+    def clear(self): return _ml.CvStatModel_clear(self)
+    def save(self, *args): return _ml.CvStatModel_save(self, *args)
+    def load(self, *args): return _ml.CvStatModel_load(self, *args)
+    def write(self, *args): return _ml.CvStatModel_write(self, *args)
+    def read(self, *args): return _ml.CvStatModel_read(self, *args)
 CvStatModel_swigregister = _ml.CvStatModel_swigregister
 CvStatModel_swigregister(CvStatModel)
 
@@ -208,7 +228,7 @@ class CvParamGrid(_object):
         this = _ml.new_CvParamGrid(*args)
         try: self.this.append(this)
         except: self.this = this
-    def check(*args): return _ml.CvParamGrid_check(*args)
+    def check(self): return _ml.CvParamGrid_check(self)
     __swig_setmethods__["min_val"] = _ml.CvParamGrid_min_val_set
     __swig_getmethods__["min_val"] = _ml.CvParamGrid_min_val_get
     if _newclass:min_val = _swig_property(_ml.CvParamGrid_min_val_get, _ml.CvParamGrid_min_val_set)
@@ -237,11 +257,11 @@ class CvNormalBayesClassifier(CvStatModel):
         this = _ml.new_CvNormalBayesClassifier(*args)
         try: self.this.append(this)
         except: self.this = this
-    def train(*args): return _ml.CvNormalBayesClassifier_train(*args)
-    def predict(*args): return _ml.CvNormalBayesClassifier_predict(*args)
-    def clear(*args): return _ml.CvNormalBayesClassifier_clear(*args)
-    def write(*args): return _ml.CvNormalBayesClassifier_write(*args)
-    def read(*args): return _ml.CvNormalBayesClassifier_read(*args)
+    def train(self, *args): return _ml.CvNormalBayesClassifier_train(self, *args)
+    def predict(self, *args): return _ml.CvNormalBayesClassifier_predict(self, *args)
+    def clear(self): return _ml.CvNormalBayesClassifier_clear(self)
+    def write(self, *args): return _ml.CvNormalBayesClassifier_write(self, *args)
+    def read(self, *args): return _ml.CvNormalBayesClassifier_read(self, *args)
 CvNormalBayesClassifier_swigregister = _ml.CvNormalBayesClassifier_swigregister
 CvNormalBayesClassifier_swigregister(CvNormalBayesClassifier)
 
@@ -259,13 +279,13 @@ class CvKNearest(CvStatModel):
         this = _ml.new_CvKNearest(*args)
         try: self.this.append(this)
         except: self.this = this
-    def train(*args): return _ml.CvKNearest_train(*args)
-    def find_nearest(*args): return _ml.CvKNearest_find_nearest(*args)
-    def clear(*args): return _ml.CvKNearest_clear(*args)
-    def get_max_k(*args): return _ml.CvKNearest_get_max_k(*args)
-    def get_var_count(*args): return _ml.CvKNearest_get_var_count(*args)
-    def get_sample_count(*args): return _ml.CvKNearest_get_sample_count(*args)
-    def is_regression(*args): return _ml.CvKNearest_is_regression(*args)
+    def train(self, *args): return _ml.CvKNearest_train(self, *args)
+    def find_nearest(self, *args): return _ml.CvKNearest_find_nearest(self, *args)
+    def clear(self): return _ml.CvKNearest_clear(self)
+    def get_max_k(self): return _ml.CvKNearest_get_max_k(self)
+    def get_var_count(self): return _ml.CvKNearest_get_var_count(self)
+    def get_sample_count(self): return _ml.CvKNearest_get_sample_count(self)
+    def is_regression(self): return _ml.CvKNearest_is_regression(self)
 CvKNearest_swigregister = _ml.CvKNearest_swigregister
 CvKNearest_swigregister(CvKNearest)
 
@@ -324,22 +344,22 @@ class CvSVMKernel(_object):
         this = _ml.new_CvSVMKernel(*args)
         try: self.this.append(this)
         except: self.this = this
-    def create(*args): return _ml.CvSVMKernel_create(*args)
+    def create(self, *args): return _ml.CvSVMKernel_create(self, *args)
     __swig_destroy__ = _ml.delete_CvSVMKernel
     __del__ = lambda self : None;
-    def clear(*args): return _ml.CvSVMKernel_clear(*args)
-    def calc(*args): return _ml.CvSVMKernel_calc(*args)
+    def clear(self): return _ml.CvSVMKernel_clear(self)
+    def calc(self, *args): return _ml.CvSVMKernel_calc(self, *args)
     __swig_setmethods__["params"] = _ml.CvSVMKernel_params_set
     __swig_getmethods__["params"] = _ml.CvSVMKernel_params_get
     if _newclass:params = _swig_property(_ml.CvSVMKernel_params_get, _ml.CvSVMKernel_params_set)
     __swig_setmethods__["calc_func"] = _ml.CvSVMKernel_calc_func_set
     __swig_getmethods__["calc_func"] = _ml.CvSVMKernel_calc_func_get
     if _newclass:calc_func = _swig_property(_ml.CvSVMKernel_calc_func_get, _ml.CvSVMKernel_calc_func_set)
-    def calc_non_rbf_base(*args): return _ml.CvSVMKernel_calc_non_rbf_base(*args)
-    def calc_linear(*args): return _ml.CvSVMKernel_calc_linear(*args)
-    def calc_rbf(*args): return _ml.CvSVMKernel_calc_rbf(*args)
-    def calc_poly(*args): return _ml.CvSVMKernel_calc_poly(*args)
-    def calc_sigmoid(*args): return _ml.CvSVMKernel_calc_sigmoid(*args)
+    def calc_non_rbf_base(self, *args): return _ml.CvSVMKernel_calc_non_rbf_base(self, *args)
+    def calc_linear(self, *args): return _ml.CvSVMKernel_calc_linear(self, *args)
+    def calc_rbf(self, *args): return _ml.CvSVMKernel_calc_rbf(self, *args)
+    def calc_poly(self, *args): return _ml.CvSVMKernel_calc_poly(self, *args)
+    def calc_sigmoid(self, *args): return _ml.CvSVMKernel_calc_sigmoid(self, *args)
 CvSVMKernel_swigregister = _ml.CvSVMKernel_swigregister
 CvSVMKernel_swigregister(CvSVMKernel)
 
@@ -358,8 +378,8 @@ class CvSVMKernelRow(_object):
     __swig_setmethods__["data"] = _ml.CvSVMKernelRow_data_set
     __swig_getmethods__["data"] = _ml.CvSVMKernelRow_data_get
     if _newclass:data = _swig_property(_ml.CvSVMKernelRow_data_get, _ml.CvSVMKernelRow_data_set)
-    def __init__(self, *args): 
-        this = _ml.new_CvSVMKernelRow(*args)
+    def __init__(self): 
+        this = _ml.new_CvSVMKernelRow()
         try: self.this.append(this)
         except: self.this = this
     __swig_destroy__ = _ml.delete_CvSVMKernelRow
@@ -388,8 +408,8 @@ class CvSVMSolutionInfo(_object):
     __swig_setmethods__["r"] = _ml.CvSVMSolutionInfo_r_set
     __swig_getmethods__["r"] = _ml.CvSVMSolutionInfo_r_get
     if _newclass:r = _swig_property(_ml.CvSVMSolutionInfo_r_get, _ml.CvSVMSolutionInfo_r_set)
-    def __init__(self, *args): 
-        this = _ml.new_CvSVMSolutionInfo(*args)
+    def __init__(self): 
+        this = _ml.new_CvSVMSolutionInfo()
         try: self.this.append(this)
         except: self.this = this
     __swig_destroy__ = _ml.delete_CvSVMSolutionInfo
@@ -407,18 +427,18 @@ class CvSVMSolver(_object):
         this = _ml.new_CvSVMSolver(*args)
         try: self.this.append(this)
         except: self.this = this
-    def create(*args): return _ml.CvSVMSolver_create(*args)
+    def create(self, *args): return _ml.CvSVMSolver_create(self, *args)
     __swig_destroy__ = _ml.delete_CvSVMSolver
     __del__ = lambda self : None;
-    def clear(*args): return _ml.CvSVMSolver_clear(*args)
-    def solve_generic(*args): return _ml.CvSVMSolver_solve_generic(*args)
-    def solve_c_svc(*args): return _ml.CvSVMSolver_solve_c_svc(*args)
-    def solve_nu_svc(*args): return _ml.CvSVMSolver_solve_nu_svc(*args)
-    def solve_one_class(*args): return _ml.CvSVMSolver_solve_one_class(*args)
-    def solve_eps_svr(*args): return _ml.CvSVMSolver_solve_eps_svr(*args)
-    def solve_nu_svr(*args): return _ml.CvSVMSolver_solve_nu_svr(*args)
-    def get_row_base(*args): return _ml.CvSVMSolver_get_row_base(*args)
-    def get_row(*args): return _ml.CvSVMSolver_get_row(*args)
+    def clear(self): return _ml.CvSVMSolver_clear(self)
+    def solve_generic(self, *args): return _ml.CvSVMSolver_solve_generic(self, *args)
+    def solve_c_svc(self, *args): return _ml.CvSVMSolver_solve_c_svc(self, *args)
+    def solve_nu_svc(self, *args): return _ml.CvSVMSolver_solve_nu_svc(self, *args)
+    def solve_one_class(self, *args): return _ml.CvSVMSolver_solve_one_class(self, *args)
+    def solve_eps_svr(self, *args): return _ml.CvSVMSolver_solve_eps_svr(self, *args)
+    def solve_nu_svr(self, *args): return _ml.CvSVMSolver_solve_nu_svr(self, *args)
+    def get_row_base(self, *args): return _ml.CvSVMSolver_get_row_base(self, *args)
+    def get_row(self, *args): return _ml.CvSVMSolver_get_row(self, *args)
     __swig_setmethods__["sample_count"] = _ml.CvSVMSolver_sample_count_set
     __swig_getmethods__["sample_count"] = _ml.CvSVMSolver_sample_count_get
     if _newclass:sample_count = _swig_property(_ml.CvSVMSolver_sample_count_get, _ml.CvSVMSolver_sample_count_set)
@@ -488,13 +508,13 @@ class CvSVMSolver(_object):
     __swig_setmethods__["get_row_func"] = _ml.CvSVMSolver_get_row_func_set
     __swig_getmethods__["get_row_func"] = _ml.CvSVMSolver_get_row_func_get
     if _newclass:get_row_func = _swig_property(_ml.CvSVMSolver_get_row_func_get, _ml.CvSVMSolver_get_row_func_set)
-    def select_working_set(*args): return _ml.CvSVMSolver_select_working_set(*args)
-    def select_working_set_nu_svm(*args): return _ml.CvSVMSolver_select_working_set_nu_svm(*args)
-    def calc_rho(*args): return _ml.CvSVMSolver_calc_rho(*args)
-    def calc_rho_nu_svm(*args): return _ml.CvSVMSolver_calc_rho_nu_svm(*args)
-    def get_row_svc(*args): return _ml.CvSVMSolver_get_row_svc(*args)
-    def get_row_one_class(*args): return _ml.CvSVMSolver_get_row_one_class(*args)
-    def get_row_svr(*args): return _ml.CvSVMSolver_get_row_svr(*args)
+    def select_working_set(self, *args): return _ml.CvSVMSolver_select_working_set(self, *args)
+    def select_working_set_nu_svm(self, *args): return _ml.CvSVMSolver_select_working_set_nu_svm(self, *args)
+    def calc_rho(self, *args): return _ml.CvSVMSolver_calc_rho(self, *args)
+    def calc_rho_nu_svm(self, *args): return _ml.CvSVMSolver_calc_rho_nu_svm(self, *args)
+    def get_row_svc(self, *args): return _ml.CvSVMSolver_get_row_svc(self, *args)
+    def get_row_one_class(self, *args): return _ml.CvSVMSolver_get_row_one_class(self, *args)
+    def get_row_svr(self, *args): return _ml.CvSVMSolver_get_row_svr(self, *args)
 CvSVMSolver_swigregister = _ml.CvSVMSolver_swigregister
 CvSVMSolver_swigregister(CvSVMSolver)
 
@@ -516,8 +536,8 @@ class CvSVMDecisionFunc(_object):
     __swig_setmethods__["sv_index"] = _ml.CvSVMDecisionFunc_sv_index_set
     __swig_getmethods__["sv_index"] = _ml.CvSVMDecisionFunc_sv_index_get
     if _newclass:sv_index = _swig_property(_ml.CvSVMDecisionFunc_sv_index_get, _ml.CvSVMDecisionFunc_sv_index_set)
-    def __init__(self, *args): 
-        this = _ml.new_CvSVMDecisionFunc(*args)
+    def __init__(self): 
+        this = _ml.new_CvSVMDecisionFunc()
         try: self.this.append(this)
         except: self.this = this
     __swig_destroy__ = _ml.delete_CvSVMDecisionFunc
@@ -554,20 +574,23 @@ class CvSVM(CvStatModel):
         this = _ml.new_CvSVM(*args)
         try: self.this.append(this)
         except: self.this = this
-    def train(*args): return _ml.CvSVM_train(*args)
-    def train_auto(*args): return _ml.CvSVM_train_auto(*args)
-    def predict(*args): return _ml.CvSVM_predict(*args)
-    def get_support_vector_count(*args): return _ml.CvSVM_get_support_vector_count(*args)
-    def get_support_vector(*args): return _ml.CvSVM_get_support_vector(*args)
-    def get_params(*args): return _ml.CvSVM_get_params(*args)
-    def clear(*args): return _ml.CvSVM_clear(*args)
+    def train(self, *args): return _ml.CvSVM_train(self, *args)
+    def train_auto(self, *args): return _ml.CvSVM_train_auto(self, *args)
+    def predict(self, *args): return _ml.CvSVM_predict(self, *args)
+    def get_support_vector_count(self): return _ml.CvSVM_get_support_vector_count(self)
+    def get_support_vector(self, *args): return _ml.CvSVM_get_support_vector(self, *args)
+    def get_params(self): return _ml.CvSVM_get_params(self)
+    def clear(self): return _ml.CvSVM_clear(self)
     __swig_getmethods__["get_default_grid"] = lambda x: _ml.CvSVM_get_default_grid
     if _newclass:get_default_grid = staticmethod(_ml.CvSVM_get_default_grid)
-    def write(*args): return _ml.CvSVM_write(*args)
-    def read(*args): return _ml.CvSVM_read(*args)
-    def get_var_count(*args): return _ml.CvSVM_get_var_count(*args)
+    def write(self, *args): return _ml.CvSVM_write(self, *args)
+    def read(self, *args): return _ml.CvSVM_read(self, *args)
+    def get_var_count(self): return _ml.CvSVM_get_var_count(self)
 CvSVM_swigregister = _ml.CvSVM_swigregister
 CvSVM_swigregister(CvSVM)
+
+def CvSVM_get_default_grid(*args):
+  return _ml.CvSVM_get_default_grid(*args)
 CvSVM_get_default_grid = _ml.CvSVM_get_default_grid
 
 class CvEMParams(_object):
@@ -629,37 +652,38 @@ class CvEM(CvStatModel):
         except: self.this = this
     __swig_destroy__ = _ml.delete_CvEM
     __del__ = lambda self : None;
-    def train(*args): return _ml.CvEM_train(*args)
-    def predict(*args): return _ml.CvEM_predict(*args)
-    def clear(*args): return _ml.CvEM_clear(*args)
-    def get_nclusters(*args): return _ml.CvEM_get_nclusters(*args)
-    def get_means(*args): return _ml.CvEM_get_means(*args)
-    def get_weights(*args): return _ml.CvEM_get_weights(*args)
-    def get_probs(*args): return _ml.CvEM_get_probs(*args)
-    def get_covs(*args): return _ml.CvEM_get_covs(*args)
+    def train(self, *args): return _ml.CvEM_train(self, *args)
+    def predict(self, *args): return _ml.CvEM_predict(self, *args)
+    def clear(self): return _ml.CvEM_clear(self)
+    def get_nclusters(self): return _ml.CvEM_get_nclusters(self)
+    def get_means(self): return _ml.CvEM_get_means(self)
+    def get_weights(self): return _ml.CvEM_get_weights(self)
+    def get_probs(self): return _ml.CvEM_get_probs(self)
+    def get_log_likelihood(self): return _ml.CvEM_get_log_likelihood(self)
+    def get_covs(self): return _ml.CvEM_get_covs(self)
 CvEM_swigregister = _ml.CvEM_swigregister
 CvEM_swigregister(CvEM)
 
-class CvPair32s32f(_object):
+class CvPair16u32s(_object):
     __swig_setmethods__ = {}
-    __setattr__ = lambda self, name, value: _swig_setattr(self, CvPair32s32f, name, value)
+    __setattr__ = lambda self, name, value: _swig_setattr(self, CvPair16u32s, name, value)
     __swig_getmethods__ = {}
-    __getattr__ = lambda self, name: _swig_getattr(self, CvPair32s32f, name)
+    __getattr__ = lambda self, name: _swig_getattr(self, CvPair16u32s, name)
     __repr__ = _swig_repr
-    __swig_setmethods__["i"] = _ml.CvPair32s32f_i_set
-    __swig_getmethods__["i"] = _ml.CvPair32s32f_i_get
-    if _newclass:i = _swig_property(_ml.CvPair32s32f_i_get, _ml.CvPair32s32f_i_set)
-    __swig_setmethods__["val"] = _ml.CvPair32s32f_val_set
-    __swig_getmethods__["val"] = _ml.CvPair32s32f_val_get
-    if _newclass:val = _swig_property(_ml.CvPair32s32f_val_get, _ml.CvPair32s32f_val_set)
-    def __init__(self, *args): 
-        this = _ml.new_CvPair32s32f(*args)
+    __swig_setmethods__["u"] = _ml.CvPair16u32s_u_set
+    __swig_getmethods__["u"] = _ml.CvPair16u32s_u_get
+    if _newclass:u = _swig_property(_ml.CvPair16u32s_u_get, _ml.CvPair16u32s_u_set)
+    __swig_setmethods__["i"] = _ml.CvPair16u32s_i_set
+    __swig_getmethods__["i"] = _ml.CvPair16u32s_i_get
+    if _newclass:i = _swig_property(_ml.CvPair16u32s_i_get, _ml.CvPair16u32s_i_set)
+    def __init__(self): 
+        this = _ml.new_CvPair16u32s()
         try: self.this.append(this)
         except: self.this = this
-    __swig_destroy__ = _ml.delete_CvPair32s32f
+    __swig_destroy__ = _ml.delete_CvPair16u32s
     __del__ = lambda self : None;
-CvPair32s32f_swigregister = _ml.CvPair32s32f_swigregister
-CvPair32s32f_swigregister(CvPair32s32f)
+CvPair16u32s_swigregister = _ml.CvPair16u32s_swigregister
+CvPair16u32s_swigregister(CvPair16u32s)
 
 class CvDTreeSplit(_object):
     __swig_setmethods__ = {}
@@ -670,6 +694,9 @@ class CvDTreeSplit(_object):
     __swig_setmethods__["var_idx"] = _ml.CvDTreeSplit_var_idx_set
     __swig_getmethods__["var_idx"] = _ml.CvDTreeSplit_var_idx_get
     if _newclass:var_idx = _swig_property(_ml.CvDTreeSplit_var_idx_get, _ml.CvDTreeSplit_var_idx_set)
+    __swig_setmethods__["condensed_idx"] = _ml.CvDTreeSplit_condensed_idx_set
+    __swig_getmethods__["condensed_idx"] = _ml.CvDTreeSplit_condensed_idx_get
+    if _newclass:condensed_idx = _swig_property(_ml.CvDTreeSplit_condensed_idx_get, _ml.CvDTreeSplit_condensed_idx_set)
     __swig_setmethods__["inversed"] = _ml.CvDTreeSplit_inversed_set
     __swig_getmethods__["inversed"] = _ml.CvDTreeSplit_inversed_get
     if _newclass:inversed = _swig_property(_ml.CvDTreeSplit_inversed_get, _ml.CvDTreeSplit_inversed_set)
@@ -679,8 +706,8 @@ class CvDTreeSplit(_object):
     __swig_setmethods__["next"] = _ml.CvDTreeSplit_next_set
     __swig_getmethods__["next"] = _ml.CvDTreeSplit_next_get
     if _newclass:next = _swig_property(_ml.CvDTreeSplit_next_get, _ml.CvDTreeSplit_next_set)
-    def __init__(self, *args): 
-        this = _ml.new_CvDTreeSplit(*args)
+    def __init__(self): 
+        this = _ml.new_CvDTreeSplit()
         try: self.this.append(this)
         except: self.this = this
     __swig_destroy__ = _ml.delete_CvDTreeSplit
@@ -757,10 +784,10 @@ class CvDTreeNode(_object):
     __swig_setmethods__["cv_node_error"] = _ml.CvDTreeNode_cv_node_error_set
     __swig_getmethods__["cv_node_error"] = _ml.CvDTreeNode_cv_node_error_get
     if _newclass:cv_node_error = _swig_property(_ml.CvDTreeNode_cv_node_error_get, _ml.CvDTreeNode_cv_node_error_set)
-    def get_num_valid(*args): return _ml.CvDTreeNode_get_num_valid(*args)
-    def set_num_valid(*args): return _ml.CvDTreeNode_set_num_valid(*args)
-    def __init__(self, *args): 
-        this = _ml.new_CvDTreeNode(*args)
+    def get_num_valid(self, *args): return _ml.CvDTreeNode_get_num_valid(self, *args)
+    def set_num_valid(self, *args): return _ml.CvDTreeNode_set_num_valid(self, *args)
+    def __init__(self): 
+        this = _ml.new_CvDTreeNode()
         try: self.this.append(this)
         except: self.this = this
     __swig_destroy__ = _ml.delete_CvDTreeNode
@@ -822,28 +849,54 @@ class CvDTreeTrainData(_object):
         except: self.this = this
     __swig_destroy__ = _ml.delete_CvDTreeTrainData
     __del__ = lambda self : None;
-    def set_data(*args): return _ml.CvDTreeTrainData_set_data(*args)
-    def get_vectors(*args): return _ml.CvDTreeTrainData_get_vectors(*args)
-    def subsample_data(*args): return _ml.CvDTreeTrainData_subsample_data(*args)
-    def write_params(*args): return _ml.CvDTreeTrainData_write_params(*args)
-    def read_params(*args): return _ml.CvDTreeTrainData_read_params(*args)
-    def clear(*args): return _ml.CvDTreeTrainData_clear(*args)
-    def get_num_classes(*args): return _ml.CvDTreeTrainData_get_num_classes(*args)
-    def get_var_type(*args): return _ml.CvDTreeTrainData_get_var_type(*args)
-    def get_work_var_count(*args): return _ml.CvDTreeTrainData_get_work_var_count(*args)
-    def get_class_labels(*args): return _ml.CvDTreeTrainData_get_class_labels(*args)
-    def get_ord_responses(*args): return _ml.CvDTreeTrainData_get_ord_responses(*args)
-    def get_labels(*args): return _ml.CvDTreeTrainData_get_labels(*args)
-    def get_cat_var_data(*args): return _ml.CvDTreeTrainData_get_cat_var_data(*args)
-    def get_ord_var_data(*args): return _ml.CvDTreeTrainData_get_ord_var_data(*args)
-    def get_child_buf_idx(*args): return _ml.CvDTreeTrainData_get_child_buf_idx(*args)
-    def set_params(*args): return _ml.CvDTreeTrainData_set_params(*args)
-    def new_node(*args): return _ml.CvDTreeTrainData_new_node(*args)
-    def new_split_ord(*args): return _ml.CvDTreeTrainData_new_split_ord(*args)
-    def new_split_cat(*args): return _ml.CvDTreeTrainData_new_split_cat(*args)
-    def free_node_data(*args): return _ml.CvDTreeTrainData_free_node_data(*args)
-    def free_train_data(*args): return _ml.CvDTreeTrainData_free_train_data(*args)
-    def free_node(*args): return _ml.CvDTreeTrainData_free_node(*args)
+    def set_data(self, *args): return _ml.CvDTreeTrainData_set_data(self, *args)
+    def do_responses_copy(self): return _ml.CvDTreeTrainData_do_responses_copy(self)
+    def get_vectors(self, *args): return _ml.CvDTreeTrainData_get_vectors(self, *args)
+    def subsample_data(self, *args): return _ml.CvDTreeTrainData_subsample_data(self, *args)
+    def write_params(self, *args): return _ml.CvDTreeTrainData_write_params(self, *args)
+    def read_params(self, *args): return _ml.CvDTreeTrainData_read_params(self, *args)
+    def clear(self): return _ml.CvDTreeTrainData_clear(self)
+    def get_num_classes(self): return _ml.CvDTreeTrainData_get_num_classes(self)
+    def get_var_type(self, *args): return _ml.CvDTreeTrainData_get_var_type(self, *args)
+    def get_work_var_count(self): return _ml.CvDTreeTrainData_get_work_var_count(self)
+    def get_ord_responses(self, *args): return _ml.CvDTreeTrainData_get_ord_responses(self, *args)
+    def get_class_labels(self, *args): return _ml.CvDTreeTrainData_get_class_labels(self, *args)
+    def get_cv_labels(self, *args): return _ml.CvDTreeTrainData_get_cv_labels(self, *args)
+    def get_sample_indices(self, *args): return _ml.CvDTreeTrainData_get_sample_indices(self, *args)
+    def get_cat_var_data(self, *args): return _ml.CvDTreeTrainData_get_cat_var_data(self, *args)
+    def get_ord_var_data(self, *args): return _ml.CvDTreeTrainData_get_ord_var_data(self, *args)
+    def get_child_buf_idx(self, *args): return _ml.CvDTreeTrainData_get_child_buf_idx(self, *args)
+    def set_params(self, *args): return _ml.CvDTreeTrainData_set_params(self, *args)
+    def new_node(self, *args): return _ml.CvDTreeTrainData_new_node(self, *args)
+    def new_split_ord(self, *args): return _ml.CvDTreeTrainData_new_split_ord(self, *args)
+    def new_split_cat(self, *args): return _ml.CvDTreeTrainData_new_split_cat(self, *args)
+    def free_node_data(self, *args): return _ml.CvDTreeTrainData_free_node_data(self, *args)
+    def free_train_data(self): return _ml.CvDTreeTrainData_free_train_data(self)
+    def free_node(self, *args): return _ml.CvDTreeTrainData_free_node(self, *args)
+    def get_pred_float_buf(self): return _ml.CvDTreeTrainData_get_pred_float_buf(self)
+    def get_pred_int_buf(self): return _ml.CvDTreeTrainData_get_pred_int_buf(self)
+    def get_resp_float_buf(self): return _ml.CvDTreeTrainData_get_resp_float_buf(self)
+    def get_resp_int_buf(self): return _ml.CvDTreeTrainData_get_resp_int_buf(self)
+    def get_cv_lables_buf(self): return _ml.CvDTreeTrainData_get_cv_lables_buf(self)
+    def get_sample_idx_buf(self): return _ml.CvDTreeTrainData_get_sample_idx_buf(self)
+    __swig_setmethods__["pred_float_buf"] = _ml.CvDTreeTrainData_pred_float_buf_set
+    __swig_getmethods__["pred_float_buf"] = _ml.CvDTreeTrainData_pred_float_buf_get
+    if _newclass:pred_float_buf = _swig_property(_ml.CvDTreeTrainData_pred_float_buf_get, _ml.CvDTreeTrainData_pred_float_buf_set)
+    __swig_setmethods__["pred_int_buf"] = _ml.CvDTreeTrainData_pred_int_buf_set
+    __swig_getmethods__["pred_int_buf"] = _ml.CvDTreeTrainData_pred_int_buf_get
+    if _newclass:pred_int_buf = _swig_property(_ml.CvDTreeTrainData_pred_int_buf_get, _ml.CvDTreeTrainData_pred_int_buf_set)
+    __swig_setmethods__["resp_float_buf"] = _ml.CvDTreeTrainData_resp_float_buf_set
+    __swig_getmethods__["resp_float_buf"] = _ml.CvDTreeTrainData_resp_float_buf_get
+    if _newclass:resp_float_buf = _swig_property(_ml.CvDTreeTrainData_resp_float_buf_get, _ml.CvDTreeTrainData_resp_float_buf_set)
+    __swig_setmethods__["resp_int_buf"] = _ml.CvDTreeTrainData_resp_int_buf_set
+    __swig_getmethods__["resp_int_buf"] = _ml.CvDTreeTrainData_resp_int_buf_get
+    if _newclass:resp_int_buf = _swig_property(_ml.CvDTreeTrainData_resp_int_buf_get, _ml.CvDTreeTrainData_resp_int_buf_set)
+    __swig_setmethods__["cv_lables_buf"] = _ml.CvDTreeTrainData_cv_lables_buf_set
+    __swig_getmethods__["cv_lables_buf"] = _ml.CvDTreeTrainData_cv_lables_buf_get
+    if _newclass:cv_lables_buf = _swig_property(_ml.CvDTreeTrainData_cv_lables_buf_get, _ml.CvDTreeTrainData_cv_lables_buf_set)
+    __swig_setmethods__["sample_idx_buf"] = _ml.CvDTreeTrainData_sample_idx_buf_set
+    __swig_getmethods__["sample_idx_buf"] = _ml.CvDTreeTrainData_sample_idx_buf_get
+    if _newclass:sample_idx_buf = _swig_property(_ml.CvDTreeTrainData_sample_idx_buf_get, _ml.CvDTreeTrainData_sample_idx_buf_set)
     __swig_setmethods__["sample_count"] = _ml.CvDTreeTrainData_sample_count_set
     __swig_getmethods__["sample_count"] = _ml.CvDTreeTrainData_sample_count_get
     if _newclass:sample_count = _swig_property(_ml.CvDTreeTrainData_sample_count_get, _ml.CvDTreeTrainData_sample_count_set)
@@ -862,6 +915,9 @@ class CvDTreeTrainData(_object):
     __swig_setmethods__["cat_var_count"] = _ml.CvDTreeTrainData_cat_var_count_set
     __swig_getmethods__["cat_var_count"] = _ml.CvDTreeTrainData_cat_var_count_get
     if _newclass:cat_var_count = _swig_property(_ml.CvDTreeTrainData_cat_var_count_get, _ml.CvDTreeTrainData_cat_var_count_set)
+    __swig_setmethods__["work_var_count"] = _ml.CvDTreeTrainData_work_var_count_set
+    __swig_getmethods__["work_var_count"] = _ml.CvDTreeTrainData_work_var_count_get
+    if _newclass:work_var_count = _swig_property(_ml.CvDTreeTrainData_work_var_count_get, _ml.CvDTreeTrainData_work_var_count_set)
     __swig_setmethods__["have_labels"] = _ml.CvDTreeTrainData_have_labels_set
     __swig_getmethods__["have_labels"] = _ml.CvDTreeTrainData_have_labels_get
     if _newclass:have_labels = _swig_property(_ml.CvDTreeTrainData_have_labels_get, _ml.CvDTreeTrainData_have_labels_set)
@@ -871,6 +927,18 @@ class CvDTreeTrainData(_object):
     __swig_setmethods__["is_classifier"] = _ml.CvDTreeTrainData_is_classifier_set
     __swig_getmethods__["is_classifier"] = _ml.CvDTreeTrainData_is_classifier_get
     if _newclass:is_classifier = _swig_property(_ml.CvDTreeTrainData_is_classifier_get, _ml.CvDTreeTrainData_is_classifier_set)
+    __swig_setmethods__["tflag"] = _ml.CvDTreeTrainData_tflag_set
+    __swig_getmethods__["tflag"] = _ml.CvDTreeTrainData_tflag_get
+    if _newclass:tflag = _swig_property(_ml.CvDTreeTrainData_tflag_get, _ml.CvDTreeTrainData_tflag_set)
+    __swig_setmethods__["train_data"] = _ml.CvDTreeTrainData_train_data_set
+    __swig_getmethods__["train_data"] = _ml.CvDTreeTrainData_train_data_get
+    if _newclass:train_data = _swig_property(_ml.CvDTreeTrainData_train_data_get, _ml.CvDTreeTrainData_train_data_set)
+    __swig_setmethods__["responses"] = _ml.CvDTreeTrainData_responses_set
+    __swig_getmethods__["responses"] = _ml.CvDTreeTrainData_responses_get
+    if _newclass:responses = _swig_property(_ml.CvDTreeTrainData_responses_get, _ml.CvDTreeTrainData_responses_set)
+    __swig_setmethods__["responses_copy"] = _ml.CvDTreeTrainData_responses_copy_set
+    __swig_getmethods__["responses_copy"] = _ml.CvDTreeTrainData_responses_copy_get
+    if _newclass:responses_copy = _swig_property(_ml.CvDTreeTrainData_responses_copy_get, _ml.CvDTreeTrainData_responses_copy_set)
     __swig_setmethods__["buf_count"] = _ml.CvDTreeTrainData_buf_count_set
     __swig_getmethods__["buf_count"] = _ml.CvDTreeTrainData_buf_count_get
     if _newclass:buf_count = _swig_property(_ml.CvDTreeTrainData_buf_count_get, _ml.CvDTreeTrainData_buf_count_set)
@@ -880,6 +948,9 @@ class CvDTreeTrainData(_object):
     __swig_setmethods__["shared"] = _ml.CvDTreeTrainData_shared_set
     __swig_getmethods__["shared"] = _ml.CvDTreeTrainData_shared_get
     if _newclass:shared = _swig_property(_ml.CvDTreeTrainData_shared_get, _ml.CvDTreeTrainData_shared_set)
+    __swig_setmethods__["is_buf_16u"] = _ml.CvDTreeTrainData_is_buf_16u_set
+    __swig_getmethods__["is_buf_16u"] = _ml.CvDTreeTrainData_is_buf_16u_get
+    if _newclass:is_buf_16u = _swig_property(_ml.CvDTreeTrainData_is_buf_16u_get, _ml.CvDTreeTrainData_is_buf_16u_set)
     __swig_setmethods__["cat_count"] = _ml.CvDTreeTrainData_cat_count_set
     __swig_getmethods__["cat_count"] = _ml.CvDTreeTrainData_cat_count_get
     if _newclass:cat_count = _swig_property(_ml.CvDTreeTrainData_cat_count_get, _ml.CvDTreeTrainData_cat_count_set)
@@ -951,21 +1022,25 @@ class CvDTree(CvStatModel):
     for _s in [CvStatModel]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
     __getattr__ = lambda self, name: _swig_getattr(self, CvDTree, name)
     __repr__ = _swig_repr
-    def __init__(self, *args): 
-        this = _ml.new_CvDTree(*args)
+    def __init__(self): 
+        this = _ml.new_CvDTree()
         try: self.this.append(this)
         except: self.this = this
     __swig_destroy__ = _ml.delete_CvDTree
     __del__ = lambda self : None;
-    def train(*args): return _ml.CvDTree_train(*args)
-    def predict(*args): return _ml.CvDTree_predict(*args)
-    def get_var_importance(*args): return _ml.CvDTree_get_var_importance(*args)
-    def clear(*args): return _ml.CvDTree_clear(*args)
-    def read(*args): return _ml.CvDTree_read(*args)
-    def write(*args): return _ml.CvDTree_write(*args)
-    def get_root(*args): return _ml.CvDTree_get_root(*args)
-    def get_pruned_tree_idx(*args): return _ml.CvDTree_get_pruned_tree_idx(*args)
-    def get_data(*args): return _ml.CvDTree_get_data(*args)
+    def calc_error(self, *args): return _ml.CvDTree_calc_error(self, *args)
+    def train(self, *args): return _ml.CvDTree_train(self, *args)
+    def predict(self, *args): return _ml.CvDTree_predict(self, *args)
+    def get_var_importance(self): return _ml.CvDTree_get_var_importance(self)
+    def clear(self): return _ml.CvDTree_clear(self)
+    def read(self, *args): return _ml.CvDTree_read(self, *args)
+    def write(self, *args): return _ml.CvDTree_write(self, *args)
+    def get_root(self): return _ml.CvDTree_get_root(self)
+    def get_pruned_tree_idx(self): return _ml.CvDTree_get_pruned_tree_idx(self)
+    def get_data(self): return _ml.CvDTree_get_data(self)
+    __swig_setmethods__["pruned_tree_idx"] = _ml.CvDTree_pruned_tree_idx_set
+    __swig_getmethods__["pruned_tree_idx"] = _ml.CvDTree_pruned_tree_idx_get
+    if _newclass:pruned_tree_idx = _swig_property(_ml.CvDTree_pruned_tree_idx_get, _ml.CvDTree_pruned_tree_idx_set)
 CvDTree_swigregister = _ml.CvDTree_swigregister
 CvDTree_swigregister(CvDTree)
 
@@ -977,15 +1052,15 @@ class CvForestTree(CvDTree):
     for _s in [CvDTree]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
     __getattr__ = lambda self, name: _swig_getattr(self, CvForestTree, name)
     __repr__ = _swig_repr
-    def __init__(self, *args): 
-        this = _ml.new_CvForestTree(*args)
+    def __init__(self): 
+        this = _ml.new_CvForestTree()
         try: self.this.append(this)
         except: self.this = this
     __swig_destroy__ = _ml.delete_CvForestTree
     __del__ = lambda self : None;
-    def get_var_count(*args): return _ml.CvForestTree_get_var_count(*args)
-    def train(*args): return _ml.CvForestTree_train(*args)
-    def read(*args): return _ml.CvForestTree_read(*args)
+    def get_var_count(self): return _ml.CvForestTree_get_var_count(self)
+    def train(self, *args): return _ml.CvForestTree_train(self, *args)
+    def read(self, *args): return _ml.CvForestTree_read(self, *args)
 CvForestTree_swigregister = _ml.CvForestTree_swigregister
 CvForestTree_swigregister(CvForestTree)
 
@@ -1023,26 +1098,91 @@ class CvRTrees(CvStatModel):
     for _s in [CvStatModel]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
     __getattr__ = lambda self, name: _swig_getattr(self, CvRTrees, name)
     __repr__ = _swig_repr
-    def __init__(self, *args): 
-        this = _ml.new_CvRTrees(*args)
+    def __init__(self): 
+        this = _ml.new_CvRTrees()
         try: self.this.append(this)
         except: self.this = this
     __swig_destroy__ = _ml.delete_CvRTrees
     __del__ = lambda self : None;
-    def train(*args): return _ml.CvRTrees_train(*args)
-    def predict(*args): return _ml.CvRTrees_predict(*args)
-    def clear(*args): return _ml.CvRTrees_clear(*args)
-    def get_var_importance(*args): return _ml.CvRTrees_get_var_importance(*args)
-    def get_proximity(*args): return _ml.CvRTrees_get_proximity(*args)
-    def read(*args): return _ml.CvRTrees_read(*args)
-    def write(*args): return _ml.CvRTrees_write(*args)
-    def get_active_var_mask(*args): return _ml.CvRTrees_get_active_var_mask(*args)
-    def get_rng(*args): return _ml.CvRTrees_get_rng(*args)
-    def get_tree_count(*args): return _ml.CvRTrees_get_tree_count(*args)
-    def get_tree(*args): return _ml.CvRTrees_get_tree(*args)
+    def train(self, *args): return _ml.CvRTrees_train(self, *args)
+    def predict(self, *args): return _ml.CvRTrees_predict(self, *args)
+    def predict_prob(self, *args): return _ml.CvRTrees_predict_prob(self, *args)
+    def clear(self): return _ml.CvRTrees_clear(self)
+    def get_var_importance(self): return _ml.CvRTrees_get_var_importance(self)
+    def get_proximity(self, *args): return _ml.CvRTrees_get_proximity(self, *args)
+    def calc_error(self, *args): return _ml.CvRTrees_calc_error(self, *args)
+    def get_train_error(self): return _ml.CvRTrees_get_train_error(self)
+    def read(self, *args): return _ml.CvRTrees_read(self, *args)
+    def write(self, *args): return _ml.CvRTrees_write(self, *args)
+    def get_active_var_mask(self): return _ml.CvRTrees_get_active_var_mask(self)
+    def get_rng(self): return _ml.CvRTrees_get_rng(self)
+    def get_tree_count(self): return _ml.CvRTrees_get_tree_count(self)
+    def get_tree(self, *args): return _ml.CvRTrees_get_tree(self, *args)
 CvRTrees_swigregister = _ml.CvRTrees_swigregister
 CvRTrees_swigregister(CvRTrees)
 
+class CvERTreeTrainData(CvDTreeTrainData):
+    __swig_setmethods__ = {}
+    for _s in [CvDTreeTrainData]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
+    __setattr__ = lambda self, name, value: _swig_setattr(self, CvERTreeTrainData, name, value)
+    __swig_getmethods__ = {}
+    for _s in [CvDTreeTrainData]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
+    __getattr__ = lambda self, name: _swig_getattr(self, CvERTreeTrainData, name)
+    __repr__ = _swig_repr
+    def set_data(self, *args): return _ml.CvERTreeTrainData_set_data(self, *args)
+    def get_ord_var_data(self, *args): return _ml.CvERTreeTrainData_get_ord_var_data(self, *args)
+    def get_sample_indices(self, *args): return _ml.CvERTreeTrainData_get_sample_indices(self, *args)
+    def get_cv_labels(self, *args): return _ml.CvERTreeTrainData_get_cv_labels(self, *args)
+    def get_cat_var_data(self, *args): return _ml.CvERTreeTrainData_get_cat_var_data(self, *args)
+    def get_vectors(self, *args): return _ml.CvERTreeTrainData_get_vectors(self, *args)
+    def subsample_data(self, *args): return _ml.CvERTreeTrainData_subsample_data(self, *args)
+    __swig_setmethods__["missing_mask"] = _ml.CvERTreeTrainData_missing_mask_set
+    __swig_getmethods__["missing_mask"] = _ml.CvERTreeTrainData_missing_mask_get
+    if _newclass:missing_mask = _swig_property(_ml.CvERTreeTrainData_missing_mask_get, _ml.CvERTreeTrainData_missing_mask_set)
+    def __init__(self): 
+        this = _ml.new_CvERTreeTrainData()
+        try: self.this.append(this)
+        except: self.this = this
+    __swig_destroy__ = _ml.delete_CvERTreeTrainData
+    __del__ = lambda self : None;
+CvERTreeTrainData_swigregister = _ml.CvERTreeTrainData_swigregister
+CvERTreeTrainData_swigregister(CvERTreeTrainData)
+
+class CvForestERTree(CvForestTree):
+    __swig_setmethods__ = {}
+    for _s in [CvForestTree]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
+    __setattr__ = lambda self, name, value: _swig_setattr(self, CvForestERTree, name, value)
+    __swig_getmethods__ = {}
+    for _s in [CvForestTree]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
+    __getattr__ = lambda self, name: _swig_getattr(self, CvForestERTree, name)
+    __repr__ = _swig_repr
+    def __init__(self): 
+        this = _ml.new_CvForestERTree()
+        try: self.this.append(this)
+        except: self.this = this
+    __swig_destroy__ = _ml.delete_CvForestERTree
+    __del__ = lambda self : None;
+CvForestERTree_swigregister = _ml.CvForestERTree_swigregister
+CvForestERTree_swigregister(CvForestERTree)
+
+class CvERTrees(CvRTrees):
+    __swig_setmethods__ = {}
+    for _s in [CvRTrees]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
+    __setattr__ = lambda self, name, value: _swig_setattr(self, CvERTrees, name, value)
+    __swig_getmethods__ = {}
+    for _s in [CvRTrees]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
+    __getattr__ = lambda self, name: _swig_getattr(self, CvERTrees, name)
+    __repr__ = _swig_repr
+    def __init__(self): 
+        this = _ml.new_CvERTrees()
+        try: self.this.append(this)
+        except: self.this = this
+    __swig_destroy__ = _ml.delete_CvERTrees
+    __del__ = lambda self : None;
+    def train(self, *args): return _ml.CvERTrees_train(self, *args)
+CvERTrees_swigregister = _ml.CvERTrees_swigregister
+CvERTrees_swigregister(CvERTrees)
+
 class CvBoostParams(CvDTreeParams):
     __swig_setmethods__ = {}
     for _s in [CvDTreeParams]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
@@ -1080,16 +1220,16 @@ class CvBoostTree(CvDTree):
     for _s in [CvDTree]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
     __getattr__ = lambda self, name: _swig_getattr(self, CvBoostTree, name)
     __repr__ = _swig_repr
-    def __init__(self, *args): 
-        this = _ml.new_CvBoostTree(*args)
+    def __init__(self): 
+        this = _ml.new_CvBoostTree()
         try: self.this.append(this)
         except: self.this = this
     __swig_destroy__ = _ml.delete_CvBoostTree
     __del__ = lambda self : None;
-    def scale(*args): return _ml.CvBoostTree_scale(*args)
-    def clear(*args): return _ml.CvBoostTree_clear(*args)
-    def train(*args): return _ml.CvBoostTree_train(*args)
-    def read(*args): return _ml.CvBoostTree_read(*args)
+    def scale(self, *args): return _ml.CvBoostTree_scale(self, *args)
+    def clear(self): return _ml.CvBoostTree_clear(self)
+    def train(self, *args): return _ml.CvBoostTree_train(self, *args)
+    def read(self, *args): return _ml.CvBoostTree_read(self, *args)
 CvBoostTree_swigregister = _ml.CvBoostTree_swigregister
 CvBoostTree_swigregister(CvBoostTree)
 
@@ -1115,17 +1255,20 @@ class CvBoost(CvStatModel):
         this = _ml.new_CvBoost(*args)
         try: self.this.append(this)
         except: self.this = this
-    def train(*args): return _ml.CvBoost_train(*args)
-    def predict(*args): return _ml.CvBoost_predict(*args)
-    def prune(*args): return _ml.CvBoost_prune(*args)
-    def clear(*args): return _ml.CvBoost_clear(*args)
-    def write(*args): return _ml.CvBoost_write(*args)
-    def read(*args): return _ml.CvBoost_read(*args)
-    def get_weak_predictors(*args): return _ml.CvBoost_get_weak_predictors(*args)
-    def get_weights(*args): return _ml.CvBoost_get_weights(*args)
-    def get_subtree_weights(*args): return _ml.CvBoost_get_subtree_weights(*args)
-    def get_weak_response(*args): return _ml.CvBoost_get_weak_response(*args)
-    def get_params(*args): return _ml.CvBoost_get_params(*args)
+    def train(self, *args): return _ml.CvBoost_train(self, *args)
+    def predict(self, *args): return _ml.CvBoost_predict(self, *args)
+    def calc_error(self, *args): return _ml.CvBoost_calc_error(self, *args)
+    def prune(self, *args): return _ml.CvBoost_prune(self, *args)
+    def clear(self): return _ml.CvBoost_clear(self)
+    def write(self, *args): return _ml.CvBoost_write(self, *args)
+    def read(self, *args): return _ml.CvBoost_read(self, *args)
+    def get_active_vars(self, absolute_idx = True): return _ml.CvBoost_get_active_vars(self, absolute_idx)
+    def get_weak_predictors(self): return _ml.CvBoost_get_weak_predictors(self)
+    def get_weights(self): return _ml.CvBoost_get_weights(self)
+    def get_subtree_weights(self): return _ml.CvBoost_get_subtree_weights(self)
+    def get_weak_response(self): return _ml.CvBoost_get_weak_response(self)
+    def get_params(self): return _ml.CvBoost_get_params(self)
+    def get_data(self): return _ml.CvBoost_get_data(self)
 CvBoost_swigregister = _ml.CvBoost_swigregister
 CvBoost_swigregister(CvBoost)
 
@@ -1187,28 +1330,143 @@ class CvANN_MLP(CvStatModel):
         except: self.this = this
     __swig_destroy__ = _ml.delete_CvANN_MLP
     __del__ = lambda self : None;
-    def create(*args): return _ml.CvANN_MLP_create(*args)
-    def train(*args): return _ml.CvANN_MLP_train(*args)
-    def predict(*args): return _ml.CvANN_MLP_predict(*args)
-    def clear(*args): return _ml.CvANN_MLP_clear(*args)
+    def create(self, *args): return _ml.CvANN_MLP_create(self, *args)
+    def train(self, *args): return _ml.CvANN_MLP_train(self, *args)
+    def predict(self, *args): return _ml.CvANN_MLP_predict(self, *args)
+    def clear(self): return _ml.CvANN_MLP_clear(self)
     IDENTITY = _ml.CvANN_MLP_IDENTITY
     SIGMOID_SYM = _ml.CvANN_MLP_SIGMOID_SYM
     GAUSSIAN = _ml.CvANN_MLP_GAUSSIAN
     UPDATE_WEIGHTS = _ml.CvANN_MLP_UPDATE_WEIGHTS
     NO_INPUT_SCALE = _ml.CvANN_MLP_NO_INPUT_SCALE
     NO_OUTPUT_SCALE = _ml.CvANN_MLP_NO_OUTPUT_SCALE
-    def read(*args): return _ml.CvANN_MLP_read(*args)
-    def write(*args): return _ml.CvANN_MLP_write(*args)
-    def get_layer_count(*args): return _ml.CvANN_MLP_get_layer_count(*args)
-    def get_layer_sizes(*args): return _ml.CvANN_MLP_get_layer_sizes(*args)
-    def get_weights(*args): return _ml.CvANN_MLP_get_weights(*args)
+    def read(self, *args): return _ml.CvANN_MLP_read(self, *args)
+    def write(self, *args): return _ml.CvANN_MLP_write(self, *args)
+    def get_layer_count(self): return _ml.CvANN_MLP_get_layer_count(self)
+    def get_layer_sizes(self): return _ml.CvANN_MLP_get_layer_sizes(self)
+    def get_weights(self, *args): return _ml.CvANN_MLP_get_weights(self, *args)
 CvANN_MLP_swigregister = _ml.CvANN_MLP_swigregister
 CvANN_MLP_swigregister(CvANN_MLP)
 
+
+def cvRandMVNormal(*args):
+  return _ml.cvRandMVNormal(*args)
 cvRandMVNormal = _ml.cvRandMVNormal
+
+def cvRandGaussMixture(*args):
+  return _ml.cvRandGaussMixture(*args)
 cvRandGaussMixture = _ml.cvRandGaussMixture
 CV_TS_CONCENTRIC_SPHERES = _ml.CV_TS_CONCENTRIC_SPHERES
+
+def cvCreateTestSet(*args):
+  return _ml.cvCreateTestSet(*args)
 cvCreateTestSet = _ml.cvCreateTestSet
-cvCompleteSymm = _ml.cvCompleteSymm
+CV_COUNT = _ml.CV_COUNT
+CV_PORTION = _ml.CV_PORTION
+class CvTrainTestSplit(_object):
+    __swig_setmethods__ = {}
+    __setattr__ = lambda self, name, value: _swig_setattr(self, CvTrainTestSplit, name, value)
+    __swig_getmethods__ = {}
+    __getattr__ = lambda self, name: _swig_getattr(self, CvTrainTestSplit, name)
+    __repr__ = _swig_repr
+    def __init__(self, *args): 
+        this = _ml.new_CvTrainTestSplit(*args)
+        try: self.this.append(this)
+        except: self.this = this
+    __swig_setmethods__["train_sample_part_mode"] = _ml.CvTrainTestSplit_train_sample_part_mode_set
+    __swig_getmethods__["train_sample_part_mode"] = _ml.CvTrainTestSplit_train_sample_part_mode_get
+    if _newclass:train_sample_part_mode = _swig_property(_ml.CvTrainTestSplit_train_sample_part_mode_get, _ml.CvTrainTestSplit_train_sample_part_mode_set)
+    __swig_setmethods__["class_part_mode"] = _ml.CvTrainTestSplit_class_part_mode_set
+    __swig_getmethods__["class_part_mode"] = _ml.CvTrainTestSplit_class_part_mode_get
+    if _newclass:class_part_mode = _swig_property(_ml.CvTrainTestSplit_class_part_mode_get, _ml.CvTrainTestSplit_class_part_mode_set)
+    __swig_setmethods__["mix"] = _ml.CvTrainTestSplit_mix_set
+    __swig_getmethods__["mix"] = _ml.CvTrainTestSplit_mix_get
+    if _newclass:mix = _swig_property(_ml.CvTrainTestSplit_mix_get, _ml.CvTrainTestSplit_mix_set)
+    __swig_getmethods__["class_part"] = _ml.CvTrainTestSplit_class_part_get
+    if _newclass:class_part = _swig_property(_ml.CvTrainTestSplit_class_part_get)
+    __swig_getmethods__["train_sample_part"] = _ml.CvTrainTestSplit_train_sample_part_get
+    if _newclass:train_sample_part = _swig_property(_ml.CvTrainTestSplit_train_sample_part_get)
+    __swig_destroy__ = _ml.delete_CvTrainTestSplit
+    __del__ = lambda self : None;
+CvTrainTestSplit_swigregister = _ml.CvTrainTestSplit_swigregister
+CvTrainTestSplit_swigregister(CvTrainTestSplit)
+
+class CvTrainTestSplit_class_part(_object):
+    __swig_setmethods__ = {}
+    __setattr__ = lambda self, name, value: _swig_setattr(self, CvTrainTestSplit_class_part, name, value)
+    __swig_getmethods__ = {}
+    __getattr__ = lambda self, name: _swig_getattr(self, CvTrainTestSplit_class_part, name)
+    __repr__ = _swig_repr
+    __swig_setmethods__["count"] = _ml.CvTrainTestSplit_class_part_count_set
+    __swig_getmethods__["count"] = _ml.CvTrainTestSplit_class_part_count_get
+    if _newclass:count = _swig_property(_ml.CvTrainTestSplit_class_part_count_get, _ml.CvTrainTestSplit_class_part_count_set)
+    __swig_setmethods__["portion"] = _ml.CvTrainTestSplit_class_part_portion_set
+    __swig_getmethods__["portion"] = _ml.CvTrainTestSplit_class_part_portion_get
+    if _newclass:portion = _swig_property(_ml.CvTrainTestSplit_class_part_portion_get, _ml.CvTrainTestSplit_class_part_portion_set)
+    def __init__(self): 
+        this = _ml.new_CvTrainTestSplit_class_part()
+        try: self.this.append(this)
+        except: self.this = this
+    __swig_destroy__ = _ml.delete_CvTrainTestSplit_class_part
+    __del__ = lambda self : None;
+CvTrainTestSplit_class_part_swigregister = _ml.CvTrainTestSplit_class_part_swigregister
+CvTrainTestSplit_class_part_swigregister(CvTrainTestSplit_class_part)
+
+class CvTrainTestSplit_train_sample_part(_object):
+    __swig_setmethods__ = {}
+    __setattr__ = lambda self, name, value: _swig_setattr(self, CvTrainTestSplit_train_sample_part, name, value)
+    __swig_getmethods__ = {}
+    __getattr__ = lambda self, name: _swig_getattr(self, CvTrainTestSplit_train_sample_part, name)
+    __repr__ = _swig_repr
+    __swig_setmethods__["count"] = _ml.CvTrainTestSplit_train_sample_part_count_set
+    __swig_getmethods__["count"] = _ml.CvTrainTestSplit_train_sample_part_count_get
+    if _newclass:count = _swig_property(_ml.CvTrainTestSplit_train_sample_part_count_get, _ml.CvTrainTestSplit_train_sample_part_count_set)
+    __swig_setmethods__["portion"] = _ml.CvTrainTestSplit_train_sample_part_portion_set
+    __swig_getmethods__["portion"] = _ml.CvTrainTestSplit_train_sample_part_portion_get
+    if _newclass:portion = _swig_property(_ml.CvTrainTestSplit_train_sample_part_portion_get, _ml.CvTrainTestSplit_train_sample_part_portion_set)
+    def __init__(self): 
+        this = _ml.new_CvTrainTestSplit_train_sample_part()
+        try: self.this.append(this)
+        except: self.this = this
+    __swig_destroy__ = _ml.delete_CvTrainTestSplit_train_sample_part
+    __del__ = lambda self : None;
+CvTrainTestSplit_train_sample_part_swigregister = _ml.CvTrainTestSplit_train_sample_part_swigregister
+CvTrainTestSplit_train_sample_part_swigregister(CvTrainTestSplit_train_sample_part)
+
+class CvMLData(_object):
+    __swig_setmethods__ = {}
+    __setattr__ = lambda self, name, value: _swig_setattr(self, CvMLData, name, value)
+    __swig_getmethods__ = {}
+    __getattr__ = lambda self, name: _swig_getattr(self, CvMLData, name)
+    __repr__ = _swig_repr
+    def __init__(self): 
+        this = _ml.new_CvMLData()
+        try: self.this.append(this)
+        except: self.this = this
+    __swig_destroy__ = _ml.delete_CvMLData
+    __del__ = lambda self : None;
+    def read_csv(self, *args): return _ml.CvMLData_read_csv(self, *args)
+    def get_values(self): return _ml.CvMLData_get_values(self)
+    def get_responses(self): return _ml.CvMLData_get_responses(self)
+    def get_missing(self): return _ml.CvMLData_get_missing(self)
+    def set_response_idx(self, *args): return _ml.CvMLData_set_response_idx(self, *args)
+    def get_response_idx(self): return _ml.CvMLData_get_response_idx(self)
+    def get_train_sample_idx(self): return _ml.CvMLData_get_train_sample_idx(self)
+    def get_test_sample_idx(self): return _ml.CvMLData_get_test_sample_idx(self)
+    def mix_train_and_test_idx(self): return _ml.CvMLData_mix_train_and_test_idx(self)
+    def set_train_test_split(self, *args): return _ml.CvMLData_set_train_test_split(self, *args)
+    def get_var_idx(self): return _ml.CvMLData_get_var_idx(self)
+    def chahge_var_idx(self, *args): return _ml.CvMLData_chahge_var_idx(self, *args)
+    def get_var_types(self): return _ml.CvMLData_get_var_types(self)
+    def get_var_type(self, *args): return _ml.CvMLData_get_var_type(self, *args)
+    def set_var_types(self, *args): return _ml.CvMLData_set_var_types(self, *args)
+    def change_var_type(self, *args): return _ml.CvMLData_change_var_type(self, *args)
+    def set_delimiter(self, *args): return _ml.CvMLData_set_delimiter(self, *args)
+    def get_delimiter(self): return _ml.CvMLData_get_delimiter(self)
+    def set_miss_ch(self, *args): return _ml.CvMLData_set_miss_ch(self, *args)
+    def get_miss_ch(self): return _ml.CvMLData_get_miss_ch(self)
+CvMLData_swigregister = _ml.CvMLData_swigregister
+CvMLData_swigregister(CvMLData)
+