ilbm.datatype Reference¶
BOOPSI datatype class reference for ilbm.datatype, synthesised from the AmigaOS NDK 3.2 Release 4 (Autodocs/ilbm).
Class properties¶
| Property | Value |
|---|---|
| Display name | ilbm.datatype |
| Group ID | GID_PICTURE = MAKE_ID('p','i','c','t') (picture) |
| Superclass | picture.datatype |
| File format | ILBM IFF (InterLeaved BitMap) |
| Methods declared | 1 |
| Parent class page | picture.datatype |
Description¶
The ILBM data type, a sub-class of the picture.datatype, is used to load ILBM IFF picture files.
Methods¶
Each method is declared in the autodoc METHODS block. Method implementations are inherited from the superclass unless noted otherwise in the parent's autodoc.
| Method | Purpose |
|---|---|
OM_NEW |
Create a new picture object from an ILBM IFF. The source may be either a file or the clipboard. |
See also¶
picture.datatype
Release history (NDK 3.2 R4)¶
Excerpted from ReleaseNotes/ilbm-dt-RelNotes in the NDK 3.2 R4 distribution.
-------------------- AmigaOS 3.1.4.(1) project -----------------------
Changes for release 45.1 (14.8.2018)
- Fixed a race condition on library lifetime handling.
- Fixed a potential memory leak on library init.
Changes for release 45.2 (16.8.2018)
- Backported the main body of the 44.9 to 3.1.4
to include support for 24-bit ILBMs.
Changes for release 45.3 (10.9.2018)
- Fixed another race condition on LibOpen.
----------------------- AmigaOS 3.2 project --------------------------
Changes for release 45.4 (5.4.2020)
- Made the class initialization code a bit shorter.
- Removed class_iprotos.h since it wasn't being used.
- Added documentation to the code where it seemed to
be helpful.
- The ByteRun1 decompression code no longer has two
branches of which only one writes to the destination
bit plane row. It's all done in a single function
with no duplicate code now. I bet it's not even
slower than before, since it now uses memset() and
memcpy() instead of moving bytes one at a time.
Certainly is more readable.
- If the CAMG chunk is absent from the file, or the
mode data seems unsound, a mode is now synthesized
by looking at the picture's dimensions.
Changes for release 47.1 (5.4.2020)
- We now try to read the mask bit plane if available
and let picture.datatype know that it might want to
copy it, in case it comes in handy later. Note that
this feature requires picture.datatype V47 and may
not even work...
- Now has a proper name: "ilbm.datatype" rather than
just "ilbm".
Changes for release 47.2 (20.6.2020)
- Added preparations for avoidance of ChipRAM usage
in case of active RTG systems.
Changes for release 47.3 (21.6.2020)
- This version supports 1-8 bitplanes including EHB
(but not HAM) in FastRAM loading mode for RTG
systems.
- Reduced memory allocations in planar to chunky mode
Changes for release 47.4 (3.3.2021)
- The presence of a mask plane for 8 BPP images led
to overwritten memory in V42 planar mode. Also,
the contents of the mask plane were effectively
ignored in V42 mode.
Cross-references¶
datatypes.libraryReference — DataType API,NewDTObjectA(),DisposeDTObject(),DTA_*tagspicture.datatypeReference — superclass; full method implementations live hereiffparse.libraryReference — IFF file format primitives (FORM/LIST/PROP/CAT chunks)
Source: AmigaOS NDK 3.2 Release 4, Autodocs/ilbm_dtc.doc, Include_H/datatypes/datatypes.h, ReleaseNotes/ilbm-dt-RelNotes.