Skip to content

Commit

Permalink
IOProxy support for IFF files (AcademySoftwareFoundation#3647)
Browse files Browse the repository at this point in the history
  • Loading branch information
lgritz committed Nov 19, 2022
1 parent 3a71e8a commit c18b3ef
Show file tree
Hide file tree
Showing 6 changed files with 519 additions and 606 deletions.
29 changes: 29 additions & 0 deletions src/doc/builtinplugins.rst
Original file line number Diff line number Diff line change
Expand Up @@ -875,6 +875,24 @@ IFF files are used by Autodesk Maya and use the file extension :file:`.iff`.
- int
- the true bits per sample of the IFF file.

**Configuration settings for RLA input**

When opening a IFF ImageInput with a *configuration* (see
Section :ref:`sec-input-with-config`), the following special configuration
options are supported:

.. list-table::
:widths: 30 10 65
:header-rows: 1

* - Input Configuration Attribute
- Type
- Meaning
* - ``oiio:ioproxy``
- ptr
- Pointer to a ``Filesystem::IOProxy`` that will handle the I/O, for
example by reading from memory rather than the file system.

**Configuration settings for IFF output**

When opening an IFF ImageOutput, the following special metadata tokens
Expand All @@ -892,6 +910,17 @@ control aspects of the writing itself:
- If nonzero and outputting UINT8 values in the file from a source of
higher bit depth, will add a small amount of random dither to combat
the appearance of banding.
* - ``oiio:ioproxy``
- ptr
- Pointer to a ``Filesystem::IOProxy`` that will handle the I/O, for
example by reading from memory rather than the file system.

**Custom I/O Overrides**

RLA input and output support the "custom I/O" feature via the
special ``"oiio:ioproxy"`` attributes (see Sections
:ref:`sec-imageoutput-ioproxy` and :ref:`sec-imageinput-ioproxy`) as well as
the `set_ioproxy()` methods.



Expand Down
2 changes: 1 addition & 1 deletion src/iff.imageio/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -2,4 +2,4 @@
# SPDX-License-Identifier: BSD-3-Clause
# https://github.com/OpenImageIO/oiio

add_oiio_plugin (iffinput.cpp iffoutput.cpp iff_pvt.cpp)
add_oiio_plugin (iffinput.cpp iffoutput.cpp)
332 changes: 0 additions & 332 deletions src/iff.imageio/iff_pvt.cpp

This file was deleted.

Loading

0 comments on commit c18b3ef

Please sign in to comment.