Merge pull request #11251 from mshabunin:add-runtime-version

pull/11062/head
Vadim Pisarevsky 7 years ago
commit fa5a6bfa02
  1. 17
      modules/core/include/opencv2/core/utility.hpp
  2. 16
      modules/core/misc/java/src/java/core+Core.jcode.in
  3. 7
      modules/core/misc/java/test/CoreTest.java
  4. 8
      modules/core/src/system.cpp
  5. 10
      modules/core/test/test_misc.cpp

@ -247,6 +247,23 @@ architecture.
*/
CV_EXPORTS_W const String& getBuildInformation();
/** @brief Returns library version string
For example "3.4.1-dev".
@sa getMajorVersion, getMinorVersion, getRevisionVersion
*/
CV_EXPORTS_W String getVersionString();
/** @brief Returns major library version */
CV_EXPORTS_W int getVersionMajor();
/** @brief Returns minor library version */
CV_EXPORTS_W int getVersionMinor();
/** @brief Returns revision field of the library version */
CV_EXPORTS_W int getVersionRevision();
/** @brief Returns the number of ticks.
The function returns the number of ticks after the certain event (for example, when the machine was

@ -1,14 +1,14 @@
// these constants are wrapped inside functions to prevent inlining
private static String getVersion() { return "@OPENCV_VERSION@"; }
private static String getNativeLibraryName() { return "opencv_java@OPENCV_VERSION_MAJOR@@OPENCV_VERSION_MINOR@@OPENCV_VERSION_PATCH@"; }
private static int getVersionMajor() { return @OPENCV_VERSION_MAJOR@; }
private static int getVersionMinor() { return @OPENCV_VERSION_MINOR@; }
private static int getVersionRevision() { return @OPENCV_VERSION_PATCH@; }
private static String getVersionStatus() { return "@OPENCV_VERSION_STATUS@"; }
private static int getVersionMajorJ() { return @OPENCV_VERSION_MAJOR@; }
private static int getVersionMinorJ() { return @OPENCV_VERSION_MINOR@; }
private static int getVersionRevisionJ() { return @OPENCV_VERSION_PATCH@; }
private static String getVersionStatusJ() { return "@OPENCV_VERSION_STATUS@"; }
public static final String VERSION = getVersion();
public static final String NATIVE_LIBRARY_NAME = getNativeLibraryName();
public static final int VERSION_MAJOR = getVersionMajor();
public static final int VERSION_MINOR = getVersionMinor();
public static final int VERSION_REVISION = getVersionRevision();
public static final String VERSION_STATUS = getVersionStatus();
public static final int VERSION_MAJOR = getVersionMajorJ();
public static final int VERSION_MINOR = getVersionMinorJ();
public static final int VERSION_REVISION = getVersionRevisionJ();
public static final String VERSION_STATUS = getVersionStatusJ();

@ -2048,4 +2048,11 @@ public class CoreTest extends OpenCVTestCase {
assertEquals(5f, val2);
}
public void testVersion() {
assertEquals(Core.VERSION_MAJOR, Core.getVersionMajor());
assertEquals(Core.VERSION_MINOR, Core.getVersionMinor());
assertEquals(Core.VERSION_REVISION, Core.getVersionRevision());
assertEquals(Core.VERSION, Core.getVersionString());
}
}

@ -745,6 +745,14 @@ const String& getBuildInformation()
return build_info;
}
String getVersionString() { return String(CV_VERSION); }
int getVersionMajor() { return CV_VERSION_MAJOR; }
int getVersionMinor() { return CV_VERSION_MINOR; }
int getVersionRevision() { return CV_VERSION_REVISION; }
String format( const char* fmt, ... )
{
AutoBuffer<char, 1024> buf;

@ -189,4 +189,14 @@ TEST(Core_Parallel, propagate_exceptions)
}, cv::Exception);
}
TEST(Core_Version, consistency)
{
// this test verifies that OpenCV version loaded in runtime
// is the same this test has been built with
EXPECT_EQ(CV_VERSION_MAJOR, cv::getVersionMajor());
EXPECT_EQ(CV_VERSION_MINOR, cv::getVersionMinor());
EXPECT_EQ(CV_VERSION_REVISION, cv::getVersionRevision());
EXPECT_EQ(String(CV_VERSION), cv::getVersionString());
}
}} // namespace

Loading…
Cancel
Save