From 69fe21d6e2262d6fb2b14278b7a20364468cbdcf Mon Sep 17 00:00:00 2001 From: Vadim Dashevskiy Date: Fri, 12 Oct 2012 09:56:01 +0000 Subject: Dbx_tree: folders restructurization git-svn-id: http://svn.miranda-ng.org/main/trunk@1883 1316c22d-e87f-b044-9b9b-93d7a3e3ba9c --- plugins/Dbx_tree/FileBTree.h | 102 ------------------------------------------- 1 file changed, 102 deletions(-) delete mode 100644 plugins/Dbx_tree/FileBTree.h (limited to 'plugins/Dbx_tree/FileBTree.h') diff --git a/plugins/Dbx_tree/FileBTree.h b/plugins/Dbx_tree/FileBTree.h deleted file mode 100644 index 3a9e58a43e..0000000000 --- a/plugins/Dbx_tree/FileBTree.h +++ /dev/null @@ -1,102 +0,0 @@ -/* - -dbx_tree: tree database driver for Miranda IM - -Copyright 2007-2010 Michael "Protogenes" Kunz, - -This program is free software; you can redistribute it and/or -modify it under the terms of the GNU General Public License -as published by the Free Software Foundation; either version 2 -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 General Public License -along with this program; if not, write to the Free Software -Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. - -*/ - -#pragma once -#include "BTree.h" -#include "BlockManager.h" -#include "Logger.h" - -template -class CFileBTree : public CBTree -{ -private: - -protected: - CBlockManager & m_BlockManager; - uint16_t cSignature; - - virtual void PrepareInsertOperation(); - virtual TNode * CreateNewNode(TNodeRef & NodeRef); - virtual void DeleteNode(TNodeRef Node); - virtual TNode * Read(TNodeRef Node); - virtual void Write(TNodeRef Node); -public: - CFileBTree(CBlockManager & BlockManager, typename CBTree::TNodeRef RootNode, uint16_t Signature); - virtual ~CFileBTree(); -}; - - - - -template -CFileBTree::CFileBTree(CBlockManager & BlockManager, typename CBTree::TNodeRef RootNode, uint16_t Signature) -: CBTree::CBTree(RootNode), - m_BlockManager(BlockManager) -{ - cSignature = Signature; - CBTree::m_DestroyTree = false; -} - -template -CFileBTree::~CFileBTree() -{ - CBTree::m_DestroyTree = false; -} - - -template -void CFileBTree::PrepareInsertOperation() -{ - -} - -template -typename CBTree::TNode * CFileBTree::CreateNewNode(typename CBTree::TNodeRef & NodeRef) -{ - return reinterpret_cast( m_BlockManager.CreateBlock(NodeRef, cSignature << 16, sizeof(typename CBTree::TNode) - 4) - 1); -} - -template -void CFileBTree::DeleteNode(typename CBTree::TNodeRef Node) -{ - m_BlockManager.DeleteBlock(Node); -} - -template -typename CBTree::TNode * CFileBTree::Read(typename CBTree::TNodeRef Node) -{ - uint32_t sig = 0; - uint32_t size = 0; - TNode * res = reinterpret_cast( m_BlockManager.ReadBlock(Node, size, sig) - 1); /// HACK using knowledge about the blockmanager here - - CHECK(res->Signature == cSignature, - logCRITICAL, _T("Signature check failed")); - - return res; -} - -template -void CFileBTree::Write(typename CBTree::TNodeRef Node) -{ - m_BlockManager.UpdateBlock(Node, 0); -} - -- cgit v1.2.3