@awayjs/graphics
Version:
AwayJS graphics classes
158 lines • 5.93 kB
TypeScript
/**
* Copyright 2014 Mozilla Foundation
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
export interface IDataInput {
readBytes: (bytes: DataBuffer, offset?: number, length?: number) => void;
readBoolean: () => boolean;
readByte: () => number;
readUnsignedByte: () => number;
readShort: () => number;
readUnsignedShort: () => number;
readInt: () => number;
readUnsignedInt: () => number;
readFloat: () => number;
readDouble: () => number;
readMultiByte: (length: number, charSet: string) => string;
readUTF: () => string;
readUTFBytes: (length: number) => string;
bytesAvailable: number;
objectEncoding: number;
endian: string;
}
export interface IDataOutput {
writeBytes: (bytes: DataBuffer, offset?: number, length?: number) => void;
writeBoolean: (value: boolean) => void;
writeByte: (value: number) => void;
writeShort: (value: number) => void;
writeInt: (value: number) => void;
writeUnsignedInt: (value: number) => void;
writeFloat: (value: number) => void;
writeDouble: (value: number) => void;
writeMultiByte: (value: string, charSet: string) => void;
writeUTF: (value: string) => void;
writeUTFBytes: (value: string) => void;
objectEncoding: number;
endian: string;
}
export declare class PlainObjectDataBuffer {
buffer: ArrayBuffer;
length: number;
littleEndian: boolean;
constructor(buffer: ArrayBuffer, length: number, littleEndian: boolean);
}
export declare class DataBuffer implements IDataInput, IDataOutput {
private static _nativeLittleEndian;
private static INITIAL_SIZE;
private _buffer;
private _length;
private _position;
private _littleEndian;
private _objectEncoding;
private _u8;
private _i32;
private _f32;
private _bitBuffer;
private _bitLength;
private static _arrayBufferPool;
constructor(initialSize?: number);
static FromArrayBuffer(buffer: ArrayBuffer, length?: number): DataBuffer;
static FromPlainObject(source: PlainObjectDataBuffer): DataBuffer;
toPlainObject(): PlainObjectDataBuffer;
/**
* Clone the DataBuffer in a way that guarantees the underlying ArrayBuffer to be copied
* into an instance of the current global's ArrayBuffer.
*
* Important if the underlying buffer comes from a different global, in which case accessing
* its elements is excruiciatingly slow.
*/
clone(): DataBuffer;
/**
* By default, we only have a byte view. All other views are |null|.
*/
private _resetViews;
/**
* We don't want to eagerly allocate views if we won't ever need them. You must call this method
* before using a view of a certain type to make sure it's available. Once a view is allocated,
* it is not re-allocated unless the view becomes |null| as a result of a call to |resetViews|.
*/
private _requestViews;
getBytes(): Uint8Array;
private _ensureCapacity;
clear(): void;
readBoolean(): boolean;
readByte(): number;
readUnsignedByte(): number;
readBytes(bytes: DataBuffer, offset?: number, length?: number): void;
readShort(): number;
readUnsignedShort(): number;
readInt(): number;
readUnsignedInt(): number;
readFloat(): number;
readDouble(): number;
writeBoolean(value: boolean): void;
writeByte(value: number): void;
writeUnsignedByte(value: number): void;
writeRawBytes(bytes: Uint8Array): void;
writeBytes(bytes: DataBuffer, offset?: number, length?: number): void;
writeShort(value: number): void;
writeUnsignedShort(value: number): void;
writeInt(value: number): void;
write2Ints(a: number, b: number): void;
write4Ints(a: number, b: number, c: number, d: number): void;
writeUnsignedInt(value: number): void;
write2UnsignedInts(a: number, b: number): void;
write4UnsignedInts(a: number, b: number, c: number, d: number): void;
writeFloat(value: number): void;
write2Floats(a: number, b: number): void;
write6Floats(a: number, b: number, c: number, d: number, e: number, f: number): void;
writeDouble(value: number): void;
readRawBytes(): Int8Array;
writeUTF(value: string): void;
writeUTFBytes(value: string): void;
readUTF(): string;
readUTFBytes(length: number): string;
get length(): number;
set length(value: number);
get bytesAvailable(): number;
get position(): number;
get buffer(): ArrayBuffer;
get bytes(): Uint8Array;
get ints(): Int32Array;
set position(position: number);
get objectEncoding(): number;
set objectEncoding(version: number);
get endian(): string;
set endian(type: string);
toString(): string;
toBlob(type: string): Blob;
writeMultiByte(value: string, charSet: string): void;
readMultiByte(length: number, charSet: string): string;
getValue(name: number): any;
setValue(name: number, value: any): void;
readFixed(): number;
readFixed8(): number;
readFloat16(): number;
readEncodedU32(): number;
readBits(size: number): number;
readUnsignedBits(size: number): number;
readFixedBits(size: number): number;
readString(length?: number): string;
align(): void;
deflate(): void;
inflate(): void;
compress(algorithm: string): void;
uncompress(algorithm: string): void;
}
//# sourceMappingURL=DataBuffer.d.ts.map