38 lines
1.3 KiB
TypeScript
38 lines
1.3 KiB
TypeScript
import type { Renderable } from '../Renderable';
|
|
import type { Instruction } from './Instruction';
|
|
/**
|
|
* A set of instructions that can be executed by the renderer.
|
|
* Basically wraps an array, but with some extra properties that help the renderer
|
|
* to keep things nice and optimised.
|
|
*
|
|
* Note:
|
|
* InstructionSet.instructions contains all the instructions, but does not resize (for performance).
|
|
* So for the true length of the instructions you need to use InstructionSet.instructionSize
|
|
* @memberof rendering
|
|
*/
|
|
export declare class InstructionSet {
|
|
/** a unique id for this instruction set used through the renderer */
|
|
readonly uid: number;
|
|
/** the array of instructions */
|
|
readonly instructions: Instruction[];
|
|
/** the actual size of the array (any instructions passed this should be ignored) */
|
|
instructionSize: number;
|
|
/** allows for access to the render pipes of the renderer */
|
|
renderPipes: any;
|
|
renderables: Renderable[];
|
|
tick: number;
|
|
/** reset the instruction set so it can be reused set size back to 0 */
|
|
reset(): void;
|
|
/**
|
|
* Add an instruction to the set
|
|
* @param instruction - add an instruction to the set
|
|
*/
|
|
add(instruction: Instruction): void;
|
|
/**
|
|
* Log the instructions to the console (for debugging)
|
|
* @internal
|
|
* @ignore
|
|
*/
|
|
log(): void;
|
|
}
|