| 1445 | } |
| 1446 | |
| 1447 | void UpdateFrame(const Frame& frame) override { |
| 1448 | // Update frame. |
| 1449 | { |
| 1450 | Sqlite3StmtContext context(sql_stmt_update_frame_); |
| 1451 | SQLITE3_CALL( |
| 1452 | sqlite3_bind_int64(sql_stmt_update_frame_, 1, frame.RigId())); |
| 1453 | SQLITE3_CALL( |
| 1454 | sqlite3_bind_int64(sql_stmt_update_frame_, 2, frame.FrameId())); |
| 1455 | SQLITE3_CALL(sqlite3_step(sql_stmt_update_frame_)); |
| 1456 | } |
| 1457 | |
| 1458 | // Clear the frame data. |
| 1459 | { |
| 1460 | Sqlite3StmtContext context(sql_stmt_delete_frame_data_); |
| 1461 | SQLITE3_CALL( |
| 1462 | sqlite3_bind_int64(sql_stmt_delete_frame_data_, 1, frame.FrameId())); |
| 1463 | SQLITE3_CALL(sqlite3_step(sql_stmt_delete_frame_data_)); |
| 1464 | } |
| 1465 | |
| 1466 | // Write the updated frame data. |
| 1467 | WriteFrameData(frame.FrameId(), frame, sql_stmt_write_frame_data_); |
| 1468 | } |
| 1469 | |
| 1470 | void UpdateImage(const Image& image) override { |
| 1471 | if (image.HasFrameId()) { |