ACF $AcfVersion:0$
Public Types | Public Member Functions | Protected Member Functions | List of all members
iimg::CMultiPageBitmapBase Class Referenceabstract

Definition of a multi-page bitmap document. More...

#include <CMultiPageBitmapBase.h>

Inheritance diagram for iimg::CMultiPageBitmapBase:
idoc::TMultiPageDocumentWrap< idoc::IMultiPageDocument > iimg::IMultiPageBitmapController idoc::IMultiPageDocument idoc::CStandardDocumentMetaInfo iprm::IOptionsList iimg::IMultiBitmapProvider istd::IChangeable idoc::IDocumentMetaInfo iser::ISerializable istd::IChangeable istd::IChangeable istd::IPolymorphic istd::IChangeable istd::IChangeable istd::IPolymorphic istd::IPolymorphic istd::IPolymorphic istd::IPolymorphic iimg::CMultiPageBitmapComp iimg::TMultiPageBitmap< BitmapImpl >

Public Types

typedef idoc::CMultiPageDocumentBase BaseClass
 
- Public Types inherited from idoc::TMultiPageDocumentWrap< idoc::IMultiPageDocument >
typedef idoc::IMultiPageDocument BaseClass
 
typedef CStandardDocumentMetaInfo BaseClass2
 
- Public Types inherited from istd::IChangeable
enum  ChangeFlags {
  CF_ACF_INTERNAL = 0 , CF_ALL_DATA , CF_ANY , CF_DESTROYING ,
  CF_DELEGATED , CF_NO_UNDO
}
 Data model change notification flags. More...
 
enum  SupportedOperations {
  SO_NONE = 0 , SO_OBSERVE = 1 << 0 , SO_COPY = 1 << 1 , SO_CLONE = 1 << 2 ,
  SO_COMPARE = 1 << 3 , SO_RESET = 1 << 4
}
 Flags for supported operations. More...
 
enum  CompatibilityMode { CM_STRICT , CM_WITHOUT_REFS , CM_WITH_REFS , CM_CONVERT }
 Control how relationship betweeen objects are interpreted. More...
 
typedef QMultiMap< QByteArray, QVariant > ChangeInfoMap
 
- Public Types inherited from idoc::IDocumentMetaInfo
enum  ChangeFlags { CF_METAINFO = 0xd83067d }
 Data model change notification flags. More...
 
enum  MetaInfoType {
  MIT_TITLE , MIT_AUTHOR , MIT_CREATOR , MIT_DESCRIPTION ,
  MIT_CREATION_TIME , MIT_MODIFICATION_TIME , MIT_CREATOR_VERSION , MIT_DOCUMENT_VERSION ,
  MIT_CONTENT_CHECKSUM , MIT_USER = 1024
}
 Type of the meta information. More...
 
typedef QSet< int > MetaInfoTypes
 
- Public Types inherited from iprm::IOptionsList
enum  ChangeFlags { CF_OPTIONS_CHANGED = 0x8263d86 , CF_OPTION_RENAMED }
 Flags for changes related to this interface. More...
 
enum  OptionsFlags { SCF_NONE = 0 , SCF_SUPPORT_UNIQUE_ID = 256 , SFC_DISABLE_ALLOWED = 32 }
 Flags for controlling constraints behavior. More...
 

Public Member Functions

virtual istd::IChangeableInsertPage (const idoc::IDocumentMetaInfo *pageMetaInfoPtr=NULL, const iprm::IParamsSet *pageParameterPtr=NULL, int position=-1) override
 Insert a new document page at the given position.
 
virtual const iprm::IOptionsListGetBitmapListInfo () const override
 Get optional information about bitmaps in form of section constraints.
 
virtual int GetBitmapsCount () const override
 Get number of produced bitmaps.
 
virtual const iimg::IBitmapGetBitmap (int bitmapIndex) const override
 Get access to produced bitmap object.
 
virtual iimg::IBitmapInsertBitmap (iimg::IBitmap::PixelFormat pixelFormat, const istd::CIndex2d &size, const idoc::IDocumentMetaInfo *metaInfoPtr=NULL) override
 Inserts a new bitmap.
 
virtual iimg::IBitmapInsertBitmap (iimg::IBitmap::PixelFormat pixelFormat, const istd::CIndex2d &size, void *dataPtr, bool releaseFlag, int linesDifference=0, const idoc::IDocumentMetaInfo *metaInfoPtr=NULL) override
 Inserts a new bitmap.
 
virtual void RemoveBitmap (int index) override
 Removes the bitmap at the given index.
 
virtual bool CopyFrom (const istd::IChangeable &object, CompatibilityMode mode=CM_WITHOUT_REFS) override
 Copy this object from another one.
 
virtual bool ResetData (CompatibilityMode mode=CM_WITHOUT_REFS) override
 Reset data to its default state.
 
- Public Member Functions inherited from idoc::TMultiPageDocumentWrap< idoc::IMultiPageDocument >
virtual int GetPagesCount () const override
 
virtual const istd::IChangeableGetDocumentPage (int pageIndex) const override
 
virtual const idoc::IDocumentMetaInfoGetPageMetaInfo (int pageIndex) const override
 
virtual void ResetPages () override
 
virtual bool RemovePage (int pageIndex) override
 
virtual const IDocumentMetaInfoGetDocumentMetaInfo () const override
 
virtual int GetOptionsFlags () const override
 Get constraints flags.
 
virtual int GetOptionsCount () const override
 Get number of managed options.
 
virtual QString GetOptionName (int index) const override
 Get name of specified option.
 
virtual QString GetOptionDescription (int index) const override
 Get human-readable description for an option.
 
virtual QByteArray GetOptionId (int index) const override
 Get option ID.
 
virtual bool IsOptionEnabled (int index) const override
 Return true if the option is enabled and can be selected.
 
virtual bool Serialize (iser::IArchive &archive) override
 Load or store state of this object as a archive stream.
 
- Public Member Functions inherited from istd::IChangeable
virtual int GetSupportedOperations () const
 Get set of flags for supported operations.
 
virtual bool IsEqual (const IChangeable &object) const
 Compare this object with another object.
 
virtual void BeginChanges (const ChangeSet &changeSet)
 Starts the change transaction.
 
virtual void EndChanges (const ChangeSet &changeSet)
 Ends the change transaction.
 
virtual void BeginChangeGroup (const ChangeSet &changeSet)
 Starts group of changes.
 
virtual void EndChangeGroup (const ChangeSet &changeSet)
 Ends group of changes.
 
- Public Member Functions inherited from istd::IPolymorphic
virtual ~IPolymorphic ()
 
- Public Member Functions inherited from idoc::CStandardDocumentMetaInfo
virtual MetaInfoTypes GetMetaInfoTypes (bool allowReadOnly=true) const override
 Get list of contained meta info types.
 
virtual QVariant GetMetaInfo (int metaInfoType) const override
 Get document's meta info.
 
virtual bool SetMetaInfo (int metaInfoType, const QVariant &metaInfo) override
 Set new document's meta information for a given meta type.
 
virtual void RemoveMetaInfo (int metaInfoType) override
 Remove document's meta information for a given meta type.
 
virtual QByteArray GetMetaInfoId (int metaInfoType) const override
 Get an unique ID of the meta information.
 
virtual QString GetMetaInfoName (int metaInfoType) const override
 Get a human readable name for a given meta information type.
 
virtual QString GetMetaInfoDescription (int metaInfoType) const override
 Get a human readable description for a given meta information type.
 
virtual bool IsMetaInfoWritable (int metaInfoType) const override
 Check if meta information can be changed.
 
virtual bool IsEqual (const IChangeable &object) const override
 
virtual bool CopyFrom (const IChangeable &object, CompatibilityMode mode=CM_WITHOUT_REFS) override
 
virtual istd::TUniqueInterfacePtr< istd::IChangeableCloneMe (CompatibilityMode mode=CM_WITHOUT_REFS) const override
 Make a copy of this object.
 
- Public Member Functions inherited from iser::ISerializable
virtual quint32 GetMinimalVersion (int versionId) const
 Get minimal needed version to correct storing of this data.
 

Protected Member Functions

virtual IBitmapUniquePtr CreateBitmap () const =0
 
- Protected Member Functions inherited from idoc::TMultiPageDocumentWrap< idoc::IMultiPageDocument >
virtual bool SerializePage (iser::IArchive &archive, Page &pageItem)
 Serialize a single page item into or from the archive.
 
- Protected Member Functions inherited from istd::IChangeable
virtual void OnBeginChanges ()
 Callback function for begin change event.
 
virtual void OnEndChanges (const ChangeSet &changeSet)
 Callback function for end change event.
 

Additional Inherited Members

- Static Public Member Functions inherited from istd::IChangeable
static const ChangeSetGetNoChanges ()
 Get empty set of changes.
 
static const ChangeSetGetAnyChange ()
 Get anonymous change set.
 
static const ChangeSetGetAllChanges ()
 Get anonymous change set.
 
static const ChangeSetGetDelegatedChanges ()
 Get delegated change set.
 
- Static Public Member Functions inherited from idoc::IDocumentMetaInfo
template<class T >
static std::optional< T > GetMetaInfoT (const idoc::IDocumentMetaInfo &metaInfo, int key)
 Type-safe retrieval of metadata values.
 
- Protected Types inherited from idoc::TMultiPageDocumentWrap< idoc::IMultiPageDocument >
typedef QList< Page > Pages
 
- Protected Attributes inherited from idoc::TMultiPageDocumentWrap< idoc::IMultiPageDocument >
Pages m_documentPages
 

Detailed Description

Definition of a multi-page bitmap document.

Definition at line 22 of file CMultiPageBitmapBase.h.

Member Typedef Documentation

◆ BaseClass

Definition at line 27 of file CMultiPageBitmapBase.h.

Member Function Documentation

◆ CopyFrom()

virtual bool iimg::CMultiPageBitmapBase::CopyFrom ( const istd::IChangeable object,
CompatibilityMode  mode = CM_WITHOUT_REFS 
)
overridevirtual

Copy this object from another one.

Default implementation in istd::IChangeable does nothing.

Reimplemented from idoc::TMultiPageDocumentWrap< idoc::IMultiPageDocument >.

◆ CreateBitmap()

virtual IBitmapUniquePtr iimg::CMultiPageBitmapBase::CreateBitmap ( ) const
protectedpure virtual

◆ GetBitmap()

virtual const iimg::IBitmap * iimg::CMultiPageBitmapBase::GetBitmap ( int  bitmapIndex) const
overridevirtual

Get access to produced bitmap object.

Returns
pointer to bitmap instance if this bitmap is accessible, or NULL.

Implements iimg::IMultiBitmapProvider.

◆ GetBitmapListInfo()

virtual const iprm::IOptionsList * iimg::CMultiPageBitmapBase::GetBitmapListInfo ( ) const
overridevirtual

Get optional information about bitmaps in form of section constraints.

It allows to get name and description of each bitmap channel.

Implements iimg::IMultiBitmapProvider.

◆ GetBitmapsCount()

virtual int iimg::CMultiPageBitmapBase::GetBitmapsCount ( ) const
overridevirtual

Get number of produced bitmaps.

Implements iimg::IMultiBitmapProvider.

◆ InsertBitmap() [1/2]

virtual iimg::IBitmap * iimg::CMultiPageBitmapBase::InsertBitmap ( iimg::IBitmap::PixelFormat  pixelFormat,
const istd::CIndex2d size,
const idoc::IDocumentMetaInfo metaInfoPtr = NULL 
)
overridevirtual

Inserts a new bitmap.

Parameters
pixelFormatThe pixel format.
sizeSize of the page bitmap.
Returns
null if it fails, else a pointer to the inserted bitmap.

Implements iimg::IMultiPageBitmapController.

◆ InsertBitmap() [2/2]

virtual iimg::IBitmap * iimg::CMultiPageBitmapBase::InsertBitmap ( iimg::IBitmap::PixelFormat  pixelFormat,
const istd::CIndex2d size,
void *  dataPtr,
bool  releaseFlag,
int  linesDifference = 0,
const idoc::IDocumentMetaInfo metaInfoPtr = NULL 
)
overridevirtual

Inserts a new bitmap.

Parameters
pixelFormatThe pixel format.
sizeThe size of the page bitmap.
[in,out]dataPtrIf non-null, the bitmap data pointer.
releaseFlagMemory controlling flag.
linesDifference(Optional) The distance between adjacent lines in bytes.
Returns
null if it fails, else a pointer to the inserted bitmap.

Implements iimg::IMultiPageBitmapController.

◆ InsertPage()

virtual istd::IChangeable * iimg::CMultiPageBitmapBase::InsertPage ( const idoc::IDocumentMetaInfo pageMetaInfoPtr = NULL,
const iprm::IParamsSet pageParameterPtr = NULL,
int  position = -1 
)
overridevirtual

Insert a new document page at the given position.

Parameters
pageMetaInfoPtrOptional meta-information for the new page.
pageParameterPtrOptional parameters for page creation.
positionInsertion position in the page container. If negative, the new page will be inserted after the last page.
Returns
Pointer to the object representing the contents of the new page.
Example
// Add page at the end
istd::IChangeable* newPage = mpDoc->InsertPage(nullptr, nullptr, -1);
// Insert page at the beginning
istd::IChangeable* firstPage = mpDoc->InsertPage(nullptr, nullptr, 0);
Common interface for data model objects, which can be changed.
Definition IChangeable.h:28

Implements idoc::IMultiPageDocument.

◆ RemoveBitmap()

virtual void iimg::CMultiPageBitmapBase::RemoveBitmap ( int  index)
overridevirtual

Removes the bitmap at the given index.

Parameters
indexIndex of the bitmap page.

Implements iimg::IMultiPageBitmapController.

◆ ResetData()

virtual bool iimg::CMultiPageBitmapBase::ResetData ( CompatibilityMode  mode = CM_WITHOUT_REFS)
overridevirtual

Reset data to its default state.

Default implementation in istd::IChangeable does nothing.

Returns
true if the operation was successful, and false otherwise.

Reimplemented from idoc::TMultiPageDocumentWrap< idoc::IMultiPageDocument >.


The documentation for this class was generated from the following file: