|
ACF $AcfVersion:0$
|
Bitmap implementation based on Qt QImage. More...
#include <CBitmap.h>
Public Member Functions | |
| CBitmap () | |
| CBitmap (const CBitmap &bitmap) | |
| CBitmap (const QImage &image) | |
| QImage & | GetQImageRef () |
| virtual const QImage & | GetQImage () const override |
| Gets a QImage object. | |
| virtual bool | CopyImageFrom (const QImage &image) override |
| Copies the image data from a QImage object. | |
| virtual bool | IsFormatSupported (PixelFormat pixelFormat) const override |
Get true if the pixel format is supported by the bitmap implementation. | |
| virtual PixelFormat | GetPixelFormat () const override |
| Get the bitmap's pixel format. | |
| virtual bool | CreateBitmap (PixelFormat pixelFormat, const istd::CIndex2d &size, int pixelBitsCount=0, int componentsCount=0) override |
| Create bitmap with specified size and format. | |
| virtual bool | CreateBitmap (PixelFormat pixelFormat, const istd::CIndex2d &size, void *dataPtr, bool releaseFlag, int linesDifference=0) override |
| Create bitmap with specified size and format using external image data buffer. | |
| virtual int | GetLinesDifference () const override |
| Get address difference between next and previous line. | |
| virtual int | GetPixelsDifference () const override |
| Get address difference between next and previous pixel. | |
| virtual const void * | GetLinePtr (int positionY) const override |
| Get pointer to buffer for single line. | |
| virtual void * | GetLinePtr (int positionY) override |
| Get pointer to buffer for single line. | |
| virtual void | ResetImage () override |
| Reset this image. | |
| virtual void | ClearImage () override |
| Cleat this image. | |
| virtual istd::CIndex2d | GetImageSize () const override |
| Get size of this raster image. | |
| virtual QByteArray | GetFactoryId () const override |
| virtual int | GetSupportedOperations () const override |
| Get set of flags for supported operations. | |
| virtual bool | CopyFrom (const istd::IChangeable &object, CompatibilityMode mode=CM_WITHOUT_REFS) override |
| Copy this object from another one. | |
| virtual istd::TUniqueInterfacePtr< istd::IChangeable > | CloneMe (CompatibilityMode mode=CM_WITHOUT_REFS) const override |
| Make a copy of this object. | |
| virtual bool | ResetData (CompatibilityMode mode=CM_WITHOUT_REFS) override |
| Reset data to its default state. | |
Public Member Functions inherited from iimg::CBitmapBase | |
| virtual i2d::CVector2d | GetCenter () const override |
| Returns center of this 2D-object. | |
| virtual void | MoveCenterTo (const i2d::CVector2d &position) override |
Move object to position position. | |
| virtual i2d::CRectangle | GetBoundingBox () const override |
| Get bounding box of this shape. | |
| virtual bool | CreateImageFromRegion (const iimg::IBitmap &sourceBitmap, const i2d::CRect ®ion) override |
| Create image as a copy of rectangular region of some other image. | |
| virtual int | GetLineBytesCount () const override |
| Number of bytes per single line. | |
| virtual int | GetComponentBitsCount (int componentIndex=0) const override |
| Get number of bits per single pixel component. | |
| virtual int | GetPixelBitsCount () const override |
| Get total number of bits per single pixel. | |
| virtual bool | IsEmpty () const override |
| Return true if this image is empty. | |
| virtual int | GetComponentsCount () const override |
| Get number of color components. | |
| virtual icmm::CVarColor | GetColorAt (const istd::CIndex2d &position) const override |
| Get color at specified pixel. | |
| virtual bool | SetColorAt (const istd::CIndex2d &position, const icmm::CVarColor &color) override |
| Set color at specified pixel. | |
| virtual const icmm::IColorModel * | GetColorModel () const override |
| Get the color model related to the image. | |
| virtual bool | Serialize (iser::IArchive &archive) override |
| Load or store state of this object as a archive stream. | |
Public Member Functions inherited from i2d::CObject2dBase | |
| CObject2dBase () | |
| CObject2dBase (const CObject2dBase &object2d) | |
| CObject2dBase (CObject2dBase &&object2d) | |
| CObject2dBase & | operator= (const CObject2dBase &object2d) |
| CObject2dBase & | operator= (CObject2dBase &&object2d) |
| virtual const ICalibration2d * | GetCalibration () const override |
| Get access to transformation object, which transforms a local logical coordinate system to global one. | |
| virtual void | SetCalibration (const ICalibration2d *calibrationPtr, bool releaseFlag=false) override |
| Set calibration of this object. | |
| virtual bool | Transform (const ITransformation2d &transformation, ITransformation2d::ExactnessMode mode=ITransformation2d::EM_NONE, double *errorFactorPtr=NULL) override |
| Transform this object using some transformation. | |
| virtual bool | InvTransform (const ITransformation2d &transformation, ITransformation2d::ExactnessMode mode=ITransformation2d::EM_NONE, double *errorFactorPtr=NULL) override |
| Do inverse transformation of this object. | |
| virtual bool | GetTransformed (const ITransformation2d &transformation, IObject2d &result, ITransformation2d::ExactnessMode mode=ITransformation2d::EM_NONE, double *errorFactorPtr=NULL) const override |
| Calulate transformation of the object into second one. | |
| virtual bool | GetInvTransformed (const ITransformation2d &transformation, IObject2d &result, ITransformation2d::ExactnessMode mode=ITransformation2d::EM_NONE, double *errorFactorPtr=NULL) const override |
| Calulate inverse transformation of the object into second one. | |
Public Member Functions inherited from iser::ISerializable | |
| virtual quint32 | GetMinimalVersion (int versionId) const |
| Get minimal needed version to correct storing of this data. | |
Public Member Functions inherited from istd::IChangeable | |
| 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 () |
Static Public Member Functions | |
| static QByteArray | GetTypeName () |
Static Public Member Functions inherited from istd::IChangeable | |
| static const ChangeSet & | GetNoChanges () |
| Get empty set of changes. | |
| static const ChangeSet & | GetAnyChange () |
| Get anonymous change set. | |
| static const ChangeSet & | GetAllChanges () |
| Get anonymous change set. | |
| static const ChangeSet & | GetDelegatedChanges () |
| Get delegated change set. | |
Protected Member Functions | |
| QImage::Format | CalcQtFormat (PixelFormat pixelFormat) const |
| PixelFormat | CalcFromQtFormat (QImage::Format imageFormat) const |
| bool | SetQImage (const QImage &image) |
| void | InitializeColorModel () |
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 | |
Public Types inherited from iimg::CBitmapBase | |
| typedef i2d::CObject2dBase | BaseClass |
Public Types inherited from i2d::IObject2d | |
| enum | ChangeFlags { CF_OBJECT_POSITION = 0x6ba340 } |
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 iimg::IBitmap | |
| enum | PixelFormat { PF_UNKNOWN = 0 , PF_MONO , PF_GRAY , PF_RGB , PF_RGBA , PF_RGB24 , PF_GRAY16 , PF_GRAY32 , PF_FLOAT32 , PF_FLOAT64 , PF_XYZ32 , PF_XY32 , PF_RGB48 , PF_RGBA64 , PF_CMYK , PF_USER = 256 } |
| Bitmap pixel format description. More... | |
Static Protected Member Functions inherited from iimg::CBitmapBase | |
| static int | GetComponentsCount (IBitmap::PixelFormat format) |
| static int | GetComponentBitsCount (IBitmap::PixelFormat format, int componentIndex) |
| static int | GetPixelBitsCount (IBitmap::PixelFormat format) |
Static Protected Attributes inherited from i2d::CObject2dBase | |
| static const ChangeSet | s_objectMovedChange |
| static const ChangeSet | s_objectModifiedChange |
| iimg::CBitmap::CBitmap | ( | ) |
| iimg::CBitmap::CBitmap | ( | const CBitmap & | bitmap | ) |
| iimg::CBitmap::CBitmap | ( | const QImage & | image | ) |
|
protected |
|
protected |
|
overridevirtual |
Cleat this image.
After this operation all the image pixels will be set to the default value (black by default).
Implements iimg::IRasterImage.
|
overridevirtual |
Make a copy of this object.
Reimplemented from istd::IChangeable.
|
overridevirtual |
Copy this object from another one.
Default implementation in istd::IChangeable does nothing.
Reimplemented from i2d::CObject2dBase.
Reimplemented in iser::TCopySerializedWrap< iimg::CBitmap >.
|
overridevirtual |
Copies the image data from a QImage object.
| image | QImage object. |
Implements iimg::IQImageProvider.
|
overridevirtual |
Create bitmap with specified size and format.
| pixelFormat | bitmap format. |
| size | bitmap size. |
| pixelBitsCount | bits per pixel. Default value 0 means that the number of bits per pixel is defined by format specification. |
| componentsCount | components per pixel. Default value 0 means that the number of bits per pixel is defined by format specification. |
Implements iimg::IBitmap.
|
overridevirtual |
Create bitmap with specified size and format using external image data buffer.
| pixelFormat | bitmap format. |
| size | bitmap size. |
| dataPtr | pointer to external image buffer. |
| releaseFlag | if its true, external buffer will be managed (removed) by this object. |
| linesDifference | address difference between next and previos line. If it equals 0, the value will be taken from size and number of bits per pixel. |
Implements iimg::IBitmap.
|
overridevirtual |
Reimplemented from iser::IObject.
|
overridevirtual |
Get size of this raster image.
Implements iimg::IRasterImage.
|
overridevirtual |
Get pointer to buffer for single line.
| positionY | position Y. It must be smaller than bitmap size Y component. |
Implements iimg::IBitmap.
|
overridevirtual |
Get pointer to buffer for single line.
| positionY | position Y. It must be smaller than bitmap size Y component. |
Implements iimg::IBitmap.
|
overridevirtual |
Get address difference between next and previous line.
Implements iimg::IBitmap.
|
overridevirtual |
|
overridevirtual |
Get address difference between next and previous pixel.
Implements iimg::IBitmap.
|
overridevirtual |
Gets a QImage object.
Implements iimg::IQImageProvider.
|
overridevirtual |
Get set of flags for supported operations.
Reimplemented from istd::IChangeable.
Reimplemented in iser::TCopySerializedWrap< iimg::CBitmap >.
|
static |
|
protected |
|
overridevirtual |
Get true if the pixel format is supported by the bitmap implementation.
| pixelFormat | bitmap format. |
Implements iimg::IBitmap.
|
overridevirtual |
Reset data to its default state.
Default implementation in istd::IChangeable does nothing.
true if the operation was successful, and false otherwise. Reimplemented from i2d::CObject2dBase.
|
overridevirtual |
Reset this image.
After this operation image is set to initial state.
Implements iimg::IRasterImage.
|
protected |