MCPcopy Create free account
hub / github.com/colmap/colmap / WriteRig

Method WriteRig

src/colmap/scene/database_sqlite.cc:1104–1133  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1102 }
1103
1104 rig_t WriteRig(const Rig& rig, const bool use_rig_id) override {
1105 THROW_CHECK(rig.NumSensors() > 0) << "Rig must have at least one sensor";
1106
1107 Sqlite3StmtContext context(sql_stmt_write_rig_);
1108
1109 if (use_rig_id) {
1110 THROW_CHECK(!ExistsRig(rig.RigId())) << "rig_id must be unique";
1111 SQLITE3_CALL(sqlite3_bind_int64(sql_stmt_write_rig_, 1, rig.RigId()));
1112 } else {
1113 SQLITE3_CALL(sqlite3_bind_null(sql_stmt_write_rig_, 1));
1114 }
1115
1116 SQLITE3_CALL(
1117 sqlite3_bind_int64(sql_stmt_write_rig_,
1118 2,
1119 static_cast<sqlite3_int64>(rig.RefSensorId().id)));
1120 SQLITE3_CALL(
1121 sqlite3_bind_int64(sql_stmt_write_rig_,
1122 3,
1123 static_cast<sqlite3_int64>(rig.RefSensorId().type)));
1124
1125 SQLITE3_CALL(sqlite3_step(sql_stmt_write_rig_));
1126
1127 const rig_t rig_id = static_cast<rig_t>(
1128 sqlite3_last_insert_rowid(THROW_CHECK_NOTNULL(database_)));
1129
1130 WriteRigSensors(rig_id, rig, sql_stmt_write_rig_sensor_);
1131
1132 return rig_id;
1133 }
1134
1135 camera_t WriteCamera(const Camera& camera,
1136 const bool use_camera_id) override {

Callers 9

TEST_PFunction · 0.45
SynthesizeDatasetFunction · 0.45
CreateTestDatabaseFunction · 0.45
ApplyRigConfigFunction · 0.45
MergeMethod · 0.45
TEST_PFunction · 0.45
TESTFunction · 0.45
ImageReaderMethod · 0.45
NextMethod · 0.45

Calls 3

WriteRigSensorsFunction · 0.85
NumSensorsMethod · 0.80
RigIdMethod · 0.45

Tested by 4

TEST_PFunction · 0.36
CreateTestDatabaseFunction · 0.36
TEST_PFunction · 0.36
TESTFunction · 0.36