From c2df6e7bbf6efdb36f751379c154623191864a1f Mon Sep 17 00:00:00 2001 From: George Hazan Date: Sat, 21 Jul 2012 18:25:03 +0000 Subject: Dbx_mmap_SA ready git-svn-id: http://svn.miranda-ng.org/main/trunk@1094 1316c22d-e87f-b044-9b9b-93d7a3e3ba9c --- plugins/Db3x_mmap/database.h | 129 ------------------------------------------- 1 file changed, 129 deletions(-) (limited to 'plugins/Db3x_mmap/database.h') diff --git a/plugins/Db3x_mmap/database.h b/plugins/Db3x_mmap/database.h index 1a10285c01..83c2fcaea9 100644 --- a/plugins/Db3x_mmap/database.h +++ b/plugins/Db3x_mmap/database.h @@ -47,135 +47,6 @@ DBHeader \--> ... */ -//#define DB_RESIZE_GRANULARITY 16384 -#define DB_THIS_VERSION 0x00000700u -#define DB_SETTINGS_RESIZE_GRANULARITY 128 - -struct DBSignature { - char name[15]; - BYTE eof; -}; - -static struct DBSignature dbSignature = {"Miranda ICQ DB",0x1A}; - -#include -struct DBHeader { - BYTE signature[16]; // 'Miranda ICQ DB',0,26 - DWORD version; //as 4 bytes, ie 1.2.3.10 = 0x0102030a - //this version is 0x00000700 - DWORD ofsFileEnd; //offset of the end of the database - place to write - //new structures - DWORD slackSpace; //a counter of the number of bytes that have been - //wasted so far due to deleting structures and/or - //re-making them at the end. We should compact when - //this gets above a threshold - DWORD contactCount; //number of contacts in the chain,excluding the user - DWORD ofsFirstContact; //offset to first DBContact in the chain - DWORD ofsUser; //offset to DBContact representing the user - DWORD ofsFirstModuleName; //offset to first struct DBModuleName in the chain -}; - -#define DBCONTACT_SIGNATURE 0x43DECADEu - -struct DBContact -{ - DWORD signature; - DWORD ofsNext; //offset to the next contact in the chain. zero if - //this is the 'user' contact or the last contact - //in the chain - DWORD ofsFirstSettings; //offset to the first DBContactSettings in the - //chain for this contact. - DWORD eventCount; //number of events in the chain for this contact - DWORD ofsFirstEvent,ofsLastEvent; //offsets to the first and last DBEvent in - //the chain for this contact - DWORD ofsFirstUnreadEvent; //offset to the first (chronological) unread event - //in the chain, 0 if all are read - DWORD timestampFirstUnread; //timestamp of the event at ofsFirstUnreadEvent -}; - -#define DBMODULENAME_SIGNATURE 0x4DDECADEu -struct DBModuleName -{ - DWORD signature; - DWORD ofsNext; //offset to the next module name in the chain - BYTE cbName; //number of characters in this module name - char name[1]; //name, no nul terminator -}; - -#define DBCONTACTSETTINGS_SIGNATURE 0x53DECADEu -struct DBContactSettings -{ - DWORD signature; - DWORD ofsNext; //offset to the next contactsettings in the chain - DWORD ofsModuleName; //offset to the DBModuleName of the owner of these - //settings - DWORD cbBlob; //size of the blob in bytes. May be larger than the - //actual size for reducing the number of moves - //required using granularity in resizing - BYTE blob[1]; //the blob. a back-to-back sequence of DBSetting - //structs, the last has cbName = 0 -}; - -/* not a valid structure, content is figured out on the fly -struct DBSetting { - BYTE cbName; //number of bytes in the name of this setting - //this = 0 marks the end - char szName[...]; //setting name, excluding nul - BYTE dataType; //type of data. see m_database.h, db/contact/getsetting - union { //a load of types of data, length is defined by dataType - BYTE bVal; WORD wVal; DWORD dVal; - struct { - WORD cbString; - char szVal[...]; //excludes nul terminator - }; - struct { - WORD cbBlob; - BYTE blobVal[...]; - }; - }; -}; -*/ - -#define DBEVENT_SIGNATURE 0x45DECADEu -struct DBEvent -{ - DWORD signature; - DWORD ofsPrev,ofsNext; //offset to the previous and next events in the - //chain. Chain is sorted chronologically - DWORD ofsModuleName; //offset to a DBModuleName struct of the name of - //the owner of this event - DWORD timestamp; //seconds since 00:00:00 01/01/1970 - DWORD flags; //see m_database.h, db/event/add - WORD eventType; //module-defined event type - DWORD cbBlob; //number of bytes in the blob - BYTE blob[1]; //the blob. module-defined formatting -}; - -#include - -struct DBCachedGlobalValue -{ - char* name; - DBVARIANT value; -}; - -struct DBCachedContactValue -{ - char* name; - DBVARIANT value; - DBCachedContactValue* next; -}; - -struct DBCachedContactValueList -{ - HANDLE hContact; - HANDLE hNext; - DBCachedContactValue* first; - DBCachedContactValue* last; -}; - -#define MAXCACHEDREADSIZE 65536 - //#define DBLOGGING #ifdef _DEBUG -- cgit v1.2.3