![]() |
ICF 3.0.5.47
Technical documentation of ICF Libraries
|
Definition of single plane bitmap. More...
#include <IBitmap.h>
Public Types | |
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_USER = 256 } |
Bitmap pixel format description. More... | |
![]() | |
enum | ChangeFlags { CF_OBJECT_POSITION = 0x6ba340 } |
![]() | |
enum | ChangeFlags { CF_ICF_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 , SO_CHANGE_LOCK = 1 << 5 } |
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... | |
Public Member Functions | |
virtual PixelFormat | GetPixelFormat () const =0 |
Get the bitmap's pixel format. | |
virtual bool | IsFormatSupported (PixelFormat pixelFormat) const =0 |
Get true if the pixel format is supported by the bitmap implementation. | |
virtual bool | CreateBitmap (PixelFormat pixelFormat, const istd::CIndex2d &size, int pixelBitsCount=0, int componentsCount=0)=0 |
Create bitmap with specified size and format. | |
virtual bool | CreateBitmap (PixelFormat pixelFormat, const istd::CIndex2d &size, istd::COptMemory &&data, int linesDifference=0)=0 |
Create bitmap with specified size and format using external image data buffer. | |
virtual int | GetLineBytesCount () const =0 |
Number of bytes per single line. | |
virtual int | GetLinesDifference () const =0 |
Get address difference between next and previous line. | |
virtual int | GetPixelsDifference () const =0 |
Get address difference between next and previous pixel. | |
virtual int | GetComponentBitsCount (int componentIndex=0) const =0 |
Get number of bits per single pixel component. | |
virtual int | GetPixelBitsCount () const =0 |
Get total number of bits per single pixel. | |
virtual const void * | GetLinePtr (int positionY) const =0 |
Get pointer to buffer for single line. | |
virtual void * | GetLinePtr (int positionY)=0 |
Get pointer to buffer for single line. | |
![]() | |
virtual bool | IsEmpty () const =0 |
Return true if this image is empty. | |
virtual void | ResetImage ()=0 |
Reset this image. | |
virtual void | ClearImage ()=0 |
Cleat this image. | |
virtual istd::CIndex2d | GetImageSize () const =0 |
Get size of this raster image. | |
virtual int | GetComponentsCount () const =0 |
Get number of color components. | |
virtual icmm::CVarColor | GetColorAt (const istd::CIndex2d &position) const =0 |
Get color at specified pixel. | |
virtual bool | SetColorAt (const istd::CIndex2d &position, const icmm::CVarColor &color)=0 |
Set color at specified pixel. | |
![]() | |
virtual CVector2d | GetCenter () const =0 |
Returns center of this 2D-object. | |
virtual void | MoveCenterTo (const CVector2d &position)=0 |
Move object to position position . | |
virtual CRectangle | GetBoundingBox () const =0 |
Get bounding box of this shape. | |
virtual void | SetCalibration (istd::TOptDelPtr< const ICalibration2d > &&calibrationPtr)=0 |
Set calibration of this object. | |
virtual bool | Transform (const ITransformation2d &transformation, ITransformation2d::ExactnessMode mode=ITransformation2d::EM_NONE, double *errorFactorPtr=nullptr)=0 |
Transform this object using some transformation. | |
virtual bool | InvTransform (const ITransformation2d &transformation, ITransformation2d::ExactnessMode mode=ITransformation2d::EM_NONE, double *errorFactorPtr=nullptr)=0 |
Do inverse transformation of this object. | |
virtual bool | GetTransformed (const ITransformation2d &transformation, IObject2d &result, ITransformation2d::ExactnessMode mode=ITransformation2d::EM_NONE, double *errorFactorPtr=nullptr) const =0 |
Calulate transformation of the object into second one. | |
virtual bool | GetInvTransformed (const ITransformation2d &transformation, IObject2d &result, ITransformation2d::ExactnessMode mode=ITransformation2d::EM_NONE, double *errorFactorPtr=nullptr) const =0 |
Calulate inverse transformation of the object into second one. | |
![]() | |
virtual QByteArray | GetFactoryId () const |
![]() | |
virtual bool | Serialize (IArchive &archive)=0 |
Load or store state of this object as a archive stream. | |
virtual quint32 | GetMinimalVersion (int versionId) const |
Get minimal needed version to correct storing of this data. | |
![]() | |
virtual int | GetSupportedOperations () const |
Get set of flags for supported operations. | |
virtual bool | CopyFrom (const IChangeable &object, CompatibilityMode mode=CM_WITHOUT_REFS) |
Copy this object from another one. | |
virtual bool | IsEqual (const IChangeable &object) const |
Compare this object with another object. | |
virtual std::unique_ptr< IChangeable > | CloneMe (CompatibilityMode mode=CM_WITHOUT_REFS) const |
Make a copy of this object. | |
virtual bool | ResetData (CompatibilityMode mode=CM_WITHOUT_REFS) |
Reset data to its default state. | |
virtual QMutex * | GetChangesLock () const |
Get mutex beeing locked during changes, if available. | |
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. | |
![]() | |
virtual const ICalibration2d * | GetCalibration () const =0 |
Get access to transformation object, which transforms a local logical coordinate system to global one. | |
Additional Inherited Members | |
![]() | |
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. | |
![]() | |
virtual void | OnBeginChanges () |
Callback function for begin change event. | |
virtual void | OnEndChanges (const ChangeSet &changeSet) |
Callback function for end change event. | |
Bitmap pixel format description.
|
pure virtual |
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. |
Implemented in ialgo::CHoughSpace2d, iimg::CBitmap, iimg::CBitmapSlice, and iimg::CGeneralBitmap.
Referenced by ialgo::TGeneralHoughSpace< Dimensions, Element >::ExtractToBitmap(), and iipr::TUnaryTransformProcessorComp< PixelType, Predicate >::ProcessImage().
|
pure virtual |
Create bitmap with specified size and format using external image data buffer.
pixelFormat | bitmap format. |
size | bitmap size. |
data | external image buffer. |
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. |
Implemented in ialgo::CHoughSpace2d, iimg::CBitmap, iimg::CBitmapSlice, and iimg::CGeneralBitmap.
|
pure virtual |
Get number of bits per single pixel component.
Implemented in iimg::CBitmapBase.
|
pure virtual |
Number of bytes per single line.
Implemented in iimg::CBitmapBase.
|
pure virtual |
Get pointer to buffer for single line.
positionY | position Y. It must be smaller than bitmap size Y component. |
Implemented in iimg::CBitmap, iimg::CBitmapSlice, and iimg::CGeneralBitmap.
Referenced by iimg::CScanlineMask::CalculateMaskFromBitmap(), ialgo::TGeneralHoughSpace< Dimensions, Element >::ExtractToBitmap(), iipr::TUnaryTransformProcessorComp< PixelType, Predicate >::ProcessImage(), and iipr::TImagePixelInterpolator< PixelComponentType >::TImagePixelInterpolator().
|
pure virtual |
Get pointer to buffer for single line.
positionY | position Y. It must be smaller than bitmap size Y component. |
Implemented in iimg::CBitmap, iimg::CBitmapSlice, and iimg::CGeneralBitmap.
|
pure virtual |
Get address difference between next and previous line.
Implemented in iimg::CBitmap, iimg::CBitmapSlice, and iimg::CGeneralBitmap.
Referenced by iipr::TImagePixelInterpolator< PixelComponentType >::TImagePixelInterpolator().
|
pure virtual |
Get total number of bits per single pixel.
Implemented in iimg::CBitmap, iimg::CBitmapSlice, and iimg::CGeneralBitmap.
Referenced by iipr::TImagePixelInterpolator< PixelComponentType >::TImagePixelInterpolator().
|
pure virtual |
Get the bitmap's pixel format.
Implemented in iimg::CBitmap, iimg::CBitmapSlice, and iimg::CGeneralBitmap.
Referenced by iipr::TUnaryTransformProcessorComp< PixelType, Predicate >::ProcessImage().
|
pure virtual |
Get address difference between next and previous pixel.
Implemented in iimg::CBitmap, iimg::CBitmapSlice, and iimg::CGeneralBitmap.
|
pure virtual |
Get true
if the pixel format is supported by the bitmap implementation.
pixelFormat | bitmap format. |
Implemented in iimg::CBitmap, iimg::CBitmapSlice, and iimg::CGeneralBitmap.
© Witold Gantzke and Kirill Lepskiy