| 22 | namespace VersionConstants { |
| 23 | |
| 24 | VersionNumber header_to_version_number(const std::string& header) { |
| 25 | static std::unordered_map<std::string, VersionNumber> m; |
| 26 | if(m.empty()) { |
| 27 | m["INFPNT000001"] = VersionNumber(0, 0, 1); |
| 28 | m["INFPNT000002"] = VersionNumber(0, 1, 0); |
| 29 | m["INFPNT000003"] = VersionNumber(0, 2, 0); |
| 30 | m["INFPNT000004"] = VersionNumber(0, 3, 0); |
| 31 | m["INFPNT000005"] = VersionNumber(0, 4, 0); |
| 32 | m["INFPNT000006"] = VersionNumber(0, 6, 0); |
| 33 | } |
| 34 | auto it = m.find(header); |
| 35 | if(it == m.end()) |
| 36 | throw std::runtime_error("[VersionConstants::header_to_version_number] Header " + header + " is invalid"); |
| 37 | return it->second; |
| 38 | } |
| 39 | |
| 40 | } |
no test coverage detected