// BlitzUtility - Expanding the normal Blitz functionality. // Copyright (C) 2015 Project Kube (Michael Fabian Dirks) // // This program is free software: you can redistribute it and/or modify // it under the terms of the GNU Lesser General Public License as // published by the Free Software Foundation, either version 3 of the // License, or (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU Lesser General Public License // along with this program. If not, see . #pragma once #include "dllmain.h" #include "sqlite3.h" #include // Basic Info DLL_METHOD const char* DLL_CALL SQLite_Version(); DLL_METHOD int32_t DLL_CALL SQLite_ThreadSafe(); // Initialization and Finalization DLL_METHOD int32_t DLL_CALL SQLite_Initialize(); DLL_METHOD int32_t DLL_CALL SQLite_Shutdown(); // Database Handling DLL_METHOD int32_t DLL_CALL SQLite_Open(const char* file, sqlite3** db); DLL_METHOD int32_t DLL_CALL SQLite_Open_V2(const char* file, sqlite3** db, int32_t flags, const char* zVfs); DLL_METHOD int32_t DLL_CALL SQLite_Close(sqlite3* db); DLL_METHOD int32_t DLL_CALL SQLite_Close_V2(sqlite3* db); // Online Backup API DLL_METHOD sqlite3_backup* SQLite_Backup_Init(sqlite3* pDest, const char* zDestName, sqlite3* pSource, const char* zSourceName); DLL_METHOD int32_t DLL_CALL SQLite_Backup_Step(sqlite3_backup* p, int32_t nPage); DLL_METHOD int32_t DLL_CALL SQLite_Backup_Finish(sqlite3_backup* p); DLL_METHOD int32_t DLL_CALL SQLite_Backup_Remaining(sqlite3_backup* p); DLL_METHOD int32_t DLL_CALL SQLite_Backup_PageCount(sqlite3_backup* p); // Error Handling DLL_METHOD int32_t DLL_CALL SQLite_ErrCode(sqlite3* db); DLL_METHOD int32_t DLL_CALL SQLite_Extended_ErrCode(sqlite3* db); DLL_METHOD const char* DLL_CALL SQLite_ErrMsg(sqlite3* db); DLL_METHOD const char* DLL_CALL SQLite_ErrStr(int32_t errCode); // Memory Management DLL_METHOD int32_t DLL_CALL SQLite_Release_Memory(int32_t bytes); DLL_METHOD int32_t DLL_CALL SQLite_DB_Release_Memory(sqlite3* db); // Busy Timeout DLL_METHOD int32_t DLL_CALL SQLite_Busy_Timeout(sqlite3* db, int32_t timeout); DLL_METHOD int32_t DLL_CALL SQLite_Busy_Handler(sqlite3* db, int32_t handler); // Database Settings DLL_METHOD int32_t DLL_CALL SQLite_Get_AutoCommit(sqlite3* db); // Database Information DLL_METHOD const char* DLL_CALL SQLite_DB_FileName(sqlite3* db, const char* zDbName); DLL_METHOD sqlite3* DLL_CALL SQLite_DB_Handle(sqlite3_stmt* stmt); DLL_METHOD sqlite3_mutex* DLL_CALL SQLite_DB_Mutex(sqlite3* db); //Unsorted (Alphabetical