blob: 618ed962c341b09180a04a94c6d12cfb253d9727 [file] [log] [blame]
Shih-wei Liao462aefd2010-06-04 15:32:04 -07001#ifdef USE_ELEMENT_DATA_TYPE
2
3# define GET_ELEMENT_DATA_TYPE(type) ELEMENT_DATA_TYPE_ ## type
4
5# define ELEMENT_DATA_TYPE_FLOAT_32 RSExportPrimitiveType::DataTypeFloat32
Stephen Hines88090ea2010-09-30 15:58:46 -07006# define ELEMENT_DATA_TYPE_FLOAT_64 RSExportPrimitiveType::DataTypeFloat64
Shih-wei Liao462aefd2010-06-04 15:32:04 -07007# define ELEMENT_DATA_TYPE_SIGNED_8 RSExportPrimitiveType::DataTypeSigned8
8# define ELEMENT_DATA_TYPE_SIGNED_16 RSExportPrimitiveType::DataTypeSigned16
9# define ELEMENT_DATA_TYPE_SIGNED_32 RSExportPrimitiveType::DataTypeSigned32
Stephen Hines8d75dc42010-10-01 15:36:03 -070010# define ELEMENT_DATA_TYPE_SIGNED_64 RSExportPrimitiveType::DataTypeSigned64
Shih-wei Liao462aefd2010-06-04 15:32:04 -070011# define ELEMENT_DATA_TYPE_UNSIGNED_8 RSExportPrimitiveType::DataTypeUnsigned8
12# define ELEMENT_DATA_TYPE_UNSIGNED_16 RSExportPrimitiveType::DataTypeUnsigned16
13# define ELEMENT_DATA_TYPE_UNSIGNED_32 RSExportPrimitiveType::DataTypeUnsigned32
Shih-wei Liao91a37832010-10-03 19:11:51 -070014# define ELEMENT_DATA_TYPE_BOOL RSExportPrimitiveType::DataTypeBool
15
Shih-wei Liao462aefd2010-06-04 15:32:04 -070016# define ELEMENT_DATA_TYPE_UNSIGNED_565 RSExportPrimitiveType::DataTypeUnsigned565
17# define ELEMENT_DATA_TYPE_UNSIGNED_5551 RSExportPrimitiveType::DataTypeUnsigned5551
18# define ELEMENT_DATA_TYPE_UNSIGNED_4444 RSExportPrimitiveType::DataTypeUnsigned4444
Shih-wei Liao91a37832010-10-03 19:11:51 -070019
20# define ELEMENT_DATA_TYPE_RS_MATRIX_2X2 RSExportPrimitiveType::DataTypeRSMatrix2x2
21# define ELEMENT_DATA_TYPE_RS_MATRIX_3X3 RSExportPrimitiveType::DataTypeRSMatrix3x3
22# define ELEMENT_DATA_TYPE_RS_MATRIX_4X4 RSExportPrimitiveType::DataTypeRSMatrix4x4
23
Shih-wei Liao462aefd2010-06-04 15:32:04 -070024# define ELEMENT_DATA_TYPE_RS_ELEMENT RSExportPrimitiveType::DataTypeRSElement
25# define ELEMENT_DATA_TYPE_RS_TYPE RSExportPrimitiveType::DataTypeRSType
26# define ELEMENT_DATA_TYPE_RS_ALLOCATION RSExportPrimitiveType::DataTypeRSAllocation
27# define ELEMENT_DATA_TYPE_RS_SAMPLER RSExportPrimitiveType::DataTypeRSSampler
28# define ELEMENT_DATA_TYPE_RS_SCRIPT RSExportPrimitiveType::DataTypeRSScript
29# define ELEMENT_DATA_TYPE_RS_MESH RSExportPrimitiveType::DataTypeRSMesh
30# define ELEMENT_DATA_TYPE_RS_PROGRAM_FRAGMENT RSExportPrimitiveType::DataTypeRSProgramFragment
31# define ELEMENT_DATA_TYPE_RS_PROGRAM_VERTEX RSExportPrimitiveType::DataTypeRSProgramVertex
32# define ELEMENT_DATA_TYPE_RS_PROGRAM_RASTER RSExportPrimitiveType::DataTypeRSProgramRaster
33# define ELEMENT_DATA_TYPE_RS_PROGRAM_STORE RSExportPrimitiveType::DataTypeRSProgramStore
Shih-wei Liaocbbdd922010-06-24 12:11:39 -070034# define ELEMENT_DATA_TYPE_RS_FONT RSExportPrimitiveType::DataTypeRSFont
Shih-wei Liao462aefd2010-06-04 15:32:04 -070035
36#endif /* USE_ELEMENT_TYPE_NAME */
37
Shih-wei Liao1f0d88f2010-06-25 00:15:24 -070038
Shih-wei Liao462aefd2010-06-04 15:32:04 -070039#ifdef USE_ELEMENT_DATA_KIND
40
41# define GET_ELEMENT_DATA_KIND(kind) ELEMENT_DATA_KIND_ ## kind
42
43# define ELEMENT_DATA_KIND_USER RSExportPrimitiveType::DataKindUser
Shih-wei Liao462aefd2010-06-04 15:32:04 -070044# define ELEMENT_DATA_KIND_PIXEL_L RSExportPrimitiveType::DataKindPixelL
45# define ELEMENT_DATA_KIND_PIXEL_A RSExportPrimitiveType::DataKindPixelA
46# define ELEMENT_DATA_KIND_PIXEL_LA RSExportPrimitiveType::DataKindPixelLA
47# define ELEMENT_DATA_KIND_PIXEL_RGB RSExportPrimitiveType::DataKindPixelRGB
48# define ELEMENT_DATA_KIND_PIXEL_RGBA RSExportPrimitiveType::DataKindPixelRGBA
49
50#endif /* USE_ELEMENT_TYPE_KIND */
51
52/* DEF_ELEMENT(name, dk, dt, norm, vsize) */
53#ifdef DEF_ELEMENT
54
Shih-wei Liao91a37832010-10-03 19:11:51 -070055 DEF_ELEMENT("rs_pixel_l", USER, UNSIGNED_8, true, 1)
56 DEF_ELEMENT("rs_pixel_a", USER, UNSIGNED_8, true, 1)
57 DEF_ELEMENT("rs_pixel_la", USER, UNSIGNED_8, true, 2)
58 DEF_ELEMENT("rs_pixel_rgb", USER, UNSIGNED_8, true, 3)
59 DEF_ELEMENT("rs_pixel_rgba", USER, UNSIGNED_8, true, 4)
60 DEF_ELEMENT("rs_pixel_rgb565", USER, UNSIGNED_565, true, 1)
61 DEF_ELEMENT("rs_pixel_rgba5551", USER, UNSIGNED_5551, true, 1)
62 DEF_ELEMENT("rs_pixel_rgba4444", USER, UNSIGNED_4444, true, 1)
Shih-wei Liaof8149d92010-08-22 05:32:02 -070063
Shih-wei Liao462aefd2010-06-04 15:32:04 -070064#endif /* DEF_ELEMENT */
65
Shih-wei Liao462aefd2010-06-04 15:32:04 -070066#ifdef DEF_PRIMITIVE_DATA_TYPE /* (type, name) */
67
68 DEF_PRIMITIVE_DATA_TYPE(FLOAT_32, "float")
Stephen Hines88090ea2010-09-30 15:58:46 -070069 DEF_PRIMITIVE_DATA_TYPE(FLOAT_64, "double")
Shih-wei Liao462aefd2010-06-04 15:32:04 -070070 DEF_PRIMITIVE_DATA_TYPE(SIGNED_8, "char")
71 DEF_PRIMITIVE_DATA_TYPE(SIGNED_16, "short")
72 DEF_PRIMITIVE_DATA_TYPE(SIGNED_32, "int")
Stephen Hines8d75dc42010-10-01 15:36:03 -070073 DEF_PRIMITIVE_DATA_TYPE(SIGNED_64, "long")
Shih-wei Liao462aefd2010-06-04 15:32:04 -070074 DEF_PRIMITIVE_DATA_TYPE(UNSIGNED_8, "uchar")
75 DEF_PRIMITIVE_DATA_TYPE(UNSIGNED_16, "ushort")
76 DEF_PRIMITIVE_DATA_TYPE(UNSIGNED_32, "uint")
Shih-wei Liao91a37832010-10-03 19:11:51 -070077 DEF_PRIMITIVE_DATA_TYPE(BOOLEAN, "bool")
Shih-wei Liao462aefd2010-06-04 15:32:04 -070078 DEF_PRIMITIVE_DATA_TYPE(UNSIGNED_565, "u565")
79 DEF_PRIMITIVE_DATA_TYPE(UNSIGNED_5551, "u5551")
80 DEF_PRIMITIVE_DATA_TYPE(UNSIGNED_4444, "u4444")
81
82# undef DEF_PRIMITIVE_DATA_TYPE
83#endif /* DEF_PRIMITIVE_DATA_TYPE */
84
85#ifdef DEF_RS_OBJECT_TYPE /* (type, name) */
86
Shih-wei Liao91a37832010-10-03 19:11:51 -070087 DEF_RS_OBJECT_TYPE(RS_MATRIX_2X2, "rs_matrix2x2")
88 DEF_RS_OBJECT_TYPE(RS_MATRIX_3X3, "rs_matrix3x3")
89 DEF_RS_OBJECT_TYPE(RS_MATRIX_4X4, "rs_matrix4x4")
Shih-wei Liao462aefd2010-06-04 15:32:04 -070090 DEF_RS_OBJECT_TYPE(RS_ELEMENT, "rs_element")
91 DEF_RS_OBJECT_TYPE(RS_TYPE, "rs_type")
92 DEF_RS_OBJECT_TYPE(RS_ALLOCATION, "rs_allocation")
93 DEF_RS_OBJECT_TYPE(RS_SAMPLER, "rs_sampler")
94 DEF_RS_OBJECT_TYPE(RS_SCRIPT, "rs_script")
95 DEF_RS_OBJECT_TYPE(RS_MESH, "rs_mesh")
96 DEF_RS_OBJECT_TYPE(RS_PROGRAM_FRAGMENT, "rs_program_fragment")
97 DEF_RS_OBJECT_TYPE(RS_PROGRAM_VERTEX, "rs_program_vertex")
98 DEF_RS_OBJECT_TYPE(RS_PROGRAM_RASTER, "rs_program_raster")
99 DEF_RS_OBJECT_TYPE(RS_PROGRAM_STORE, "rs_program_store")
Shih-wei Liaocbbdd922010-06-24 12:11:39 -0700100 DEF_RS_OBJECT_TYPE(RS_FONT, "rs_font")
Shih-wei Liao462aefd2010-06-04 15:32:04 -0700101
102# undef DEF_RS_OBJECT_TYPE
103#endif /* DEF_RS_OBJECT_TYPE */
104
105#ifdef DEF_ELEMENT
106# undef DEF_ELEMENT
107#endif
108
109#ifdef USE_ELEMENT_DATA_TYPE
110
111# undef GET_ELEMENT_DATA_TYPE
112
113# undef ELEMENT_DATA_TYPE_FLOAT_32
Stephen Hines88090ea2010-09-30 15:58:46 -0700114# undef ELEMENT_DATA_TYPE_FLOAT_64
Shih-wei Liao462aefd2010-06-04 15:32:04 -0700115# undef ELEMENT_DATA_TYPE_SIGNED_8
116# undef ELEMENT_DATA_TYPE_SIGNED_16
117# undef ELEMENT_DATA_TYPE_SIGNED_32
Stephen Hines8d75dc42010-10-01 15:36:03 -0700118# undef ELEMENT_DATA_TYPE_SIGNED_64
Shih-wei Liao462aefd2010-06-04 15:32:04 -0700119# undef ELEMENT_DATA_TYPE_UNSIGNED_8
120# undef ELEMENT_DATA_TYPE_UNSIGNED_16
121# undef ELEMENT_DATA_TYPE_UNSIGNED_32
Shih-wei Liao91a37832010-10-03 19:11:51 -0700122# undef ELEMENT_DATA_TYPE_BOOLEAN
Shih-wei Liao462aefd2010-06-04 15:32:04 -0700123# undef ELEMENT_DATA_TYPE_UNSIGNED_565
124# undef ELEMENT_DATA_TYPE_UNSIGNED_5551
125# undef ELEMENT_DATA_TYPE_UNSIGNED_4444
Shih-wei Liao91a37832010-10-03 19:11:51 -0700126# undef ELEMENT_DATA_TYPE_RS_MATRIX_2X2
127# undef ELEMENT_DATA_TYPE_RS_MATRIX_3X3
128# undef ELEMENT_DATA_TYPE_RS_MATRIX_4X4
Shih-wei Liao462aefd2010-06-04 15:32:04 -0700129# undef ELEMENT_DATA_TYPE_RS_ELEMENT
130# undef ELEMENT_DATA_TYPE_RS_TYPE
131# undef ELEMENT_DATA_TYPE_RS_ALLOCATION
132# undef ELEMENT_DATA_TYPE_RS_SAMPLER
133# undef ELEMENT_DATA_TYPE_RS_SCRIPT
134# undef ELEMENT_DATA_TYPE_RS_MESH
135# undef ELEMENT_DATA_TYPE_RS_PROGRAM_FRAGMENT
136# undef ELEMENT_DATA_TYPE_RS_PROGRAM_VERTEX
137# undef ELEMENT_DATA_TYPE_RS_PROGRAM_RASTER
138# undef ELEMENT_DATA_TYPE_RS_PROGRAM_STORE
Shih-wei Liaocbbdd922010-06-24 12:11:39 -0700139# undef ELEMENT_DATA_TYPE_RS_FONT
Shih-wei Liao462aefd2010-06-04 15:32:04 -0700140
141# undef USE_ELEMENT_DATA_TYPE
142
143#endif
144
145#ifdef USE_ELEMENT_DATA_KIND
146
147# undef GET_ELEMENT_DATA_KIND
148
149# undef ELEMENT_DATA_KIND_USER
Shih-wei Liao462aefd2010-06-04 15:32:04 -0700150# undef ELEMENT_DATA_KIND_PIXEL_L
151# undef ELEMENT_DATA_KIND_PIXEL_A
152# undef ELEMENT_DATA_KIND_PIXEL_LA
153# undef ELEMENT_DATA_KIND_PIXEL_RGB
154# undef ELEMENT_DATA_KIND_PIXEL_RGBA
155
156# undef USE_ELEMENT_DATA_KIND
157
158#endif