diff options
author | Miklos Vajna <vmiklos@collabora.co.uk> | 2013-09-25 10:29:58 +0200 |
---|---|---|
committer | Miklos Vajna <vmiklos@suse.cz> | 2013-09-25 10:48:31 +0200 |
commit | 9b706a5e1502786c8b4f8a3f8f465a4657fe6c74 (patch) | |
tree | 0b3031255f4664a49e2e7f66fd4444db544f02ea /writerfilter/source/doctok | |
parent | a5dece8ca5db69983863031a706b63efcbd9926e (diff) |
writerfilter: remove dead WW8BinTable
Change-Id: I3ecbcabd0b379ff520346a163e0eea7bc0d2f8f9
Diffstat (limited to 'writerfilter/source/doctok')
-rw-r--r-- | writerfilter/source/doctok/WW8BinTable.hxx | 82 | ||||
-rw-r--r-- | writerfilter/source/doctok/WW8BinTableImpl.cxx | 88 | ||||
-rw-r--r-- | writerfilter/source/doctok/WW8BinTableImpl.hxx | 96 |
3 files changed, 0 insertions, 266 deletions
diff --git a/writerfilter/source/doctok/WW8BinTable.hxx b/writerfilter/source/doctok/WW8BinTable.hxx deleted file mode 100644 index 144d98aabc99..000000000000 --- a/writerfilter/source/doctok/WW8BinTable.hxx +++ /dev/null @@ -1,82 +0,0 @@ -/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ -/* - * This file is part of the LibreOffice project. - * - * This Source Code Form is subject to the terms of the Mozilla Public - * License, v. 2.0. If a copy of the MPL was not distributed with this - * file, You can obtain one at http://mozilla.org/MPL/2.0/. - * - * This file incorporates work covered by the following license notice: - * - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed - * with this work for additional information regarding copyright - * ownership. The ASF licenses this file to you under the Apache - * License, Version 2.0 (the "License"); you may not use this file - * except in compliance with the License. You may obtain a copy of - * the License at http://www.apache.org/licenses/LICENSE-2.0 . - */ - -#ifndef INCLUDED_WW8_BIN_TABLE_HXX -#define INCLUDED_WW8_BIN_TABLE_HXX - -#include <boost/shared_ptr.hpp> -#include <string> -#include <WW8FKP.hxx> - -namespace writerfilter { -namespace doctok -{ - -/** - A bintable. - - Word uses bintables to associate FC ranges with FKPs. A bintable - has a list of FCs. At each FC a range begins. The length of the - range is given by the distance of the according CPs. - */ -class WW8BinTable -{ -public: - virtual ~WW8BinTable() {}; - /** - Shared pointer to a bintable. - */ - typedef boost::shared_ptr<WW8BinTable> Pointer_t; - - /** - Return count of entries. - */ - virtual sal_uInt32 getEntryCount() const = 0; - - /** - Return FC from bintable. - - @param nIndex index in bintable to return FC from - */ - virtual Fc getFc(sal_uInt32 nIndex) const = 0; - - /** - Return page number. - - @param nIndex index in bintable to return page number from - */ - virtual sal_uInt32 getPageNumber(sal_uInt32 nIndex) const = 0; - - /** - Return page number associated with FC. - - @param rFc FC to return page number for - */ - virtual sal_uInt32 getPageNumber(const Fc & rFc) const = 0; - - /** - Return string representation of bintable. - */ - virtual string toString() const = 0; -}; -}} - -#endif // INCLUDED_WW8_BIN_TABLE_HXX - -/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/writerfilter/source/doctok/WW8BinTableImpl.cxx b/writerfilter/source/doctok/WW8BinTableImpl.cxx deleted file mode 100644 index 1aa3c9bb9a25..000000000000 --- a/writerfilter/source/doctok/WW8BinTableImpl.cxx +++ /dev/null @@ -1,88 +0,0 @@ -/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ -/* - * This file is part of the LibreOffice project. - * - * This Source Code Form is subject to the terms of the Mozilla Public - * License, v. 2.0. If a copy of the MPL was not distributed with this - * file, You can obtain one at http://mozilla.org/MPL/2.0/. - * - * This file incorporates work covered by the following license notice: - * - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed - * with this work for additional information regarding copyright - * ownership. The ASF licenses this file to you under the Apache - * License, Version 2.0 (the "License"); you may not use this file - * except in compliance with the License. You may obtain a copy of - * the License at http://www.apache.org/licenses/LICENSE-2.0 . - */ - -#include "WW8BinTableImpl.hxx" - -namespace writerfilter { -namespace doctok -{ -using namespace ::std; - -void PageNumber::dump(OutputWithDepth<string> & /*output*/) const -{ -} - -sal_uInt32 WW8BinTableImpl::getPageNumber(const Fc & rFc) const -{ - sal_uInt32 nResult = 0; - - if (mPageMap.find(rFc) == mPageMap.end()) - { - sal_uInt32 left = 0; - sal_uInt32 right = getEntryCount(); - - while (right - left > 1) - { - sal_uInt32 middle = (right + left) / 2; - - Fc aFc = getFc(middle); - - if (rFc < aFc) - right = middle; - else - left = middle; - - } - - nResult = getPageNumber(left); - mPageMap[rFc] = nResult; - - } - else - nResult = mPageMap[rFc]; - - return nResult; -} - -string WW8BinTableImpl::toString() const -{ - string aResult; - char sBuffer[255]; - - aResult += "("; - - for (sal_uInt32 n = 0; n < getEntryCount(); n++) - { - if (n > 0) - aResult += ", "; - - snprintf(sBuffer, 255, "%" SAL_PRIxUINT32, getFc(n).get()); - aResult += sBuffer; - aResult += "->"; - snprintf(sBuffer, 255, "%" SAL_PRIxUINT32, getPageNumber(n)); - aResult += sBuffer; - } - - aResult += ")"; - - return aResult; -} -}} - -/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/writerfilter/source/doctok/WW8BinTableImpl.hxx b/writerfilter/source/doctok/WW8BinTableImpl.hxx deleted file mode 100644 index 072b68d610fc..000000000000 --- a/writerfilter/source/doctok/WW8BinTableImpl.hxx +++ /dev/null @@ -1,96 +0,0 @@ -/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ -/* - * This file is part of the LibreOffice project. - * - * This Source Code Form is subject to the terms of the Mozilla Public - * License, v. 2.0. If a copy of the MPL was not distributed with this - * file, You can obtain one at http://mozilla.org/MPL/2.0/. - * - * This file incorporates work covered by the following license notice: - * - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed - * with this work for additional information regarding copyright - * ownership. The ASF licenses this file to you under the Apache - * License, Version 2.0 (the "License"); you may not use this file - * except in compliance with the License. You may obtain a copy of - * the License at http://www.apache.org/licenses/LICENSE-2.0 . - */ - -#ifndef INCLUDED_WW8_BIN_TABLE_IMPL_HXX -#define INCLUDED_WW8_BIN_TABLE_IMPL_HXX - -#include <istream> -#include <WW8BinTable.hxx> -#include <PLCF.hxx> - -#include <boost/unordered_map.hpp> - -namespace writerfilter { -namespace doctok -{ -using namespace ::std; - -/** - A number of a FKP. - */ -class PageNumber -{ - /// the page number - sal_uInt32 mnPageNumber; - -public: - /// Pointer to a page number - typedef boost::shared_ptr<PageNumber> Pointer_t; - - /// get size of a page number - static size_t getSize() { return 4; } - - PageNumber(WW8StructBase::Sequence & rSeq, sal_uInt32 nOffset, - sal_uInt32 /*nCount*/) - : mnPageNumber(getU32(rSeq, nOffset)) - { - } - - virtual ~PageNumber() - { - } - - /// Return the page number - sal_uInt32 get() const { return mnPageNumber; } - - virtual void dump(OutputWithDepth<string> & out) const; -}; - -/** - Implementation class for a binary table - */ -class WW8BinTableImpl : public WW8BinTable -{ - /// PLCF containing the numbers of the FKPs of the binary table - PLCF<PageNumber> mData; - mutable boost::unordered_map<Fc, sal_uInt32, FcHash> mPageMap; - -public: - WW8BinTableImpl(WW8Stream & rStream, sal_uInt32 nOffset, - sal_uInt32 nCount) - : mData(rStream, nOffset, nCount) - - { - } - - virtual sal_uInt32 getEntryCount() const - { return mData.getEntryCount(); } - virtual Fc getFc(sal_uInt32 nIndex) const - { return mData.getFc(nIndex); } - virtual sal_uInt32 getPageNumber(sal_uInt32 nIndex) const - { return mData.getEntry(nIndex)->get(); } - virtual sal_uInt32 getPageNumber(const Fc & rFc) const; - virtual string toString() const; -}; - -}} - -#endif // INCLUDED_WW8_BIN_TABLE_IMPL_HXX - -/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ |