25 #if !defined(OPENNURBS_BITMAP_INC_) 26 #define OPENNURBS_BITMAP_INC_ 50 static const ON_Bitmap* FromModelComponentRef(
62 unsigned int SizeOf()
const override;
71 int BitsPerPixel()
const;
74 size_t SizeofScan()
const;
77 size_t SizeofImage()
const;
85 const unsigned char* Bits(
90 void SetFileReference(
94 const wchar_t* file_full_path,
102 #if defined(ON_DLL_TEMPLATE) 107 #if !defined(ON_OS_WINDOWS_GDI) 256 bool IsEmpty()
const;
260 unsigned int SizeOf()
const override;
269 int Width()
const override;
270 int Height()
const override;
273 int PaletteColorCount()
const;
274 int SizeofPalette()
const;
276 int BitsPerPixel()
const override;
277 size_t SizeofScan()
const override;
278 size_t SizeofImage()
const override;
283 const unsigned char* Bits(
302 #if defined(ON_OS_WINDOWS_GDI) 404 const BITMAPINFO* bmi,
405 const unsigned char* bits,
417 bool IsContiguous()
const;
419 #if defined(ON_OS_WINDOWS_GDI) 420 BITMAPINFO* m_bmi =
nullptr;
440 unsigned char* m_bits =
nullptr;
453 void Internal_Destroy();
502 unsigned int SizeOf()
const override;
504 size_t SizeofImage()
const override;
505 unsigned char* Bits(
int)
override;
506 const unsigned char* Bits(
int)
const override;
508 const void* m_buffer =
nullptr;
509 size_t m_sizeof_buffer = 0;
510 bool m_managed_buffer =
false;
511 ON__UINT32 m_buffer_crc32 = 0;
518 void Internal_Destroy();
unsigned int bfSize
DWORD = size, in bytes, of the bitmap file.
Definition: opennurbs_bitmap.h:133
unsigned int biClrUsed
Definition: opennurbs_bitmap.h:200
Definition: opennurbs_bitmap.h:483
unsigned short biPlanes
Definition: opennurbs_bitmap.h:152
Definition: opennurbs_model_component.h:25
unsigned int SizeOf() const override
void Dump(ON_TextLog &) const override
unsigned int biSize
DWORD = sizeof(BITMAPINFOHEADER)
Definition: opennurbs_bitmap.h:145
Definition: opennurbs_array.h:36
bool IsValid(class ON_TextLog *text_log=nullptr) const override
static const ON_EmbeddedBitmap Unset
Definition: opennurbs_bitmap.h:492
unsigned short bfType
WORD = file type, must be BM.
Definition: opennurbs_bitmap.h:132
Definition: opennurbs_color.h:24
static const ON_Bitmap Unset
Definition: opennurbs_bitmap.h:38
int biXPelsPerMeter
LONG.
Definition: opennurbs_bitmap.h:198
int biWidth
LONG = width (in pixels) of (decompressed) bitmap.
Definition: opennurbs_bitmap.h:146
static const ON_WindowsBitmap Unset
Definition: opennurbs_bitmap.h:239
Windows sizeof(ON_WindowsRGBQUAD) = 4.
Definition: opennurbs_bitmap.h:120
unsigned int biSizeImage
DWORD = bytes in image.
Definition: opennurbs_bitmap.h:197
Definition: opennurbs_bitmap.h:28
unsigned short bfReserved1
WORD Reserved; must be zero.
Definition: opennurbs_bitmap.h:134
Windows packs BITMAPFILEHEADER.
Definition: opennurbs_bitmap.h:131
unsigned char rgbBlue
BYTE.
Definition: opennurbs_bitmap.h:123
unsigned char rgbReserved
BYTE.
Definition: opennurbs_bitmap.h:126
int biHeight
Definition: opennurbs_bitmap.h:147
unsigned char rgbRed
BYTE.
Definition: opennurbs_bitmap.h:125
Definition: opennurbs_bitmap.h:206
Definition: opennurbs_bitmap.h:464
unsigned int biCompression
Definition: opennurbs_bitmap.h:183
Definition: opennurbs_textlog.h:20
< use for generic serialization of binary data
Definition: opennurbs_archive.h:1866
unsigned int biClrImportant
DWORD.
Definition: opennurbs_bitmap.h:203
unsigned int bfOffBits
DWORD = offset, in bytes, from the beginning of the BITMAPFILEHEADER structure to the bitmap bits...
Definition: opennurbs_bitmap.h:136
ON_ModelComponent & operator=(const ON_ModelComponent &source)
unsigned char rgbGreen
BYTE.
Definition: opennurbs_bitmap.h:124
virtual bool Read(ON_BinaryArchive &binary_archive)
ON_WindowsBITMAPINFOHEADER bmiHeader
Definition: opennurbs_bitmap.h:210
int biYPelsPerMeter
LONG.
Definition: opennurbs_bitmap.h:199
Definition: opennurbs_model_component.h:1686
Definition: opennurbs_bitmap.h:228
virtual bool Write(ON_BinaryArchive &binary_archive) const
Definition: opennurbs_bitmap.h:143
static const ON_WindowsBitmapEx Unset
Definition: opennurbs_bitmap.h:473
unsigned short biBitCount
Definition: opennurbs_bitmap.h:154
unsigned short bfReserved2
WORD Reserved; must be zero.
Definition: opennurbs_bitmap.h:135
Definition: opennurbs_file_utilities.h:1187