| 123456789101112131415161718192021222324252627282930313233 |
- /*---------------------------------------------------------------------------------------------
- * Copyright (c) Microsoft Corporation. All rights reserved.
- * Licensed under the MIT License. See License.txt in the project root for license information.
- *--------------------------------------------------------------------------------------------*/
- /**
- * A very VM friendly rgba datastructure.
- * Please don't touch unless you take a look at the IR.
- */
- export class RGBA8 {
- constructor(r, g, b, a) {
- this._rgba8Brand = undefined;
- this.r = RGBA8._clamp(r);
- this.g = RGBA8._clamp(g);
- this.b = RGBA8._clamp(b);
- this.a = RGBA8._clamp(a);
- }
- equals(other) {
- return (this.r === other.r
- && this.g === other.g
- && this.b === other.b
- && this.a === other.a);
- }
- static _clamp(c) {
- if (c < 0) {
- return 0;
- }
- if (c > 255) {
- return 255;
- }
- return c | 0;
- }
- }
- RGBA8.Empty = new RGBA8(0, 0, 0, 0);
|