CXWindowsClipboardAnyBitmapConverter.h

00001 /*
00002  * synergy -- mouse and keyboard sharing utility
00003  * Copyright (C) 2004 Chris Schoeneman
00004  * 
00005  * This package is free software; you can redistribute it and/or
00006  * modify it under the terms of the GNU General Public License
00007  * found in the file COPYING that should have accompanied this file.
00008  * 
00009  * This package is distributed in the hope that it will be useful,
00010  * but WITHOUT ANY WARRANTY; without even the implied warranty of
00011  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00012  * GNU General Public License for more details.
00013  */
00014 
00015 #ifndef CXWINDOWSCLIPBOARDANYBITMAPCONVERTER_H
00016 #define CXWINDOWSCLIPBOARDANYBITMAPCONVERTER_H
00017 
00018 #include "CXWindowsClipboard.h"
00019 
00021 class CXWindowsClipboardAnyBitmapConverter :
00022                 public IXWindowsClipboardConverter {
00023 public:
00024     CXWindowsClipboardAnyBitmapConverter();
00025     virtual ~CXWindowsClipboardAnyBitmapConverter();
00026 
00027     // IXWindowsClipboardConverter overrides
00028     virtual IClipboard::EFormat
00029                         getFormat() const;
00030     virtual Atom        getAtom() const = 0;
00031     virtual int         getDataSize() const;
00032     virtual CString     fromIClipboard(const CString&) const;
00033     virtual CString     toIClipboard(const CString&) const;
00034 
00035 protected:
00037 
00040     virtual CString     doBGRFromIClipboard(const UInt8* bgrData,
00041                             UInt32 w, UInt32 h) const = 0;
00042 
00044 
00047     virtual CString     doBGRAFromIClipboard(const UInt8* bgrData,
00048                             UInt32 w, UInt32 h) const = 0;
00049 
00051 
00055     virtual CString     doToIClipboard(const CString&,
00056                             UInt32& w, UInt32& h, UInt32& depth) const = 0;
00057 };
00058 
00059 #endif

Generated on Fri Nov 6 00:18:45 2009 for synergy-plus by  doxygen 1.4.7