File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -3374,8 +3374,11 @@ namespace BinaryNinja {
33743374 class Database : public CoreRefCountObject<BNDatabase, BNNewDatabaseReference, BNFreeDatabase>
33753375 {
33763376 public:
3377+ Database();
33773378 Database(BNDatabase* database);
33783379
3380+ bool OpenExisting(const std::string& path);
3381+
33793382 bool SnapshotHasData(int64_t id);
33803383 Ref<Snapshot> GetSnapshot(int64_t id);
33813384 std::vector<Ref<Snapshot>> GetSnapshots();
Original file line number Diff line number Diff line change @@ -4436,6 +4436,8 @@ extern "C"
44364436 // Database object
44374437 BINARYNINJACOREAPI BNDatabase* BNNewDatabaseReference(BNDatabase* database);
44384438 BINARYNINJACOREAPI void BNFreeDatabase(BNDatabase* database);
4439+ BINARYNINJACOREAPI BNDatabase* BNCreateDatabaseInstance(void);
4440+ BINARYNINJACOREAPI bool BNDatabaseOpenExisting(BNDatabase* database, const char* path);
44394441 BINARYNINJACOREAPI void BNSetDatabaseCurrentSnapshot(BNDatabase* database, int64_t id);
44404442 BINARYNINJACOREAPI BNSnapshot* BNGetDatabaseCurrentSnapshot(BNDatabase* database);
44414443 BINARYNINJACOREAPI BNSnapshot** BNGetDatabaseSnapshots(BNDatabase* database, size_t* count);
Original file line number Diff line number Diff line change @@ -374,12 +374,24 @@ bool Snapshot::HasAncestor(Ref<Snapshot> other)
374374}
375375
376376
377+ Database::Database ()
378+ {
379+ m_object = BNCreateDatabaseInstance ();
380+ }
381+
382+
377383Database::Database (BNDatabase* database)
378384{
379385 m_object = database;
380386}
381387
382388
389+ bool Database::OpenExisting (const std::string& path)
390+ {
391+ return BNDatabaseOpenExisting (m_object, path.c_str ());
392+ }
393+
394+
383395Ref<Snapshot> Database::GetSnapshot (int64_t id)
384396{
385397 BNSnapshot* snap = BNGetDatabaseSnapshot (m_object, id);
You can’t perform that action at this time.
0 commit comments