| 1240 | } |
| 1241 | |
| 1242 | bool sqliteOperation::insertTasks(hadmap::tx_task_vec& tasks) { |
| 1243 | const char* sql = "INSERT INTO " TASK_TABLE |
| 1244 | " (name, srs, x, y,z,longitude_ref,latitude_ref, heading, pitch, roll)" |
| 1245 | " VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?)"; |
| 1246 | sqliteStmtPtr stmt(dbPtr, sql); |
| 1247 | bool complete = true; |
| 1248 | for (size_t i = 0; i < tasks.size(); i++) { |
| 1249 | const hadmap::tx_task_t& task = tasks[i]; |
| 1250 | sqlite3_bind_text(stmt, 1, task.name, -1, SQLITE_TRANSIENT); |
| 1251 | sqlite3_bind_int(stmt, 2, task.srs); |
| 1252 | sqlite3_bind_double(stmt, 3, task.x); |
| 1253 | sqlite3_bind_double(stmt, 4, task.y); |
| 1254 | sqlite3_bind_double(stmt, 5, task.z); |
| 1255 | sqlite3_bind_double(stmt, 6, task.longitude_ref); |
| 1256 | sqlite3_bind_double(stmt, 7, task.latitude_ref); |
| 1257 | sqlite3_bind_double(stmt, 8, task.heading); |
| 1258 | sqlite3_bind_double(stmt, 9, task.pitch); |
| 1259 | sqlite3_bind_double(stmt, 10, task.roll); |
| 1260 | int r = sqlite3_step(stmt); |
| 1261 | if (SQLITE_DONE != r) { |
| 1262 | std::cerr << "Insert Task Error, Code " << r << std::endl; |
| 1263 | complete = false; |
| 1264 | } |
| 1265 | sqlite3_clear_bindings(stmt); |
| 1266 | sqlite3_reset(stmt); |
| 1267 | |
| 1268 | tasks[i].pkid = sqlitePackage::getLastInsertedRowid(dbPtr); |
| 1269 | } |
| 1270 | return complete; |
| 1271 | } |
| 1272 | |
| 1273 | bool sqliteOperation::insertRoads(hadmap::tx_road_vec& roads) { |
| 1274 | char sql[1024]; |
no test coverage detected