| 1417 | } |
| 1418 | |
| 1419 | void UpdateCamera(const Camera& camera) override { |
| 1420 | Sqlite3StmtContext context(sql_stmt_update_camera_); |
| 1421 | |
| 1422 | SQLITE3_CALL( |
| 1423 | sqlite3_bind_int64(sql_stmt_update_camera_, |
| 1424 | 1, |
| 1425 | static_cast<sqlite3_int64>(camera.model_id))); |
| 1426 | SQLITE3_CALL(sqlite3_bind_int64( |
| 1427 | sql_stmt_update_camera_, 2, static_cast<sqlite3_int64>(camera.width))); |
| 1428 | SQLITE3_CALL(sqlite3_bind_int64( |
| 1429 | sql_stmt_update_camera_, 3, static_cast<sqlite3_int64>(camera.height))); |
| 1430 | |
| 1431 | const size_t num_params_bytes = sizeof(double) * camera.params.size(); |
| 1432 | SQLITE3_CALL(sqlite3_bind_blob(sql_stmt_update_camera_, |
| 1433 | 4, |
| 1434 | camera.params.data(), |
| 1435 | static_cast<int>(num_params_bytes), |
| 1436 | SQLITE_STATIC)); |
| 1437 | |
| 1438 | SQLITE3_CALL(sqlite3_bind_int64( |
| 1439 | sql_stmt_update_camera_, 5, camera.has_prior_focal_length)); |
| 1440 | |
| 1441 | SQLITE3_CALL( |
| 1442 | sqlite3_bind_int64(sql_stmt_update_camera_, 6, camera.camera_id)); |
| 1443 | |
| 1444 | SQLITE3_CALL(sqlite3_step(sql_stmt_update_camera_)); |
| 1445 | } |
| 1446 | |
| 1447 | void UpdateFrame(const Frame& frame) override { |
| 1448 | // Update frame. |