Energy plus version number DLM@20100511: can we query this?
| 3616 | /// Energy plus version number |
| 3617 | // DLM@20100511: can we query this? |
| 3618 | std::string SqlFile_Impl::energyPlusVersion() const { |
| 3619 | std::string result; |
| 3620 | if (m_db) { |
| 3621 | sqlite3_stmt* sqlStmtPtr; |
| 3622 | sqlite3_prepare_v2(m_db, "SELECT EnergyPlusVersion FROM Simulations", -1, &sqlStmtPtr, nullptr); |
| 3623 | int code = sqlite3_step(sqlStmtPtr); |
| 3624 | if (code == SQLITE_ROW) { |
| 3625 | // in 8.1 this is 'EnergyPlus-Windows-32 8.1.0.008, YMD=2014.11.08 22:49' |
| 3626 | // in 8.2 this is 'EnergyPlus, Version 8.2.0-8397c2e30b, YMD=2015.01.09 08:37' |
| 3627 | // radiance script is writing 'EnergyPlus, VERSION 8.2, (OpenStudio) YMD=2015.1.9 08:35:36' |
| 3628 | boost::regex version_regex("\\d{1,}\\.\\d[\\.\\d]*"); |
| 3629 | std::string version_line = columnText(sqlite3_column_text(sqlStmtPtr, 0)); |
| 3630 | boost::smatch version_match; |
| 3631 | |
| 3632 | if (boost::regex_search(version_line, version_match, version_regex)) { |
| 3633 | result = version_match[0].str(); |
| 3634 | } |
| 3635 | } |
| 3636 | sqlite3_finalize(sqlStmtPtr); |
| 3637 | } |
| 3638 | return result; |
| 3639 | } |
| 3640 | |
| 3641 | /// Energy Plus eplusout.sql file name |
| 3642 | std::string SqlFile_Impl::energyPlusSqliteFile() const { |
no test coverage detected