MCPcopy Create free account
hub / github.com/Tencent/TAD_Sim / insertObjectGeomRels

Method insertObjectGeomRels

common/map_sdk/mapdb/src/sqlite_operation.cpp:1569–1595  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1567}
1568
1569bool sqliteOperation::insertObjectGeomRels(hadmap::tx_object_geom_rel_vec& geom_rels) {
1570 const char* sql = SQL_INSERT_OBJECT_GEOM_REL;
1571
1572 sqliteStmtPtr stmt(dbPtr, sql);
1573 if (!stmt.status()) {
1574 std::cerr << "failed to prepare insert object-geometry relations." << std::endl;
1575 return false;
1576 }
1577
1578 sqlite3_exec(dbPtr, "begin;", 0, 0, 0);
1579 bool complete = true;
1580 for (hadmap::tx_object_geom_rel_vec::iterator iter = geom_rels.begin(); iter != geom_rels.end(); ++iter) {
1581 sqlite3_bind_int64(stmt, 1, iter->object_pkid);
1582 sqlite3_bind_int64(stmt, 2, iter->geom_pkid);
1583 int r = sqlite3_step(stmt);
1584 if (SQLITE_DONE != r) {
1585 std::cerr << "Insert Object Geom Rel Error, Code " << r << std::endl;
1586 complete = false;
1587 }
1588 sqlite3_clear_bindings(stmt);
1589 sqlite3_reset(stmt);
1590 iter->pkid = sqlitePackage::getLastInsertedRowid(dbPtr);
1591 }
1592 sqlite3_exec(dbPtr, "commit;", 0, 0, 0);
1593
1594 return complete;
1595}
1596
1597bool sqliteOperation::insertObjectRels(hadmap::tx_object_rel_vec& rels) {
1598 const char* sql = SQL_INSERT_OBJECT_REL;

Callers 2

insertObjectsMethod · 0.80
saveMapMethod · 0.80

Calls 3

statusMethod · 0.45
beginMethod · 0.45
endMethod · 0.45

Tested by

no test coverage detected