| /* |
| * Copyright 2018 Google Inc. |
| * |
| * Use of this source code is governed by a BSD-style license that can be |
| * found in the LICENSE file. |
| */ |
| |
| // Op is a type used by both Transform.c and Transform_inl.h. |
| |
| #pragma once |
| |
| #define FOREACH_Op(M) \ |
| M(noop) \ |
| M(load_565) \ |
| M(load_888) \ |
| M(load_8888) \ |
| M(load_1010102) \ |
| M(load_161616) \ |
| M(load_16161616) \ |
| M(load_hhh) \ |
| M(load_hhhh) \ |
| M(load_fff) \ |
| M(load_ffff) \ |
| M(swap_rb) \ |
| M(clamp) \ |
| M(invert) \ |
| M(force_opaque) \ |
| M(premul) \ |
| M(unpremul) \ |
| M(matrix_3x3) \ |
| M(matrix_3x4) \ |
| M(lab_to_xyz) \ |
| M(tf_r) \ |
| M(tf_g) \ |
| M(tf_b) \ |
| M(tf_a) \ |
| M(poly_tf_r) \ |
| M(poly_tf_g) \ |
| M(poly_tf_b) \ |
| M(table_8_r) \ |
| M(table_8_g) \ |
| M(table_8_b) \ |
| M(table_8_a) \ |
| M(table_16_r) \ |
| M(table_16_g) \ |
| M(table_16_b) \ |
| M(table_16_a) \ |
| M(clut_3D_8) \ |
| M(clut_3D_16) \ |
| M(clut_4D_8) \ |
| M(clut_4D_16) \ |
| M(store_565) \ |
| M(store_888) \ |
| M(store_8888) \ |
| M(store_1010102) \ |
| M(store_161616) \ |
| M(store_16161616) \ |
| M(store_hhh) \ |
| M(store_hhhh) \ |
| M(store_fff) \ |
| M(store_ffff) |
| |
| typedef enum { |
| #define M(op) Op_##op, |
| FOREACH_Op(M) |
| #undef M |
| } Op; |