Java API: generator script whitespace cleanup, adding statistics gathering code
This commit is contained in:
		@@ -121,7 +121,7 @@ missing_consts = \
 | 
			
		||||
        ), # private
 | 
			
		||||
        'public' :
 | 
			
		||||
        (
 | 
			
		||||
            ('SVD_MODIFY_A', 1), ('SVD_NO_UV', 2), ('SVD_FULL_UV', 4), 
 | 
			
		||||
            ('SVD_MODIFY_A', 1), ('SVD_NO_UV', 2), ('SVD_FULL_UV', 4),
 | 
			
		||||
            ('FILLED', -1),
 | 
			
		||||
            ('LINE_AA', 16), ('LINE_8', 8), ('LINE_4', 4),
 | 
			
		||||
            ('REDUCE_SUM', 0), ('REDUCE_AVG', 1), ('REDUCE_MAX', 2), ('REDUCE_MIN', 3),
 | 
			
		||||
@@ -481,10 +481,10 @@ JNIEXPORT jdoubleArray JNICALL Java_org_opencv_core_Core_n_1getTextSize
 | 
			
		||||
        "imshow"            : {'j_code' : '', 'jn_code' : '', 'cpp_code' : '' },
 | 
			
		||||
        "waitKey"           : {'j_code' : '', 'jn_code' : '', 'cpp_code' : '' },
 | 
			
		||||
    }, # Highgui
 | 
			
		||||
    
 | 
			
		||||
 | 
			
		||||
    'CvANN_MLP_TrainParams':
 | 
			
		||||
    {
 | 
			
		||||
        "CvANN_MLP_TrainParams" : 
 | 
			
		||||
        "CvANN_MLP_TrainParams" :
 | 
			
		||||
        {
 | 
			
		||||
            'j_code' : """
 | 
			
		||||
//javadoc:CvANN_MLP_TrainParams::CvANN_MLP_TrainParams()
 | 
			
		||||
@@ -502,10 +502,10 @@ JNIEXPORT jlong JNICALL Java_org_opencv_ml_CvANN_1MLP_1TrainParams_n_1newObj
 | 
			
		||||
            """
 | 
			
		||||
        },
 | 
			
		||||
    },
 | 
			
		||||
    
 | 
			
		||||
 | 
			
		||||
    'CvBoostParams':
 | 
			
		||||
    {
 | 
			
		||||
        "CvBoostParams" : 
 | 
			
		||||
        "CvBoostParams" :
 | 
			
		||||
        {
 | 
			
		||||
            'j_code' : """
 | 
			
		||||
//javadoc:CvBoostParams::CvBoostParams()
 | 
			
		||||
@@ -523,10 +523,10 @@ JNIEXPORT jlong JNICALL Java_org_opencv_ml_CvBoostParams_n_1newObj
 | 
			
		||||
            """
 | 
			
		||||
        },
 | 
			
		||||
    },
 | 
			
		||||
    
 | 
			
		||||
 | 
			
		||||
    'CvDTreeParams':
 | 
			
		||||
    {
 | 
			
		||||
        "CvDTreeParams" : 
 | 
			
		||||
        "CvDTreeParams" :
 | 
			
		||||
        {
 | 
			
		||||
            'j_code' : """
 | 
			
		||||
//javadoc:CvDTreeParams::CvDTreeParams()
 | 
			
		||||
@@ -544,10 +544,10 @@ JNIEXPORT jlong JNICALL Java_org_opencv_ml_CvDTreeParams_n_1newObj
 | 
			
		||||
            """
 | 
			
		||||
        },
 | 
			
		||||
    },
 | 
			
		||||
    
 | 
			
		||||
 | 
			
		||||
    'CvEMParams':
 | 
			
		||||
    {
 | 
			
		||||
        "CvEMParams" : 
 | 
			
		||||
        "CvEMParams" :
 | 
			
		||||
        {
 | 
			
		||||
            'j_code' : """
 | 
			
		||||
//javadoc:CvEMParams::CvEMParams()
 | 
			
		||||
@@ -565,10 +565,10 @@ JNIEXPORT jlong JNICALL Java_org_opencv_ml_CvEMParams_n_1newObj
 | 
			
		||||
            """
 | 
			
		||||
        },
 | 
			
		||||
    },
 | 
			
		||||
    
 | 
			
		||||
 | 
			
		||||
    'CvGBTreesParams':
 | 
			
		||||
    {
 | 
			
		||||
        "CvGBTreesParams" : 
 | 
			
		||||
        "CvGBTreesParams" :
 | 
			
		||||
        {
 | 
			
		||||
            'j_code' : """
 | 
			
		||||
//javadoc:CvGBTreesParams::CvGBTreesParams()
 | 
			
		||||
@@ -586,10 +586,10 @@ JNIEXPORT jlong JNICALL Java_org_opencv_ml_CvGBTreesParams_n_1newObj
 | 
			
		||||
            """
 | 
			
		||||
        },
 | 
			
		||||
    },
 | 
			
		||||
    
 | 
			
		||||
 | 
			
		||||
    'CvParamGrid':
 | 
			
		||||
    {
 | 
			
		||||
        "CvParamGrid" : 
 | 
			
		||||
        "CvParamGrid" :
 | 
			
		||||
        {
 | 
			
		||||
            'j_code' : """
 | 
			
		||||
//javadoc:CvParamGrid::CvParamGrid()
 | 
			
		||||
@@ -607,10 +607,10 @@ JNIEXPORT jlong JNICALL Java_org_opencv_ml_CvParamGrid_n_1newObj
 | 
			
		||||
            """
 | 
			
		||||
        },
 | 
			
		||||
    },
 | 
			
		||||
    
 | 
			
		||||
 | 
			
		||||
    'CvRTParams':
 | 
			
		||||
    {
 | 
			
		||||
        "CvRTParams" : 
 | 
			
		||||
        "CvRTParams" :
 | 
			
		||||
        {
 | 
			
		||||
            'j_code' : """
 | 
			
		||||
//javadoc:CvRTParams::CvRTParams()
 | 
			
		||||
@@ -628,10 +628,10 @@ JNIEXPORT jlong JNICALL Java_org_opencv_ml_CvRTParams_n_1newObj
 | 
			
		||||
            """
 | 
			
		||||
        },
 | 
			
		||||
    },
 | 
			
		||||
    
 | 
			
		||||
 | 
			
		||||
    'CvStatModel':
 | 
			
		||||
    {
 | 
			
		||||
        "CvStatModel" : 
 | 
			
		||||
        "CvStatModel" :
 | 
			
		||||
        {
 | 
			
		||||
            'j_code' : """
 | 
			
		||||
//javadoc:CvStatModel::CvStatModel()
 | 
			
		||||
@@ -649,10 +649,10 @@ JNIEXPORT jlong JNICALL Java_org_opencv_ml_CvStatModel_n_1newObj
 | 
			
		||||
            """
 | 
			
		||||
        },
 | 
			
		||||
    },
 | 
			
		||||
    
 | 
			
		||||
 | 
			
		||||
    'CvSVMParams':
 | 
			
		||||
    {
 | 
			
		||||
        "CvSVMParams" : 
 | 
			
		||||
        "CvSVMParams" :
 | 
			
		||||
        {
 | 
			
		||||
            'j_code' : """
 | 
			
		||||
//javadoc:CvSVMParams::CvSVMParams()
 | 
			
		||||
@@ -700,7 +700,7 @@ func_arg_fix = {
 | 
			
		||||
        'getAffineTransform' : { 'src' : 'vector_Point2f', 'dst' : 'vector_Point2f', },
 | 
			
		||||
        'hconcat' : { 'src' : 'vector_Mat', },
 | 
			
		||||
        'vconcat' : { 'src' : 'vector_Mat', },
 | 
			
		||||
        
 | 
			
		||||
 | 
			
		||||
    }, # '', i.e. no class
 | 
			
		||||
} # func_arg_fix
 | 
			
		||||
 | 
			
		||||
@@ -806,6 +806,9 @@ class JavaWrapperGenerator(object):
 | 
			
		||||
        self.cpp_code = None
 | 
			
		||||
        self.ported_func_list = []
 | 
			
		||||
        self.skipped_func_list = []
 | 
			
		||||
        self.def_args_hist = {} # { def_args_cnt : funcs_cnt }
 | 
			
		||||
        self.classes_map = []
 | 
			
		||||
        self.classes_simple = []
 | 
			
		||||
 | 
			
		||||
    def add_class_code_stream(self, class_name):
 | 
			
		||||
        jname = self.classes[class_name].jname
 | 
			
		||||
@@ -862,6 +865,10 @@ public class %(jc)s {
 | 
			
		||||
        if name in type_dict:
 | 
			
		||||
            print "Duplicated class: " + name
 | 
			
		||||
            return
 | 
			
		||||
        if '/Simple' in decl[2]:
 | 
			
		||||
            self.classes_simple.append(name)
 | 
			
		||||
        if '/Map' in decl[2]:
 | 
			
		||||
            self.classes_map.append(name)
 | 
			
		||||
        type_dict[name] = \
 | 
			
		||||
            { "j_type" : classinfo.jname,
 | 
			
		||||
              "jn_type" : "long", "jn_args" : (("__int64", ".nativeObj"),),
 | 
			
		||||
@@ -946,6 +953,9 @@ public class %(jc)s {
 | 
			
		||||
            func_map[ffi.jname].add_func(ffi.funcs[0])
 | 
			
		||||
        else:
 | 
			
		||||
            func_map[ffi.jname] = ffi
 | 
			
		||||
        # calc args with def val
 | 
			
		||||
        cnt = len([a for a in ffi.funcs[0].args if a.defval])
 | 
			
		||||
        self.def_args_hist[cnt] = self.def_args_hist.get(cnt, 0) + 1
 | 
			
		||||
 | 
			
		||||
    def save(self, path, buf):
 | 
			
		||||
        f = open(path, "wt")
 | 
			
		||||
@@ -971,7 +981,7 @@ public class %(jc)s {
 | 
			
		||||
                    self.add_const(decl)
 | 
			
		||||
                else: # function
 | 
			
		||||
                    self.add_func(decl)
 | 
			
		||||
                    
 | 
			
		||||
 | 
			
		||||
        #FIXME: BackgroundSubtractor is merged into BackgroundSubtractorMOG because of inheritance
 | 
			
		||||
        if "BackgroundSubtractor" in self.classes:
 | 
			
		||||
            bs = self.classes["BackgroundSubtractor"]
 | 
			
		||||
@@ -1034,6 +1044,13 @@ extern "C" {
 | 
			
		||||
            (len(self.skipped_func_list), len(self.ported_func_list)+ len(self.skipped_func_list))
 | 
			
		||||
        )
 | 
			
		||||
        report.write("".join(self.skipped_func_list))
 | 
			
		||||
 | 
			
		||||
        for i in self.def_args_hist.keys():
 | 
			
		||||
            report.write("\n%i def args - %i funcs" % (i, self.def_args_hist[i]))
 | 
			
		||||
 | 
			
		||||
        report.write("\n\nclass as MAP:\n\t" + "\n\t".join(self.classes_map))
 | 
			
		||||
        report.write("\n\nclass SIMPLE:\n\t" + "\n\t".join(self.classes_simple))
 | 
			
		||||
 | 
			
		||||
        self.save(output_path+"/"+module+".txt", report.getvalue())
 | 
			
		||||
 | 
			
		||||
        print "Done %i of %i funcs." % (len(self.ported_func_list), len(self.ported_func_list)+ len(self.skipped_func_list))
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user