#863: typo fixed, minor changes in cpp generator
authorAndrey Pavlenko <no@email>
Fri, 1 Jul 2011 15:58:16 +0000 (15:58 +0000)
committerAndrey Pavlenko <no@email>
Fri, 1 Jul 2011 15:58:16 +0000 (15:58 +0000)
modules/java/gen_java.py
modules/java/src/java/Mat.java

index efb5d64..6547ddc 100644 (file)
@@ -277,7 +277,7 @@ public class %(module)s {
 """ % {"module" : module})\r
         self.cpp_code.write( "\n".join(['#include "opencv2/%s/%s"' % (module, os.path.basename(f)) \\r
                             for f in srcfiles]) )\r
-        self.cpp_code.write("\n\n")\r
+        self.cpp_code.write('\n\nextern "C" {\n\n')\r
 \r
         # step 2: generate the code for global constants\r
         self.gen_consts()\r
@@ -288,8 +288,9 @@ public class %(module)s {
         # step 4: generate code for the classes\r
         #self.gen_classes() # !!! tempory disabled !!!\r
 \r
-        # java module tail\r
+        # module tail\r
         self.java_code.write("}\n")\r
+        self.cpp_code.write('} // extern "C"\n')\r
 \r
         self.save(output_path, module+".java", self.java_code)\r
         self.save(output_path, module+".cpp",  self.cpp_code)\r
@@ -449,16 +450,6 @@ public class %(module)s {
             rtype = type_dict[fi.ctype]["jni_type"]\r
             self.cpp_code.write ( Template( \\r
 """\r
-#ifdef __cplusplus\r
-extern "C" {\r
-#endif\r
-\r
-JNIEXPORT $rtype JNICALL Java_org_opencv_${module}_$fname\r
-  ($args);\r
-\r
-#ifdef __cplusplus\r
-}\r
-#endif\r
 \r
 JNIEXPORT $rtype JNICALL Java_org_opencv_${module}_$fname\r
   ($args)\r
@@ -468,6 +459,7 @@ JNIEXPORT $rtype JNICALL Java_org_opencv_${module}_$fname
     $ret( $cvname( $cvargs ) );\r
 }\r
 \r
+\r
 """ ).substitute( \\r
         rtype = rtype, \\r
         module = self.module, \\r
index bab9a10..8669b99 100644 (file)
@@ -394,7 +394,7 @@ public class Mat {
     }\r
        \r
        // native stuff\r
-       static { System.loadLibrary("opencv_java"); ); }\r
+       static { System.loadLibrary("opencv_java"); }\r
        protected long nativeObj;\r
        private static native long nCreateMat();\r
        private static native long nCreateMat(int rows, int cols, int type);\r