| /// <reference path="load.ts" /> | |
| /// <reference path="memory.ts" /> | |
| /// <reference path="../bindings/extension.d.ts" /> | |
| /// <reference path="public_api.d.ts" /> | |
| // eslint-disable-next-line @typescript-eslint/no-unused-vars | |
| namespace Extension { | |
| // Module is the C++ module with the private (and some public) bindings on it. | |
| declare const Module: extension.Bindings; | |
| declare const CanvasKit: public_api.CanvasKit; | |
| load.afterLoad(() => { | |
| /** | |
| * publicExtension takes the number of rects and returns how | |
| * many of them have the point (5, 5) in them. | |
| * @param myRects | |
| * @ts publicExtension(myRects: InputFlattenedRectArray): void; | |
| */ | |
| CanvasKit.publicExtension = (myRects: public_api.InputFlattenedRectArray) => { | |
| const rPtr = memory.copy1dArray(myRects, 'HEAPF32'); | |
| const num = Module._privateExtension(rPtr, myRects.length / 4); | |
| memory.freeIfNecessary(rPtr, myRects); | |
| return num; | |
| }; | |
| CanvasKit.withObject = (obj: public_api.CompoundObj) => { | |
| obj.gamma ||= 1.0; | |
| Module._withObject(obj); | |
| }; | |
| }); | |
| } |