@babylonjs/core
Version:
Getting started? Play directly with the Babylon.js API using our [playground](https://playground.babylonjs.com/). It also contains a lot of samples to learn how to use it.
76 lines (75 loc) • 2.14 kB
TypeScript
import type { Nullable } from "../../../../types.js";
import type { DataCursor } from "./exrLoader.core.js";
export declare const INT32_SIZE = 4;
export declare const FLOAT32_SIZE = 4;
export declare const INT8_SIZE = 1;
export declare const INT16_SIZE = 2;
export declare const ULONG_SIZE = 8;
export declare const USHORT_RANGE: number;
export declare const BITMAP_SIZE: number;
export declare const HUF_ENCBITS = 16;
export declare const HUF_DECBITS = 14;
export declare const HUF_ENCSIZE: number;
export declare const HUF_DECSIZE: number;
export declare const HUF_DECMASK: number;
export declare const SHORT_ZEROCODE_RUN = 59;
export declare const LONG_ZEROCODE_RUN = 63;
export declare const SHORTEST_LONG_RUN: number;
export interface IEXRCHannel {
name: string;
pixelType: number;
}
export interface IDecodeChannel {
[name: string]: number;
}
/**
* Interface used to define the EXR header
*/
export interface IEXRHeader {
/** Version */
version: number;
/** Specifications */
spec: {
singleTile: boolean;
longName: boolean;
deepFormat: boolean;
multiPart: boolean;
};
/** Data window */
dataWindow: {
xMin: number;
xMax: number;
yMin: number;
yMax: number;
};
/** Channels */
channels: IEXRCHannel[];
/** Extra data */
[name: string]: any;
}
export interface IEXRDecoder {
size: number;
viewer: DataView;
array: Uint8Array;
byteArray: Nullable<Float32Array | Uint16Array>;
offset: DataCursor;
width: number;
height: number;
channels: number;
channelLineOffsets: IDecodeChannel;
scanOrder: (value: number) => number;
bytesPerLine: number;
outLineWidth: number;
lines: number;
scanlineBlockSize: number;
inputSize: Nullable<number>;
type: number;
uncompress: Nullable<(decoder: IEXRDecoder) => DataView>;
getter: (dataView: DataView, offset: DataCursor) => number;
format: number;
outputChannels: number;
decodeChannels: IDecodeChannel;
blockCount: Nullable<number>;
linearSpace: boolean;
textureType: number;
}