summaryrefslogtreecommitdiff
path: root/sd/source/ui/slidesorter/cache/SlsBitmapCompressor.hxx
diff options
context:
space:
mode:
Diffstat (limited to 'sd/source/ui/slidesorter/cache/SlsBitmapCompressor.hxx')
-rw-r--r--sd/source/ui/slidesorter/cache/SlsBitmapCompressor.hxx159
1 files changed, 0 insertions, 159 deletions
diff --git a/sd/source/ui/slidesorter/cache/SlsBitmapCompressor.hxx b/sd/source/ui/slidesorter/cache/SlsBitmapCompressor.hxx
deleted file mode 100644
index 213ac6151..000000000
--- a/sd/source/ui/slidesorter/cache/SlsBitmapCompressor.hxx
+++ /dev/null
@@ -1,159 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org 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 Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-#ifndef SD_SLIDESORTER_BITMAP_COMPRESSOR_HXX
-#define SD_SLIDESORTER_BITMAP_COMPRESSOR_HXX
-
-#include <sal/types.h>
-#include <tools/gen.hxx>
-#include <boost/shared_ptr.hpp>
-
-
-class Bitmap;
-
-namespace sd { namespace slidesorter { namespace cache {
-
-class BitmapReplacement;
-
-
-/** This interface class provides the minimal method set for classes that
- implement the compression and decompression of preview bitmaps.
-*/
-class BitmapCompressor
-{
-public:
- /** Compress the given bitmap into a replacement format that is specific
- to the compressor class.
- */
- virtual ::boost::shared_ptr<BitmapReplacement> Compress (const Bitmap& rBitmap) const = 0;
-
- /** Decompress the given replacement data into a preview bitmap.
- Depending on the compression technique the returned bitmap may
- differ from the original bitmap given to the Compress() method. It
- may even of the wrong size or empty or the NULL pointer. It is the
- task of the caller to create a new preview bitmap if the returned
- one is not as desired.
- */
- virtual Bitmap Decompress (const BitmapReplacement& rBitmapData)const=0;
-
- /** Return whether the compression and decompression is lossless. This
- value is used by the caller of Decompress() to decide whether to use
- the returned bitmap as is or if a new preview has to be created.
- */
- virtual bool IsLossless (void) const = 0;
-};
-
-
-
-/** Interface for preview bitmap replacements. Each bitmap
- compressor/decompressor has to provide an implementation that is
- suitable to store the compressed bitmaps.
-*/
-class BitmapReplacement
-{
-public:
- virtual sal_Int32 GetMemorySize (void) const { return 0; }
-};
-
-
-
-
-/** This is one trivial bitmap compressor. It stores bitmaps unmodified
- instead of compressing them.
- This compressor is lossless.
-*/
-class NoBitmapCompression
- : public BitmapCompressor
-{
- class DummyReplacement;
-public:
- virtual ::boost::shared_ptr<BitmapReplacement> Compress (const Bitmap& rpBitmap) const;
- virtual Bitmap Decompress (const BitmapReplacement& rBitmapData) const;
- virtual bool IsLossless (void) const;
-};
-
-
-
-
-/** This is another trivial bitmap compressor. Instead of compressing a
- bitmap, it throws the bitmap away. Its Decompress() method returns a
- NULL pointer. The caller has to create a new preview bitmap instead.
- This compressor clearly is not lossless.
-*/
-class CompressionByDeletion
- : public BitmapCompressor
-{
-public:
- virtual ::boost::shared_ptr<BitmapReplacement> Compress (const Bitmap& rBitmap) const;
- virtual Bitmap Decompress (const BitmapReplacement& rBitmapData) const;
- virtual bool IsLossless (void) const;
-};
-
-
-
-
-/** Compress a preview bitmap by reducing its resolution. While the aspect
- ratio is maintained the horizontal resolution is scaled down to 100
- pixels.
- This compressor is not lossless.
-*/
-class ResolutionReduction
- : public BitmapCompressor
-{
- class ResolutionReducedReplacement;
- static const sal_Int32 mnWidth = 100;
-public:
- virtual ::boost::shared_ptr<BitmapReplacement> Compress (const Bitmap& rpBitmap) const;
- /** Scale the replacement bitmap up to the original size.
- */
- virtual Bitmap Decompress (const BitmapReplacement& rBitmapData) const;
- virtual bool IsLossless (void) const;
-};
-
-
-
-
-/** Compress preview bitmaps using the PNG format.
- This compressor is lossless.
-*/
-class PngCompression
- : public BitmapCompressor
-{
- class PngReplacement;
-public:
- virtual ::boost::shared_ptr<BitmapReplacement> Compress (const Bitmap& rBitmap) const;
- virtual Bitmap Decompress (const BitmapReplacement& rBitmapData) const;
- virtual bool IsLossless (void) const;
-};
-
-
-} } } // end of namespace ::sd::slidesorter::cache
-
-#endif
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */