diff options
-rw-r--r-- | include/m_db_int.h | 11 | ||||
-rw-r--r-- | src/modules/database/dbintf.cpp | 6 |
2 files changed, 17 insertions, 0 deletions
diff --git a/include/m_db_int.h b/include/m_db_int.h index 2fd70ceec5..7a4e3759e4 100644 --- a/include/m_db_int.h +++ b/include/m_db_int.h @@ -134,4 +134,15 @@ __inline static DATABASELINK* FindDatabasePlugin(const TCHAR* ptszFileName) { return (DATABASELINK*)CallService(MS_DB_FIND_PLUGIN, 0, (LPARAM)ptszFileName);
}
+// MS_DB_GET_CURRENT : returns the database pointer for the current profile
+// wParam : 0 (unused)
+// lParam : 0 (unused)
+// returns MIDatabase* of the current profile or NULL on error
+
+#define MS_DB_GET_CURRENT "DB/GetCurrentDb"
+
+__inline static MIDatabase* GetCurrentDatabase(void)
+{ return (MIDatabase*)CallService(MS_DB_GET_CURRENT, 0, 0);
+}
+
#endif // M_DB_INT_H__
diff --git a/src/modules/database/dbintf.cpp b/src/modules/database/dbintf.cpp index 2f7cf4ea72..4c5e19607c 100644 --- a/src/modules/database/dbintf.cpp +++ b/src/modules/database/dbintf.cpp @@ -186,6 +186,11 @@ static INT_PTR srvFindPlugin(WPARAM wParam,LPARAM lParam) return NULL;
}
+static INT_PTR srvGetCurrentDb(WPARAM wParam,LPARAM lParam)
+{
+ return (INT_PTR)currDb;
+}
+
///////////////////////////////////////////////////////////////////////////////
int LoadDbintfModule()
@@ -226,5 +231,6 @@ int LoadDbintfModule() CreateServiceFunction(MS_DB_REGISTER_PLUGIN, srvRegisterPlugin);
CreateServiceFunction(MS_DB_FIND_PLUGIN, srvFindPlugin);
+ CreateServiceFunction(MS_DB_GET_CURRENT, srvGetCurrentDb);
return 0;
}
|