Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | Related Pages

compressionbase.h

00001 /*
00002   Copyright (c) 2005-2008 by Jakob Schroeter <js@camaya.net>
00003   This file is part of the gloox library. http://camaya.net/gloox
00004 
00005   This software is distributed under a license. The full license
00006   agreement can be found in the file LICENSE in this distribution.
00007   This software may not be copied, modified, sold or distributed
00008   other than expressed in the named license agreement.
00009 
00010   This software is distributed without any warranty.
00011 */
00012 
00013 
00014 
00015 #ifndef COMPRESSIONBASE_H__
00016 #define COMPRESSIONBASE_H__
00017 
00018 #include "gloox.h"
00019 #include "compressiondatahandler.h"
00020 
00021 #include <string>
00022 
00023 namespace gloox
00024 {
00025 
00034   class GLOOX_API CompressionBase
00035   {
00036     public:
00042       CompressionBase( CompressionDataHandler* cdh ) : m_handler( cdh ), m_valid( false ) {}
00043 
00047       virtual ~CompressionBase() {}
00048 
00054       virtual bool init() = 0;
00055 
00060       virtual void compress( const std::string& data ) = 0;
00061 
00066       virtual void decompress( const std::string& data ) = 0;
00067 
00068     protected:
00069       CompressionDataHandler* m_handler;
00070       bool m_valid;
00071 
00072   };
00073 
00074 }
00075 
00076 #endif // COMPRESSIONBASE_H__

Generated on Sun Dec 28 22:10:16 2008 for gloox by  doxygen 1.4.1