bump product version to 4.1.6.2
[LibreOffice.git] / filter / source / graphicfilter / icgm / bitmap.hxx
blob65af1e96b50709cb63534786b71034717f3d05c2
1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2 /*
3 * This file is part of the LibreOffice project.
5 * This Source Code Form is subject to the terms of the Mozilla Public
6 * License, v. 2.0. If a copy of the MPL was not distributed with this
7 * file, You can obtain one at http://mozilla.org/MPL/2.0/.
9 * This file incorporates work covered by the following license notice:
11 * Licensed to the Apache Software Foundation (ASF) under one or more
12 * contributor license agreements. See the NOTICE file distributed
13 * with this work for additional information regarding copyright
14 * ownership. The ASF licenses this file to you under the Apache
15 * License, Version 2.0 (the "License"); you may not use this file
16 * except in compliance with the License. You may obtain a copy of
17 * the License at http://www.apache.org/licenses/LICENSE-2.0 .
20 #ifndef CGM_BITMAP_HXX_
21 #define CGM_BITMAP_HXX_
23 #include "cgm.hxx"
24 #include <vcl/bmpacc.hxx>
26 class CGM;
28 class CGMBitmapDescriptor
30 public:
31 sal_uInt8* mpBuf;
32 Bitmap* mpBitmap;
33 BitmapWriteAccess* mpAcc;
34 sal_Bool mbStatus;
35 sal_Bool mbVMirror;
36 sal_Bool mbHMirror;
37 sal_uInt32 mnDstBitsPerPixel;
38 sal_uInt32 mnScanSize; // bytes per line
39 FloatPoint mnP, mnQ, mnR;
41 FloatPoint mnOrigin;
42 double mndx, mndy;
43 double mnOrientation;
45 sal_uInt32 mnX, mnY;
46 long mnLocalColorPrecision;
47 sal_uInt32 mnCompressionMode;
49 CGMBitmapDescriptor()
50 : mpBuf(NULL)
51 , mpBitmap(NULL)
52 , mpAcc(NULL)
53 , mbStatus(sal_False)
54 , mbVMirror(sal_False)
55 , mbHMirror(sal_False)
56 , mndx(0.0)
57 , mndy(0.0)
58 , mnOrientation(0.0)
59 , mnLocalColorPrecision(0)
60 { };
61 ~CGMBitmapDescriptor()
63 if ( mpAcc )
64 mpBitmap->ReleaseAccess( mpAcc );
65 if ( mpBitmap )
66 delete mpBitmap;
70 class CGMBitmap
72 CGM* mpCGM;
73 CGMBitmapDescriptor* pCGMBitmapDescriptor;
74 sal_Bool ImplGetDimensions( CGMBitmapDescriptor& );
75 void ImplSetCurrentPalette( CGMBitmapDescriptor& );
76 void ImplGetBitmap( CGMBitmapDescriptor& );
77 void ImplInsert( CGMBitmapDescriptor& rSource, CGMBitmapDescriptor& rDest );
78 public:
79 CGMBitmap( CGM& rCGM );
80 ~CGMBitmap();
81 CGMBitmapDescriptor* GetBitmap();
82 CGMBitmap* GetNext();
84 #endif
86 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */