MCPcopy Create free account
hub / github.com/LunarG/VulkanTools / GetVersionData

Function GetVersionData

vkconfig_core/version.cpp:40–65  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

38const char *VKCONFIG_SHORT_NAME = "vkconfig";
39
40static Version GetVersionData(const char *version) {
41 uint32_t version_major = 0;
42 uint32_t version_minor = 0;
43 uint32_t version_patch = 0;
44 uint32_t version_revision = 0;
45
46 std::size_t count = CountChar(version, '.');
47
48 switch (count) {
49 default:
50 assert(0);
51 return Version::NONE;
52 case 0:
53 std::sscanf(version, "%d", &version_major);
54 return Version(version_major, version_minor);
55 case 1:
56 std::sscanf(version, "%d.%d", &version_major, &version_minor);
57 return Version(version_major, version_minor);
58 case 2:
59 std::sscanf(version, "%d.%d.%d", &version_major, &version_minor, &version_patch);
60 return Version(version_major, version_minor, version_patch);
61 case 3:
62 std::sscanf(version, "%d.%d.%d.%d", &version_major, &version_minor, &version_patch, &version_revision);
63 return Version(version_major, version_minor, version_patch, version_revision);
64 }
65}
66
67Version::Version(uint32_t version_complete)
68 : _major(VK_VERSION_MAJOR(version_complete)),

Callers 1

VersionMethod · 0.85

Calls 2

CountCharFunction · 0.85
VersionClass · 0.85

Tested by

no test coverage detected