// // SPDX-License-Identifier: BSD-3-Clause // Copyright (c) Contributors to the OpenEXR Project. // #ifndef INCLUDED_IMF_FORWARD_H #define INCLUDED_IMF_FORWARD_H //////////////////////////////////////////////////////////////////// // // Forward declarations for OpenEXR - correctly declares namespace // //////////////////////////////////////////////////////////////////// #include "ImfExport.h" #include "ImfNamespace.h" OPENEXR_IMF_INTERNAL_NAMESPACE_HEADER_ENTER // classes for basic types; template class IMF_EXPORT_TEMPLATE_TYPE Array; template class IMF_EXPORT_TEMPLATE_TYPE Array2D; struct IMF_EXPORT_TYPE Channel; class IMF_EXPORT_TYPE ChannelList; struct IMF_EXPORT_TYPE Chromaticities; // attributes used in headers are TypedAttributes class IMF_EXPORT_TYPE Attribute; class IMF_EXPORT_TYPE Header; // file handling classes class IMF_EXPORT_TYPE OutputFile; class IMF_EXPORT_TYPE TiledInputFile; class IMF_EXPORT_TYPE ScanLineInputFile; class IMF_EXPORT_TYPE InputFile; class IMF_EXPORT_TYPE TiledOutputFile; class IMF_EXPORT_TYPE DeepScanLineInputFile; class IMF_EXPORT_TYPE DeepScanLineOutputFile; class IMF_EXPORT_TYPE DeepTiledInputFile; class IMF_EXPORT_TYPE DeepTiledOutputFile; class IMF_EXPORT_TYPE AcesInputFile; class IMF_EXPORT_TYPE AcesOutputFile; class IMF_EXPORT_TYPE TiledInputPart; class IMF_EXPORT_TYPE TiledInputFile; class IMF_EXPORT_TYPE TileOffsets; // multipart file handling class IMF_EXPORT_TYPE GenericInputFile; class IMF_EXPORT_TYPE GenericOutputFile; class IMF_EXPORT_TYPE MultiPartInputFile; class IMF_EXPORT_TYPE MultiPartOutputFile; class IMF_EXPORT_TYPE InputPart; class IMF_EXPORT_TYPE TiledInputPart; class IMF_EXPORT_TYPE DeepScanLineInputPart; class IMF_EXPORT_TYPE DeepTiledInputPart; class IMF_EXPORT_TYPE OutputPart; class IMF_EXPORT_TYPE ScanLineOutputPart; class IMF_EXPORT_TYPE TiledOutputPart; class IMF_EXPORT_TYPE DeepScanLineOutputPart; class IMF_EXPORT_TYPE DeepTiledOutputPart; // internal use only struct InputPartData; struct OutputStreamMutex; struct OutputPartData; struct InputStreamMutex; // frame buffers class IMF_EXPORT_TYPE FrameBuffer; class IMF_EXPORT_TYPE DeepFrameBuffer; struct IMF_EXPORT_TYPE DeepSlice; // compositing class IMF_EXPORT_TYPE DeepCompositing; class IMF_EXPORT_TYPE CompositeDeepScanLine; // preview image class IMF_EXPORT_TYPE PreviewImage; struct IMF_EXPORT_TYPE PreviewRgba; // streams class IMF_EXPORT_TYPE OStream; class IMF_EXPORT_TYPE IStream; class IMF_EXPORT_TYPE IDManifest; class IMF_EXPORT_TYPE CompressedIDManifest; OPENEXR_IMF_INTERNAL_NAMESPACE_HEADER_EXIT #endif // include guard