1*35238bceSAndroid Build Coastguard Worker #ifndef _XETESTCASERESULT_HPP
2*35238bceSAndroid Build Coastguard Worker #define _XETESTCASERESULT_HPP
3*35238bceSAndroid Build Coastguard Worker /*-------------------------------------------------------------------------
4*35238bceSAndroid Build Coastguard Worker * drawElements Quality Program Test Executor
5*35238bceSAndroid Build Coastguard Worker * ------------------------------------------
6*35238bceSAndroid Build Coastguard Worker *
7*35238bceSAndroid Build Coastguard Worker * Copyright 2014 The Android Open Source Project
8*35238bceSAndroid Build Coastguard Worker *
9*35238bceSAndroid Build Coastguard Worker * Licensed under the Apache License, Version 2.0 (the "License");
10*35238bceSAndroid Build Coastguard Worker * you may not use this file except in compliance with the License.
11*35238bceSAndroid Build Coastguard Worker * You may obtain a copy of the License at
12*35238bceSAndroid Build Coastguard Worker *
13*35238bceSAndroid Build Coastguard Worker * http://www.apache.org/licenses/LICENSE-2.0
14*35238bceSAndroid Build Coastguard Worker *
15*35238bceSAndroid Build Coastguard Worker * Unless required by applicable law or agreed to in writing, software
16*35238bceSAndroid Build Coastguard Worker * distributed under the License is distributed on an "AS IS" BASIS,
17*35238bceSAndroid Build Coastguard Worker * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
18*35238bceSAndroid Build Coastguard Worker * See the License for the specific language governing permissions and
19*35238bceSAndroid Build Coastguard Worker * limitations under the License.
20*35238bceSAndroid Build Coastguard Worker *
21*35238bceSAndroid Build Coastguard Worker *//*!
22*35238bceSAndroid Build Coastguard Worker * \file
23*35238bceSAndroid Build Coastguard Worker * \brief Test case result models.
24*35238bceSAndroid Build Coastguard Worker *//*--------------------------------------------------------------------*/
25*35238bceSAndroid Build Coastguard Worker
26*35238bceSAndroid Build Coastguard Worker #include "xeDefs.hpp"
27*35238bceSAndroid Build Coastguard Worker #include "xeTestCase.hpp"
28*35238bceSAndroid Build Coastguard Worker
29*35238bceSAndroid Build Coastguard Worker #include <string>
30*35238bceSAndroid Build Coastguard Worker #include <vector>
31*35238bceSAndroid Build Coastguard Worker #include <ostream>
32*35238bceSAndroid Build Coastguard Worker
33*35238bceSAndroid Build Coastguard Worker namespace xe
34*35238bceSAndroid Build Coastguard Worker {
35*35238bceSAndroid Build Coastguard Worker
36*35238bceSAndroid Build Coastguard Worker enum TestStatusCode
37*35238bceSAndroid Build Coastguard Worker {
38*35238bceSAndroid Build Coastguard Worker TESTSTATUSCODE_PASS, //!< Test case passed.
39*35238bceSAndroid Build Coastguard Worker TESTSTATUSCODE_FAIL, //!< Test case failed (not passed).
40*35238bceSAndroid Build Coastguard Worker TESTSTATUSCODE_QUALITY_WARNING, //!< Result within specification, but suspicious quality wise
41*35238bceSAndroid Build Coastguard Worker TESTSTATUSCODE_COMPATIBILITY_WARNING, //!< Result within specification, but likely to cause fragmentation
42*35238bceSAndroid Build Coastguard Worker TESTSTATUSCODE_PENDING, //!< Not yet started.
43*35238bceSAndroid Build Coastguard Worker TESTSTATUSCODE_RUNNING, //!< Currently running (not stored in database).
44*35238bceSAndroid Build Coastguard Worker TESTSTATUSCODE_NOT_SUPPORTED, //!< Some feature was not supported in the implementation.
45*35238bceSAndroid Build Coastguard Worker TESTSTATUSCODE_RESOURCE_ERROR, //!< A resource error has occurred.
46*35238bceSAndroid Build Coastguard Worker TESTSTATUSCODE_INTERNAL_ERROR, //!< An internal error has occurred.
47*35238bceSAndroid Build Coastguard Worker TESTSTATUSCODE_CANCELED, //!< User canceled the execution
48*35238bceSAndroid Build Coastguard Worker TESTSTATUSCODE_TIMEOUT, //!< Test was killed because of watch dog timeout.
49*35238bceSAndroid Build Coastguard Worker TESTSTATUSCODE_CRASH, //!< Test executable crashed before finishing the test.
50*35238bceSAndroid Build Coastguard Worker TESTSTATUSCODE_DISABLED, //!< Test case disabled (for current target)
51*35238bceSAndroid Build Coastguard Worker TESTSTATUSCODE_TERMINATED, //!< Terminated for other reason.
52*35238bceSAndroid Build Coastguard Worker TESTSTATUSCODE_WAIVER, //!< Test case waived.
53*35238bceSAndroid Build Coastguard Worker
54*35238bceSAndroid Build Coastguard Worker TESTSTATUSCODE_LAST
55*35238bceSAndroid Build Coastguard Worker };
56*35238bceSAndroid Build Coastguard Worker
57*35238bceSAndroid Build Coastguard Worker const char *getTestStatusCodeName(TestStatusCode statusCode);
58*35238bceSAndroid Build Coastguard Worker
59*35238bceSAndroid Build Coastguard Worker namespace ri
60*35238bceSAndroid Build Coastguard Worker {
61*35238bceSAndroid Build Coastguard Worker
62*35238bceSAndroid Build Coastguard Worker class Item;
63*35238bceSAndroid Build Coastguard Worker class Result;
64*35238bceSAndroid Build Coastguard Worker class Text;
65*35238bceSAndroid Build Coastguard Worker class Number;
66*35238bceSAndroid Build Coastguard Worker class Image;
67*35238bceSAndroid Build Coastguard Worker class ImageSet;
68*35238bceSAndroid Build Coastguard Worker class VertexShader;
69*35238bceSAndroid Build Coastguard Worker class FragmentShader;
70*35238bceSAndroid Build Coastguard Worker class ShaderProgram;
71*35238bceSAndroid Build Coastguard Worker class ShaderSource;
72*35238bceSAndroid Build Coastguard Worker class InfoLog;
73*35238bceSAndroid Build Coastguard Worker class EglConfig;
74*35238bceSAndroid Build Coastguard Worker class EglConfigSet;
75*35238bceSAndroid Build Coastguard Worker class Section;
76*35238bceSAndroid Build Coastguard Worker class KernelSource;
77*35238bceSAndroid Build Coastguard Worker class CompileInfo;
78*35238bceSAndroid Build Coastguard Worker class SampleList;
79*35238bceSAndroid Build Coastguard Worker class SampleInfo;
80*35238bceSAndroid Build Coastguard Worker class ValueInfo;
81*35238bceSAndroid Build Coastguard Worker class Sample;
82*35238bceSAndroid Build Coastguard Worker class SampleValue;
83*35238bceSAndroid Build Coastguard Worker
84*35238bceSAndroid Build Coastguard Worker // \todo [2014-02-28 pyry] Make List<T> for items that have only specific subitems.
85*35238bceSAndroid Build Coastguard Worker
86*35238bceSAndroid Build Coastguard Worker class List
87*35238bceSAndroid Build Coastguard Worker {
88*35238bceSAndroid Build Coastguard Worker public:
89*35238bceSAndroid Build Coastguard Worker List(void);
90*35238bceSAndroid Build Coastguard Worker ~List(void);
91*35238bceSAndroid Build Coastguard Worker
getNumItems(void) const92*35238bceSAndroid Build Coastguard Worker int getNumItems(void) const
93*35238bceSAndroid Build Coastguard Worker {
94*35238bceSAndroid Build Coastguard Worker return (int)m_items.size();
95*35238bceSAndroid Build Coastguard Worker }
getItem(int ndx) const96*35238bceSAndroid Build Coastguard Worker const Item &getItem(int ndx) const
97*35238bceSAndroid Build Coastguard Worker {
98*35238bceSAndroid Build Coastguard Worker return *m_items[ndx];
99*35238bceSAndroid Build Coastguard Worker }
getItem(int ndx)100*35238bceSAndroid Build Coastguard Worker Item &getItem(int ndx)
101*35238bceSAndroid Build Coastguard Worker {
102*35238bceSAndroid Build Coastguard Worker return *m_items[ndx];
103*35238bceSAndroid Build Coastguard Worker }
104*35238bceSAndroid Build Coastguard Worker
105*35238bceSAndroid Build Coastguard Worker template <typename T>
106*35238bceSAndroid Build Coastguard Worker T *allocItem(void);
107*35238bceSAndroid Build Coastguard Worker
108*35238bceSAndroid Build Coastguard Worker private:
109*35238bceSAndroid Build Coastguard Worker std::vector<Item *> m_items;
110*35238bceSAndroid Build Coastguard Worker };
111*35238bceSAndroid Build Coastguard Worker
112*35238bceSAndroid Build Coastguard Worker template <typename T>
allocItem(void)113*35238bceSAndroid Build Coastguard Worker T *List::allocItem(void)
114*35238bceSAndroid Build Coastguard Worker {
115*35238bceSAndroid Build Coastguard Worker m_items.reserve(m_items.size() + 1);
116*35238bceSAndroid Build Coastguard Worker T *item = new T();
117*35238bceSAndroid Build Coastguard Worker m_items.push_back(static_cast<ri::Item *>(item));
118*35238bceSAndroid Build Coastguard Worker return item;
119*35238bceSAndroid Build Coastguard Worker }
120*35238bceSAndroid Build Coastguard Worker
121*35238bceSAndroid Build Coastguard Worker } // namespace ri
122*35238bceSAndroid Build Coastguard Worker
123*35238bceSAndroid Build Coastguard Worker class TestCaseResultHeader
124*35238bceSAndroid Build Coastguard Worker {
125*35238bceSAndroid Build Coastguard Worker public:
TestCaseResultHeader(void)126*35238bceSAndroid Build Coastguard Worker TestCaseResultHeader(void) : caseType(TESTCASETYPE_LAST), statusCode(TESTSTATUSCODE_LAST)
127*35238bceSAndroid Build Coastguard Worker {
128*35238bceSAndroid Build Coastguard Worker }
129*35238bceSAndroid Build Coastguard Worker
130*35238bceSAndroid Build Coastguard Worker std::string caseVersion; //!< Test case version.
131*35238bceSAndroid Build Coastguard Worker std::string casePath; //!< Full test case path.
132*35238bceSAndroid Build Coastguard Worker TestCaseType caseType; //!< Test case type.
133*35238bceSAndroid Build Coastguard Worker TestStatusCode statusCode; //!< Test status code.
134*35238bceSAndroid Build Coastguard Worker std::string statusDetails; //!< Status description.
135*35238bceSAndroid Build Coastguard Worker };
136*35238bceSAndroid Build Coastguard Worker
137*35238bceSAndroid Build Coastguard Worker class TestCaseResult : public TestCaseResultHeader
138*35238bceSAndroid Build Coastguard Worker {
139*35238bceSAndroid Build Coastguard Worker public:
140*35238bceSAndroid Build Coastguard Worker ri::List resultItems; //!< Test log items.
141*35238bceSAndroid Build Coastguard Worker };
142*35238bceSAndroid Build Coastguard Worker
143*35238bceSAndroid Build Coastguard Worker // Result items.
144*35238bceSAndroid Build Coastguard Worker namespace ri
145*35238bceSAndroid Build Coastguard Worker {
146*35238bceSAndroid Build Coastguard Worker
147*35238bceSAndroid Build Coastguard Worker // Result item type.
148*35238bceSAndroid Build Coastguard Worker enum Type
149*35238bceSAndroid Build Coastguard Worker {
150*35238bceSAndroid Build Coastguard Worker TYPE_RESULT = 0,
151*35238bceSAndroid Build Coastguard Worker TYPE_TEXT,
152*35238bceSAndroid Build Coastguard Worker TYPE_NUMBER,
153*35238bceSAndroid Build Coastguard Worker TYPE_IMAGE,
154*35238bceSAndroid Build Coastguard Worker TYPE_IMAGESET,
155*35238bceSAndroid Build Coastguard Worker TYPE_SHADER,
156*35238bceSAndroid Build Coastguard Worker TYPE_SHADERPROGRAM,
157*35238bceSAndroid Build Coastguard Worker TYPE_SHADERSOURCE,
158*35238bceSAndroid Build Coastguard Worker TYPE_SPIRVSOURCE,
159*35238bceSAndroid Build Coastguard Worker TYPE_INFOLOG,
160*35238bceSAndroid Build Coastguard Worker TYPE_EGLCONFIG,
161*35238bceSAndroid Build Coastguard Worker TYPE_EGLCONFIGSET,
162*35238bceSAndroid Build Coastguard Worker TYPE_SECTION,
163*35238bceSAndroid Build Coastguard Worker TYPE_KERNELSOURCE,
164*35238bceSAndroid Build Coastguard Worker TYPE_COMPILEINFO,
165*35238bceSAndroid Build Coastguard Worker TYPE_SAMPLELIST,
166*35238bceSAndroid Build Coastguard Worker TYPE_SAMPLEINFO,
167*35238bceSAndroid Build Coastguard Worker TYPE_VALUEINFO,
168*35238bceSAndroid Build Coastguard Worker TYPE_SAMPLE,
169*35238bceSAndroid Build Coastguard Worker TYPE_SAMPLEVALUE,
170*35238bceSAndroid Build Coastguard Worker
171*35238bceSAndroid Build Coastguard Worker TYPE_LAST
172*35238bceSAndroid Build Coastguard Worker };
173*35238bceSAndroid Build Coastguard Worker
174*35238bceSAndroid Build Coastguard Worker class NumericValue
175*35238bceSAndroid Build Coastguard Worker {
176*35238bceSAndroid Build Coastguard Worker public:
177*35238bceSAndroid Build Coastguard Worker enum Type
178*35238bceSAndroid Build Coastguard Worker {
179*35238bceSAndroid Build Coastguard Worker NUMVALTYPE_EMPTY = 0,
180*35238bceSAndroid Build Coastguard Worker NUMVALTYPE_INT64,
181*35238bceSAndroid Build Coastguard Worker NUMVALTYPE_FLOAT64,
182*35238bceSAndroid Build Coastguard Worker
183*35238bceSAndroid Build Coastguard Worker NUMVALTYPE_LAST
184*35238bceSAndroid Build Coastguard Worker };
185*35238bceSAndroid Build Coastguard Worker
NumericValue(void)186*35238bceSAndroid Build Coastguard Worker NumericValue(void) : m_type(NUMVALTYPE_EMPTY)
187*35238bceSAndroid Build Coastguard Worker {
188*35238bceSAndroid Build Coastguard Worker }
NumericValue(int64_t value)189*35238bceSAndroid Build Coastguard Worker NumericValue(int64_t value) : m_type(NUMVALTYPE_INT64)
190*35238bceSAndroid Build Coastguard Worker {
191*35238bceSAndroid Build Coastguard Worker m_value.int64 = value;
192*35238bceSAndroid Build Coastguard Worker }
NumericValue(double value)193*35238bceSAndroid Build Coastguard Worker NumericValue(double value) : m_type(NUMVALTYPE_FLOAT64)
194*35238bceSAndroid Build Coastguard Worker {
195*35238bceSAndroid Build Coastguard Worker m_value.float64 = value;
196*35238bceSAndroid Build Coastguard Worker }
197*35238bceSAndroid Build Coastguard Worker
getType(void) const198*35238bceSAndroid Build Coastguard Worker Type getType(void) const
199*35238bceSAndroid Build Coastguard Worker {
200*35238bceSAndroid Build Coastguard Worker return m_type;
201*35238bceSAndroid Build Coastguard Worker }
getInt64(void) const202*35238bceSAndroid Build Coastguard Worker int64_t getInt64(void) const
203*35238bceSAndroid Build Coastguard Worker {
204*35238bceSAndroid Build Coastguard Worker DE_ASSERT(getType() == NUMVALTYPE_INT64);
205*35238bceSAndroid Build Coastguard Worker return m_value.int64;
206*35238bceSAndroid Build Coastguard Worker }
getFloat64(void) const207*35238bceSAndroid Build Coastguard Worker double getFloat64(void) const
208*35238bceSAndroid Build Coastguard Worker {
209*35238bceSAndroid Build Coastguard Worker DE_ASSERT(getType() == NUMVALTYPE_FLOAT64);
210*35238bceSAndroid Build Coastguard Worker return m_value.float64;
211*35238bceSAndroid Build Coastguard Worker }
212*35238bceSAndroid Build Coastguard Worker
213*35238bceSAndroid Build Coastguard Worker private:
214*35238bceSAndroid Build Coastguard Worker Type m_type;
215*35238bceSAndroid Build Coastguard Worker union
216*35238bceSAndroid Build Coastguard Worker {
217*35238bceSAndroid Build Coastguard Worker int64_t int64;
218*35238bceSAndroid Build Coastguard Worker double float64;
219*35238bceSAndroid Build Coastguard Worker } m_value;
220*35238bceSAndroid Build Coastguard Worker };
221*35238bceSAndroid Build Coastguard Worker
222*35238bceSAndroid Build Coastguard Worker std::ostream &operator<<(std::ostream &str, const NumericValue &value);
223*35238bceSAndroid Build Coastguard Worker
224*35238bceSAndroid Build Coastguard Worker class Item
225*35238bceSAndroid Build Coastguard Worker {
226*35238bceSAndroid Build Coastguard Worker public:
~Item(void)227*35238bceSAndroid Build Coastguard Worker virtual ~Item(void)
228*35238bceSAndroid Build Coastguard Worker {
229*35238bceSAndroid Build Coastguard Worker }
230*35238bceSAndroid Build Coastguard Worker
getType(void) const231*35238bceSAndroid Build Coastguard Worker Type getType(void) const
232*35238bceSAndroid Build Coastguard Worker {
233*35238bceSAndroid Build Coastguard Worker return m_type;
234*35238bceSAndroid Build Coastguard Worker }
235*35238bceSAndroid Build Coastguard Worker
236*35238bceSAndroid Build Coastguard Worker protected:
Item(Type type)237*35238bceSAndroid Build Coastguard Worker Item(Type type) : m_type(type)
238*35238bceSAndroid Build Coastguard Worker {
239*35238bceSAndroid Build Coastguard Worker }
240*35238bceSAndroid Build Coastguard Worker
241*35238bceSAndroid Build Coastguard Worker private:
242*35238bceSAndroid Build Coastguard Worker Item(const Item &other);
243*35238bceSAndroid Build Coastguard Worker Item &operator=(const Item &other);
244*35238bceSAndroid Build Coastguard Worker
245*35238bceSAndroid Build Coastguard Worker Type m_type;
246*35238bceSAndroid Build Coastguard Worker };
247*35238bceSAndroid Build Coastguard Worker
248*35238bceSAndroid Build Coastguard Worker class Result : public Item
249*35238bceSAndroid Build Coastguard Worker {
250*35238bceSAndroid Build Coastguard Worker public:
Result(void)251*35238bceSAndroid Build Coastguard Worker Result(void) : Item(TYPE_RESULT), statusCode(TESTSTATUSCODE_LAST)
252*35238bceSAndroid Build Coastguard Worker {
253*35238bceSAndroid Build Coastguard Worker }
~Result(void)254*35238bceSAndroid Build Coastguard Worker ~Result(void)
255*35238bceSAndroid Build Coastguard Worker {
256*35238bceSAndroid Build Coastguard Worker }
257*35238bceSAndroid Build Coastguard Worker
258*35238bceSAndroid Build Coastguard Worker TestStatusCode statusCode;
259*35238bceSAndroid Build Coastguard Worker std::string details;
260*35238bceSAndroid Build Coastguard Worker };
261*35238bceSAndroid Build Coastguard Worker
262*35238bceSAndroid Build Coastguard Worker class Text : public Item
263*35238bceSAndroid Build Coastguard Worker {
264*35238bceSAndroid Build Coastguard Worker public:
Text(void)265*35238bceSAndroid Build Coastguard Worker Text(void) : Item(TYPE_TEXT)
266*35238bceSAndroid Build Coastguard Worker {
267*35238bceSAndroid Build Coastguard Worker }
~Text(void)268*35238bceSAndroid Build Coastguard Worker ~Text(void)
269*35238bceSAndroid Build Coastguard Worker {
270*35238bceSAndroid Build Coastguard Worker }
271*35238bceSAndroid Build Coastguard Worker
272*35238bceSAndroid Build Coastguard Worker std::string text;
273*35238bceSAndroid Build Coastguard Worker };
274*35238bceSAndroid Build Coastguard Worker
275*35238bceSAndroid Build Coastguard Worker class Number : public Item
276*35238bceSAndroid Build Coastguard Worker {
277*35238bceSAndroid Build Coastguard Worker public:
Number(void)278*35238bceSAndroid Build Coastguard Worker Number(void) : Item(TYPE_NUMBER)
279*35238bceSAndroid Build Coastguard Worker {
280*35238bceSAndroid Build Coastguard Worker }
~Number(void)281*35238bceSAndroid Build Coastguard Worker ~Number(void)
282*35238bceSAndroid Build Coastguard Worker {
283*35238bceSAndroid Build Coastguard Worker }
284*35238bceSAndroid Build Coastguard Worker
285*35238bceSAndroid Build Coastguard Worker std::string name;
286*35238bceSAndroid Build Coastguard Worker std::string description;
287*35238bceSAndroid Build Coastguard Worker std::string unit;
288*35238bceSAndroid Build Coastguard Worker std::string tag;
289*35238bceSAndroid Build Coastguard Worker NumericValue value;
290*35238bceSAndroid Build Coastguard Worker };
291*35238bceSAndroid Build Coastguard Worker
292*35238bceSAndroid Build Coastguard Worker class Image : public Item
293*35238bceSAndroid Build Coastguard Worker {
294*35238bceSAndroid Build Coastguard Worker public:
295*35238bceSAndroid Build Coastguard Worker enum Format
296*35238bceSAndroid Build Coastguard Worker {
297*35238bceSAndroid Build Coastguard Worker FORMAT_RGB888,
298*35238bceSAndroid Build Coastguard Worker FORMAT_RGBA8888,
299*35238bceSAndroid Build Coastguard Worker
300*35238bceSAndroid Build Coastguard Worker FORMAT_LAST
301*35238bceSAndroid Build Coastguard Worker };
302*35238bceSAndroid Build Coastguard Worker
303*35238bceSAndroid Build Coastguard Worker enum Compression
304*35238bceSAndroid Build Coastguard Worker {
305*35238bceSAndroid Build Coastguard Worker COMPRESSION_NONE = 0,
306*35238bceSAndroid Build Coastguard Worker COMPRESSION_PNG,
307*35238bceSAndroid Build Coastguard Worker
308*35238bceSAndroid Build Coastguard Worker COMPRESSION_LAST
309*35238bceSAndroid Build Coastguard Worker };
310*35238bceSAndroid Build Coastguard Worker
Image(void)311*35238bceSAndroid Build Coastguard Worker Image(void) : Item(TYPE_IMAGE), width(0), height(0), format(FORMAT_LAST), compression(COMPRESSION_LAST)
312*35238bceSAndroid Build Coastguard Worker {
313*35238bceSAndroid Build Coastguard Worker }
~Image(void)314*35238bceSAndroid Build Coastguard Worker ~Image(void)
315*35238bceSAndroid Build Coastguard Worker {
316*35238bceSAndroid Build Coastguard Worker }
317*35238bceSAndroid Build Coastguard Worker
318*35238bceSAndroid Build Coastguard Worker std::string name;
319*35238bceSAndroid Build Coastguard Worker std::string description;
320*35238bceSAndroid Build Coastguard Worker int width;
321*35238bceSAndroid Build Coastguard Worker int height;
322*35238bceSAndroid Build Coastguard Worker Format format;
323*35238bceSAndroid Build Coastguard Worker Compression compression;
324*35238bceSAndroid Build Coastguard Worker std::vector<uint8_t> data;
325*35238bceSAndroid Build Coastguard Worker };
326*35238bceSAndroid Build Coastguard Worker
327*35238bceSAndroid Build Coastguard Worker class ImageSet : public Item
328*35238bceSAndroid Build Coastguard Worker {
329*35238bceSAndroid Build Coastguard Worker public:
ImageSet(void)330*35238bceSAndroid Build Coastguard Worker ImageSet(void) : Item(TYPE_IMAGESET)
331*35238bceSAndroid Build Coastguard Worker {
332*35238bceSAndroid Build Coastguard Worker }
~ImageSet(void)333*35238bceSAndroid Build Coastguard Worker ~ImageSet(void)
334*35238bceSAndroid Build Coastguard Worker {
335*35238bceSAndroid Build Coastguard Worker }
336*35238bceSAndroid Build Coastguard Worker
337*35238bceSAndroid Build Coastguard Worker std::string name;
338*35238bceSAndroid Build Coastguard Worker std::string description;
339*35238bceSAndroid Build Coastguard Worker List images;
340*35238bceSAndroid Build Coastguard Worker };
341*35238bceSAndroid Build Coastguard Worker
342*35238bceSAndroid Build Coastguard Worker class ShaderSource : public Item
343*35238bceSAndroid Build Coastguard Worker {
344*35238bceSAndroid Build Coastguard Worker public:
ShaderSource(void)345*35238bceSAndroid Build Coastguard Worker ShaderSource(void) : Item(TYPE_SHADERSOURCE)
346*35238bceSAndroid Build Coastguard Worker {
347*35238bceSAndroid Build Coastguard Worker }
~ShaderSource(void)348*35238bceSAndroid Build Coastguard Worker ~ShaderSource(void)
349*35238bceSAndroid Build Coastguard Worker {
350*35238bceSAndroid Build Coastguard Worker }
351*35238bceSAndroid Build Coastguard Worker
352*35238bceSAndroid Build Coastguard Worker std::string source;
353*35238bceSAndroid Build Coastguard Worker };
354*35238bceSAndroid Build Coastguard Worker
355*35238bceSAndroid Build Coastguard Worker class SpirVSource : public Item
356*35238bceSAndroid Build Coastguard Worker {
357*35238bceSAndroid Build Coastguard Worker public:
SpirVSource(void)358*35238bceSAndroid Build Coastguard Worker SpirVSource(void) : Item(TYPE_SPIRVSOURCE)
359*35238bceSAndroid Build Coastguard Worker {
360*35238bceSAndroid Build Coastguard Worker }
~SpirVSource(void)361*35238bceSAndroid Build Coastguard Worker ~SpirVSource(void)
362*35238bceSAndroid Build Coastguard Worker {
363*35238bceSAndroid Build Coastguard Worker }
364*35238bceSAndroid Build Coastguard Worker
365*35238bceSAndroid Build Coastguard Worker std::string source;
366*35238bceSAndroid Build Coastguard Worker };
367*35238bceSAndroid Build Coastguard Worker
368*35238bceSAndroid Build Coastguard Worker class InfoLog : public Item
369*35238bceSAndroid Build Coastguard Worker {
370*35238bceSAndroid Build Coastguard Worker public:
InfoLog(void)371*35238bceSAndroid Build Coastguard Worker InfoLog(void) : Item(TYPE_INFOLOG)
372*35238bceSAndroid Build Coastguard Worker {
373*35238bceSAndroid Build Coastguard Worker }
~InfoLog(void)374*35238bceSAndroid Build Coastguard Worker ~InfoLog(void)
375*35238bceSAndroid Build Coastguard Worker {
376*35238bceSAndroid Build Coastguard Worker }
377*35238bceSAndroid Build Coastguard Worker
378*35238bceSAndroid Build Coastguard Worker std::string log;
379*35238bceSAndroid Build Coastguard Worker };
380*35238bceSAndroid Build Coastguard Worker
381*35238bceSAndroid Build Coastguard Worker class Shader : public Item
382*35238bceSAndroid Build Coastguard Worker {
383*35238bceSAndroid Build Coastguard Worker public:
384*35238bceSAndroid Build Coastguard Worker enum ShaderType
385*35238bceSAndroid Build Coastguard Worker {
386*35238bceSAndroid Build Coastguard Worker SHADERTYPE_VERTEX = 0,
387*35238bceSAndroid Build Coastguard Worker SHADERTYPE_FRAGMENT,
388*35238bceSAndroid Build Coastguard Worker SHADERTYPE_GEOMETRY,
389*35238bceSAndroid Build Coastguard Worker SHADERTYPE_TESS_CONTROL,
390*35238bceSAndroid Build Coastguard Worker SHADERTYPE_TESS_EVALUATION,
391*35238bceSAndroid Build Coastguard Worker SHADERTYPE_COMPUTE,
392*35238bceSAndroid Build Coastguard Worker SHADERTYPE_RAYGEN,
393*35238bceSAndroid Build Coastguard Worker SHADERTYPE_ANY_HIT,
394*35238bceSAndroid Build Coastguard Worker SHADERTYPE_CLOSEST_HIT,
395*35238bceSAndroid Build Coastguard Worker SHADERTYPE_MISS,
396*35238bceSAndroid Build Coastguard Worker SHADERTYPE_INTERSECTION,
397*35238bceSAndroid Build Coastguard Worker SHADERTYPE_CALLABLE,
398*35238bceSAndroid Build Coastguard Worker SHADERTYPE_TASK,
399*35238bceSAndroid Build Coastguard Worker SHADERTYPE_MESH,
400*35238bceSAndroid Build Coastguard Worker
401*35238bceSAndroid Build Coastguard Worker SHADERTYPE_LAST
402*35238bceSAndroid Build Coastguard Worker };
403*35238bceSAndroid Build Coastguard Worker
Shader(void)404*35238bceSAndroid Build Coastguard Worker Shader(void) : Item(TYPE_SHADER), shaderType(SHADERTYPE_LAST), compileStatus(false)
405*35238bceSAndroid Build Coastguard Worker {
406*35238bceSAndroid Build Coastguard Worker }
~Shader(void)407*35238bceSAndroid Build Coastguard Worker ~Shader(void)
408*35238bceSAndroid Build Coastguard Worker {
409*35238bceSAndroid Build Coastguard Worker }
410*35238bceSAndroid Build Coastguard Worker
411*35238bceSAndroid Build Coastguard Worker ShaderType shaderType;
412*35238bceSAndroid Build Coastguard Worker bool compileStatus;
413*35238bceSAndroid Build Coastguard Worker ShaderSource source;
414*35238bceSAndroid Build Coastguard Worker InfoLog infoLog;
415*35238bceSAndroid Build Coastguard Worker };
416*35238bceSAndroid Build Coastguard Worker
417*35238bceSAndroid Build Coastguard Worker class ShaderProgram : public Item
418*35238bceSAndroid Build Coastguard Worker {
419*35238bceSAndroid Build Coastguard Worker public:
ShaderProgram(void)420*35238bceSAndroid Build Coastguard Worker ShaderProgram(void) : Item(TYPE_SHADERPROGRAM), linkStatus(false)
421*35238bceSAndroid Build Coastguard Worker {
422*35238bceSAndroid Build Coastguard Worker }
~ShaderProgram(void)423*35238bceSAndroid Build Coastguard Worker ~ShaderProgram(void)
424*35238bceSAndroid Build Coastguard Worker {
425*35238bceSAndroid Build Coastguard Worker }
426*35238bceSAndroid Build Coastguard Worker
427*35238bceSAndroid Build Coastguard Worker List shaders;
428*35238bceSAndroid Build Coastguard Worker bool linkStatus;
429*35238bceSAndroid Build Coastguard Worker InfoLog linkInfoLog;
430*35238bceSAndroid Build Coastguard Worker };
431*35238bceSAndroid Build Coastguard Worker
432*35238bceSAndroid Build Coastguard Worker class EglConfig : public Item
433*35238bceSAndroid Build Coastguard Worker {
434*35238bceSAndroid Build Coastguard Worker public:
435*35238bceSAndroid Build Coastguard Worker EglConfig(void);
~EglConfig(void)436*35238bceSAndroid Build Coastguard Worker ~EglConfig(void)
437*35238bceSAndroid Build Coastguard Worker {
438*35238bceSAndroid Build Coastguard Worker }
439*35238bceSAndroid Build Coastguard Worker
440*35238bceSAndroid Build Coastguard Worker int bufferSize;
441*35238bceSAndroid Build Coastguard Worker int redSize;
442*35238bceSAndroid Build Coastguard Worker int greenSize;
443*35238bceSAndroid Build Coastguard Worker int blueSize;
444*35238bceSAndroid Build Coastguard Worker int luminanceSize;
445*35238bceSAndroid Build Coastguard Worker int alphaSize;
446*35238bceSAndroid Build Coastguard Worker int alphaMaskSize;
447*35238bceSAndroid Build Coastguard Worker bool bindToTextureRGB;
448*35238bceSAndroid Build Coastguard Worker bool bindToTextureRGBA;
449*35238bceSAndroid Build Coastguard Worker std::string colorBufferType;
450*35238bceSAndroid Build Coastguard Worker std::string configCaveat;
451*35238bceSAndroid Build Coastguard Worker int configID;
452*35238bceSAndroid Build Coastguard Worker std::string conformant;
453*35238bceSAndroid Build Coastguard Worker int depthSize;
454*35238bceSAndroid Build Coastguard Worker int level;
455*35238bceSAndroid Build Coastguard Worker int maxPBufferWidth;
456*35238bceSAndroid Build Coastguard Worker int maxPBufferHeight;
457*35238bceSAndroid Build Coastguard Worker int maxPBufferPixels;
458*35238bceSAndroid Build Coastguard Worker int maxSwapInterval;
459*35238bceSAndroid Build Coastguard Worker int minSwapInterval;
460*35238bceSAndroid Build Coastguard Worker bool nativeRenderable;
461*35238bceSAndroid Build Coastguard Worker std::string renderableType;
462*35238bceSAndroid Build Coastguard Worker int sampleBuffers;
463*35238bceSAndroid Build Coastguard Worker int samples;
464*35238bceSAndroid Build Coastguard Worker int stencilSize;
465*35238bceSAndroid Build Coastguard Worker std::string surfaceTypes;
466*35238bceSAndroid Build Coastguard Worker std::string transparentType;
467*35238bceSAndroid Build Coastguard Worker int transparentRedValue;
468*35238bceSAndroid Build Coastguard Worker int transparentGreenValue;
469*35238bceSAndroid Build Coastguard Worker int transparentBlueValue;
470*35238bceSAndroid Build Coastguard Worker };
471*35238bceSAndroid Build Coastguard Worker
EglConfig(void)472*35238bceSAndroid Build Coastguard Worker inline EglConfig::EglConfig(void)
473*35238bceSAndroid Build Coastguard Worker : Item(TYPE_EGLCONFIG)
474*35238bceSAndroid Build Coastguard Worker , bufferSize(0)
475*35238bceSAndroid Build Coastguard Worker , redSize(0)
476*35238bceSAndroid Build Coastguard Worker , greenSize(0)
477*35238bceSAndroid Build Coastguard Worker , blueSize(0)
478*35238bceSAndroid Build Coastguard Worker , luminanceSize(0)
479*35238bceSAndroid Build Coastguard Worker , alphaSize(0)
480*35238bceSAndroid Build Coastguard Worker , alphaMaskSize(0)
481*35238bceSAndroid Build Coastguard Worker , bindToTextureRGB(false)
482*35238bceSAndroid Build Coastguard Worker , bindToTextureRGBA(false)
483*35238bceSAndroid Build Coastguard Worker , configID(0)
484*35238bceSAndroid Build Coastguard Worker , depthSize(0)
485*35238bceSAndroid Build Coastguard Worker , level(0)
486*35238bceSAndroid Build Coastguard Worker , maxPBufferWidth(0)
487*35238bceSAndroid Build Coastguard Worker , maxPBufferHeight(0)
488*35238bceSAndroid Build Coastguard Worker , maxPBufferPixels(0)
489*35238bceSAndroid Build Coastguard Worker , maxSwapInterval(0)
490*35238bceSAndroid Build Coastguard Worker , minSwapInterval(0)
491*35238bceSAndroid Build Coastguard Worker , nativeRenderable(false)
492*35238bceSAndroid Build Coastguard Worker , sampleBuffers(0)
493*35238bceSAndroid Build Coastguard Worker , samples(0)
494*35238bceSAndroid Build Coastguard Worker , stencilSize(0)
495*35238bceSAndroid Build Coastguard Worker , transparentRedValue(0)
496*35238bceSAndroid Build Coastguard Worker , transparentGreenValue(0)
497*35238bceSAndroid Build Coastguard Worker , transparentBlueValue(0)
498*35238bceSAndroid Build Coastguard Worker {
499*35238bceSAndroid Build Coastguard Worker }
500*35238bceSAndroid Build Coastguard Worker
501*35238bceSAndroid Build Coastguard Worker class EglConfigSet : public Item
502*35238bceSAndroid Build Coastguard Worker {
503*35238bceSAndroid Build Coastguard Worker public:
EglConfigSet(void)504*35238bceSAndroid Build Coastguard Worker EglConfigSet(void) : Item(TYPE_EGLCONFIGSET)
505*35238bceSAndroid Build Coastguard Worker {
506*35238bceSAndroid Build Coastguard Worker }
~EglConfigSet(void)507*35238bceSAndroid Build Coastguard Worker ~EglConfigSet(void)
508*35238bceSAndroid Build Coastguard Worker {
509*35238bceSAndroid Build Coastguard Worker }
510*35238bceSAndroid Build Coastguard Worker
511*35238bceSAndroid Build Coastguard Worker std::string name;
512*35238bceSAndroid Build Coastguard Worker std::string description;
513*35238bceSAndroid Build Coastguard Worker List configs;
514*35238bceSAndroid Build Coastguard Worker };
515*35238bceSAndroid Build Coastguard Worker
516*35238bceSAndroid Build Coastguard Worker class Section : public Item
517*35238bceSAndroid Build Coastguard Worker {
518*35238bceSAndroid Build Coastguard Worker public:
Section(void)519*35238bceSAndroid Build Coastguard Worker Section(void) : Item(TYPE_SECTION)
520*35238bceSAndroid Build Coastguard Worker {
521*35238bceSAndroid Build Coastguard Worker }
~Section(void)522*35238bceSAndroid Build Coastguard Worker ~Section(void)
523*35238bceSAndroid Build Coastguard Worker {
524*35238bceSAndroid Build Coastguard Worker }
525*35238bceSAndroid Build Coastguard Worker
526*35238bceSAndroid Build Coastguard Worker std::string name;
527*35238bceSAndroid Build Coastguard Worker std::string description;
528*35238bceSAndroid Build Coastguard Worker List items;
529*35238bceSAndroid Build Coastguard Worker };
530*35238bceSAndroid Build Coastguard Worker
531*35238bceSAndroid Build Coastguard Worker class KernelSource : public Item
532*35238bceSAndroid Build Coastguard Worker {
533*35238bceSAndroid Build Coastguard Worker public:
KernelSource(void)534*35238bceSAndroid Build Coastguard Worker KernelSource(void) : Item(TYPE_KERNELSOURCE)
535*35238bceSAndroid Build Coastguard Worker {
536*35238bceSAndroid Build Coastguard Worker }
~KernelSource(void)537*35238bceSAndroid Build Coastguard Worker ~KernelSource(void)
538*35238bceSAndroid Build Coastguard Worker {
539*35238bceSAndroid Build Coastguard Worker }
540*35238bceSAndroid Build Coastguard Worker
541*35238bceSAndroid Build Coastguard Worker std::string source;
542*35238bceSAndroid Build Coastguard Worker };
543*35238bceSAndroid Build Coastguard Worker
544*35238bceSAndroid Build Coastguard Worker class CompileInfo : public Item
545*35238bceSAndroid Build Coastguard Worker {
546*35238bceSAndroid Build Coastguard Worker public:
CompileInfo(void)547*35238bceSAndroid Build Coastguard Worker CompileInfo(void) : Item(TYPE_COMPILEINFO), compileStatus(false)
548*35238bceSAndroid Build Coastguard Worker {
549*35238bceSAndroid Build Coastguard Worker }
~CompileInfo(void)550*35238bceSAndroid Build Coastguard Worker ~CompileInfo(void)
551*35238bceSAndroid Build Coastguard Worker {
552*35238bceSAndroid Build Coastguard Worker }
553*35238bceSAndroid Build Coastguard Worker
554*35238bceSAndroid Build Coastguard Worker std::string name;
555*35238bceSAndroid Build Coastguard Worker std::string description;
556*35238bceSAndroid Build Coastguard Worker bool compileStatus;
557*35238bceSAndroid Build Coastguard Worker InfoLog infoLog;
558*35238bceSAndroid Build Coastguard Worker };
559*35238bceSAndroid Build Coastguard Worker
560*35238bceSAndroid Build Coastguard Worker class ValueInfo : public Item
561*35238bceSAndroid Build Coastguard Worker {
562*35238bceSAndroid Build Coastguard Worker public:
563*35238bceSAndroid Build Coastguard Worker enum ValueTag
564*35238bceSAndroid Build Coastguard Worker {
565*35238bceSAndroid Build Coastguard Worker VALUETAG_PREDICTOR,
566*35238bceSAndroid Build Coastguard Worker VALUETAG_RESPONSE,
567*35238bceSAndroid Build Coastguard Worker
568*35238bceSAndroid Build Coastguard Worker VALUETAG_LAST
569*35238bceSAndroid Build Coastguard Worker };
570*35238bceSAndroid Build Coastguard Worker
ValueInfo(void)571*35238bceSAndroid Build Coastguard Worker ValueInfo(void) : Item(TYPE_VALUEINFO), tag(VALUETAG_LAST)
572*35238bceSAndroid Build Coastguard Worker {
573*35238bceSAndroid Build Coastguard Worker }
~ValueInfo(void)574*35238bceSAndroid Build Coastguard Worker ~ValueInfo(void)
575*35238bceSAndroid Build Coastguard Worker {
576*35238bceSAndroid Build Coastguard Worker }
577*35238bceSAndroid Build Coastguard Worker
578*35238bceSAndroid Build Coastguard Worker std::string name;
579*35238bceSAndroid Build Coastguard Worker std::string description;
580*35238bceSAndroid Build Coastguard Worker std::string unit;
581*35238bceSAndroid Build Coastguard Worker ValueTag tag;
582*35238bceSAndroid Build Coastguard Worker };
583*35238bceSAndroid Build Coastguard Worker
584*35238bceSAndroid Build Coastguard Worker class SampleInfo : public Item
585*35238bceSAndroid Build Coastguard Worker {
586*35238bceSAndroid Build Coastguard Worker public:
SampleInfo(void)587*35238bceSAndroid Build Coastguard Worker SampleInfo(void) : Item(TYPE_SAMPLEINFO)
588*35238bceSAndroid Build Coastguard Worker {
589*35238bceSAndroid Build Coastguard Worker }
~SampleInfo(void)590*35238bceSAndroid Build Coastguard Worker ~SampleInfo(void)
591*35238bceSAndroid Build Coastguard Worker {
592*35238bceSAndroid Build Coastguard Worker }
593*35238bceSAndroid Build Coastguard Worker
594*35238bceSAndroid Build Coastguard Worker List valueInfos;
595*35238bceSAndroid Build Coastguard Worker };
596*35238bceSAndroid Build Coastguard Worker
597*35238bceSAndroid Build Coastguard Worker class SampleValue : public Item
598*35238bceSAndroid Build Coastguard Worker {
599*35238bceSAndroid Build Coastguard Worker public:
SampleValue(void)600*35238bceSAndroid Build Coastguard Worker SampleValue(void) : Item(TYPE_SAMPLEVALUE)
601*35238bceSAndroid Build Coastguard Worker {
602*35238bceSAndroid Build Coastguard Worker }
~SampleValue(void)603*35238bceSAndroid Build Coastguard Worker ~SampleValue(void)
604*35238bceSAndroid Build Coastguard Worker {
605*35238bceSAndroid Build Coastguard Worker }
606*35238bceSAndroid Build Coastguard Worker
607*35238bceSAndroid Build Coastguard Worker NumericValue value;
608*35238bceSAndroid Build Coastguard Worker };
609*35238bceSAndroid Build Coastguard Worker
610*35238bceSAndroid Build Coastguard Worker class Sample : public Item
611*35238bceSAndroid Build Coastguard Worker {
612*35238bceSAndroid Build Coastguard Worker public:
Sample(void)613*35238bceSAndroid Build Coastguard Worker Sample(void) : Item(TYPE_SAMPLE)
614*35238bceSAndroid Build Coastguard Worker {
615*35238bceSAndroid Build Coastguard Worker }
~Sample(void)616*35238bceSAndroid Build Coastguard Worker ~Sample(void)
617*35238bceSAndroid Build Coastguard Worker {
618*35238bceSAndroid Build Coastguard Worker }
619*35238bceSAndroid Build Coastguard Worker
620*35238bceSAndroid Build Coastguard Worker List values;
621*35238bceSAndroid Build Coastguard Worker };
622*35238bceSAndroid Build Coastguard Worker
623*35238bceSAndroid Build Coastguard Worker class SampleList : public Item
624*35238bceSAndroid Build Coastguard Worker {
625*35238bceSAndroid Build Coastguard Worker public:
SampleList(void)626*35238bceSAndroid Build Coastguard Worker SampleList(void) : Item(TYPE_SAMPLELIST)
627*35238bceSAndroid Build Coastguard Worker {
628*35238bceSAndroid Build Coastguard Worker }
~SampleList(void)629*35238bceSAndroid Build Coastguard Worker ~SampleList(void)
630*35238bceSAndroid Build Coastguard Worker {
631*35238bceSAndroid Build Coastguard Worker }
632*35238bceSAndroid Build Coastguard Worker
633*35238bceSAndroid Build Coastguard Worker std::string name;
634*35238bceSAndroid Build Coastguard Worker std::string description;
635*35238bceSAndroid Build Coastguard Worker SampleInfo sampleInfo;
636*35238bceSAndroid Build Coastguard Worker List samples;
637*35238bceSAndroid Build Coastguard Worker };
638*35238bceSAndroid Build Coastguard Worker
639*35238bceSAndroid Build Coastguard Worker } // namespace ri
640*35238bceSAndroid Build Coastguard Worker } // namespace xe
641*35238bceSAndroid Build Coastguard Worker
642*35238bceSAndroid Build Coastguard Worker #endif // _XETESTCASERESULT_HPP
643