20#ifndef INCLUDED_VCL_BITMAP_HXX 
   21#define INCLUDED_VCL_BITMAP_HXX 
   35#define GAMMA( _def_cVal, _def_InvGamma )   (static_cast<sal_uInt8>(MinMax(FRound(pow( _def_cVal/255.0,_def_InvGamma)*255.0),0,255))) 
   39template <
typename Arg, 
typename Ret> 
class Link;
 
   67#define BMP_COL_TRANS               Color( 252, 3, 251 ) 
   90namespace basegfx { 
class SystemDependentDataHolder; }
 
   96    #elif defined( MACOSX ) || defined( IOS ) 
  112    explicit                Bitmap( std::shared_ptr<SalBitmap> xSalBitmap );
 
  120    inline bool             IsEmpty() 
const;
 
  123    inline const MapMode&   GetPrefMapMode() 
const;
 
  124    inline void             SetPrefMapMode( 
const MapMode& rMapMode );
 
  126    inline const Size&      GetPrefSize() 
const;
 
  127    inline void             SetPrefSize( 
const Size& rSize );
 
  129    Size                    GetSizePixel() 
const;
 
  132    inline sal_Int64        GetSizeBytes() 
const;
 
  133    bool                    HasGreyPalette8Bit() 
const;
 
  134    bool                    HasGreyPaletteAny() 
const;
 
  149                            GetGreyPalette( 
int nEntries );
 
  203                                sal_Int32 nDX, sal_Int32 nDY,
 
  204                                const Color* pInitColor = 
nullptr );
 
  231                                const Bitmap* pBmpSrc = 
nullptr );
 
  233    bool                    CopyPixel_AlphaOptimized(
 
  245    bool                    CombineOr( 
const Bitmap& rMask );
 
  265                                const Color& rBackgroundColor );
 
  325    static bool HasFastScale();
 
  329    void AdaptBitCount(
Bitmap& rNew) 
const;
 
  357    Bitmap                  CreateMask( 
const Color& rTransColor ) 
const;
 
  469                                const Color* pSearchColors,
 
  470                                const Color* rReplaceColors,
 
  525                                short nLuminancePercent,
 
  526                                short nContrastPercent = 0,
 
  527                                short nChannelRPercent = 0,
 
  528                                short nChannelGPercent = 0,
 
  529                                short nChannelBPercent = 0,
 
  531                                bool bInvert = 
false,
 
  532                                bool msoBrightness = 
false );
 
  553    void                    RemoveBlendedStartColor(
 
  567    SAL_DLLPRIVATE 
void     ReassignWithSize(
const Bitmap& rBitmap);
 
  569    SAL_DLLPRIVATE 
void     ImplMakeUnique();
 
  571    SAL_DLLPRIVATE 
void     ImplSetSalBitmap( 
const std::shared_ptr<SalBitmap>& xImpBmp );
 
  573    SAL_DLLPRIVATE 
bool     ImplMakeGreyscales();
 
  587    SAL_DLLPRIVATE 
bool ImplConvertDown8BPP(
Color const* pExtColor = 
nullptr);
 
  624    sal_Int64 aSizeInBytes = (aSizePixel.Width() * aSizePixel.Height() * aBitCount) / 8;
 
sal_uInt64 BitmapChecksum
 
sal_Int64 GetSizeBytes() const
 
const std::shared_ptr< SalBitmap > & ImplGetSalBitmap() const
 
void SetPrefMapMode(const MapMode &rMapMode)
 
const MapMode & GetPrefMapMode() const
 
Size GetSizePixel() const
 
bool operator!=(const Bitmap &rBitmap) const
 
vcl::ScopedBitmapAccess< BitmapReadAccess, Bitmap, &Bitmap::AcquireReadAccess > ScopedReadAccess
 
void SetPrefSize(const Size &rSize)
 
const Size & GetPrefSize() const
 
vcl::ScopedBitmapAccess< BitmapInfoAccess, Bitmap, &Bitmap::AcquireInfoAccess > ScopedInfoAccess
 
vcl::PixelFormat getPixelFormat() const
 
std::shared_ptr< SalBitmap > mxSalBmp
 
Some things multiple-inherit from VclAbstractDialog and OutputDevice, so we need to use virtual inher...
 
PixelFormat
Pixel format of the bitmap in bits per pixel.
 
constexpr sal_uInt16 pixelFormatBitCount(PixelFormat ePixelFormat)
 
bool operator==(const ItalicMatrix &a, const ItalicMatrix &b)