ACF $AcfVersion:0$
TMultiPageBitmap.h
Go to the documentation of this file.
1// SPDX-License-Identifier: LGPL-2.1-or-later OR GPL-2.0-or-later OR GPL-3.0-or-later OR LicenseRef-ACF-Commercial
2#pragma once
3
4
5// ACF includes
8#include <iimg/CBitmap.h>
9
10
11namespace iimg
12{
13
14
23template <class BitmapImpl>
25{
26public:
28 typedef BitmapImpl BitmapType;
29
30 // reimplemented (istd::IChangeable)
32
33protected:
34 // reimplemented (CMultiPageBitmapBase)
35 virtual IBitmapUniquePtr CreateBitmap() const override;
36};
37
38
39// public methods
40
41// reimplemented (istd::IChangeable)
42
43template <class BitmapImpl>
45{
47 if (clonedPtr->CopyFrom(*this, mode)){
48 return clonedPtr;
49 }
50
52}
53
54
55// protected methods
56
57// reimplemented (CMultiPageBitmapBase)
58
59template <class BitmapImpl>
61{
62 return new BitmapImpl;
63}
64
65
68
69
70} // namespace iimg
71
72
73
74
Definition of a multi-page bitmap document.
Generic implementation of a multi-page bitmap.
virtual IBitmapUniquePtr CreateBitmap() const override
CMultiPageBitmapBase BaseClass
virtual istd::TUniqueInterfacePtr< istd::IChangeable > CloneMe(CompatibilityMode mode=CM_WITHOUT_REFS) const override
Make a copy of this object.
CompatibilityMode
Control how relationship betweeen objects are interpreted.
@ CM_WITHOUT_REFS
External references are simple ignored.
Unique ownership smart pointer for interface types.
Contains the system indenendent definitions of image and related themes.
Definition CBitmap.h:17
TMultiPageBitmap< CGeneralBitmap > CGeneralMultiPageBitmap
TMultiPageBitmap< CBitmap > CMultiPageBitmap
istd::TUniqueInterfacePtr< istd::IChangeable > IChangeableUniquePtr