1*0d63794cSAndrew Rist /************************************************************** 2cdf0e10cSrcweir * 3*0d63794cSAndrew Rist * Licensed to the Apache Software Foundation (ASF) under one 4*0d63794cSAndrew Rist * or more contributor license agreements. See the NOTICE file 5*0d63794cSAndrew Rist * distributed with this work for additional information 6*0d63794cSAndrew Rist * regarding copyright ownership. The ASF licenses this file 7*0d63794cSAndrew Rist * to you under the Apache License, Version 2.0 (the 8*0d63794cSAndrew Rist * "License"); you may not use this file except in compliance 9*0d63794cSAndrew Rist * with the License. You may obtain a copy of the License at 10*0d63794cSAndrew Rist * 11*0d63794cSAndrew Rist * http://www.apache.org/licenses/LICENSE-2.0 12*0d63794cSAndrew Rist * 13*0d63794cSAndrew Rist * Unless required by applicable law or agreed to in writing, 14*0d63794cSAndrew Rist * software distributed under the License is distributed on an 15*0d63794cSAndrew Rist * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 16*0d63794cSAndrew Rist * KIND, either express or implied. See the License for the 17*0d63794cSAndrew Rist * specific language governing permissions and limitations 18*0d63794cSAndrew Rist * under the License. 19*0d63794cSAndrew Rist * 20*0d63794cSAndrew Rist *************************************************************/ 21*0d63794cSAndrew Rist 22*0d63794cSAndrew Rist 23cdf0e10cSrcweir 24cdf0e10cSrcweir #ifndef SVP_SVBMP_HXX 25cdf0e10cSrcweir #define SVP_SVBMP_HXX 26cdf0e10cSrcweir 27cdf0e10cSrcweir #include <salbmp.hxx> 28cdf0e10cSrcweir #include "svpelement.hxx" 29cdf0e10cSrcweir 30cdf0e10cSrcweir class SvpSalBitmap : public SalBitmap, public SvpElement 31cdf0e10cSrcweir { 32cdf0e10cSrcweir basebmp::BitmapDeviceSharedPtr m_aBitmap; 33cdf0e10cSrcweir public: SvpSalBitmap()34cdf0e10cSrcweir SvpSalBitmap() {} 35cdf0e10cSrcweir virtual ~SvpSalBitmap(); 36cdf0e10cSrcweir getBitmap() const37cdf0e10cSrcweir const basebmp::BitmapDeviceSharedPtr& getBitmap() const { return m_aBitmap; } setBitmap(const basebmp::BitmapDeviceSharedPtr & rSrc)38cdf0e10cSrcweir void setBitmap( const basebmp::BitmapDeviceSharedPtr& rSrc ) { m_aBitmap = rSrc; } 39cdf0e10cSrcweir 40cdf0e10cSrcweir // SvpElement getDevice() const41cdf0e10cSrcweir virtual const basebmp::BitmapDeviceSharedPtr& getDevice() const { return m_aBitmap; } 42cdf0e10cSrcweir 43cdf0e10cSrcweir // SalBitmap 44cdf0e10cSrcweir virtual bool Create( const Size& rSize, 45cdf0e10cSrcweir sal_uInt16 nBitCount, 46cdf0e10cSrcweir const BitmapPalette& rPal ); 47cdf0e10cSrcweir virtual bool Create( const SalBitmap& rSalBmp ); 48cdf0e10cSrcweir virtual bool Create( const SalBitmap& rSalBmp, 49cdf0e10cSrcweir SalGraphics* pGraphics ); 50cdf0e10cSrcweir virtual bool Create( const SalBitmap& rSalBmp, 51cdf0e10cSrcweir sal_uInt16 nNewBitCount ); 52cdf0e10cSrcweir virtual void Destroy(); 53cdf0e10cSrcweir virtual Size GetSize() const; 54cdf0e10cSrcweir virtual sal_uInt16 GetBitCount() const; 55cdf0e10cSrcweir 56cdf0e10cSrcweir virtual BitmapBuffer* AcquireBuffer( bool bReadOnly ); 57cdf0e10cSrcweir virtual void ReleaseBuffer( BitmapBuffer* pBuffer, bool bReadOnly ); 58cdf0e10cSrcweir virtual bool GetSystemData( BitmapSystemData& rData ); 59cdf0e10cSrcweir 60cdf0e10cSrcweir }; 61cdf0e10cSrcweir 62cdf0e10cSrcweir #endif 63