Lines Matching defs:const

91 static const GLenum s_debugTypes[] =
104 static const GLenum s_debugSeverities[] =
114 const bool supportsES32 = glu::contextSupports(ctx.getRenderContext().getType(), glu::ApiType::es(3, 2));
125 const glu::ContextInfo& ctxInfo,
147 void call (DebugMessageTestContext& ctx) const;
183 void TestFunctionWrapper::call (DebugMessageTestContext& ctx) const
199 const GLenum type = s_debugTypes[typeNdx];
200 const GLenum severity = s_debugSeverities[severityNdx];
201 const string msg = string("Application generated message with type ") + glu::getDebugMessageTypeName(type)
263 const char* name;
264 const char* desc;
289 bool operator== (const MessageID& rhs) const { return source == rhs.source && type == rhs.type && id == rhs.id;}
290 bool operator!= (const MessageID& rhs) const { return source != rhs.source || type != rhs.type || id != rhs.id;}
291 bool operator< (const MessageID& rhs) const
297 std::ostream& operator<< (std::ostream& str, const MessageID &id)
310 MessageData (const MessageID& id_, GLenum severity_, const string& message_) : id(id_) , severity(severity_) , message(message_) {}
313 extern "C" typedef void GLW_APIENTRY DebugCallbackFunc(GLenum, GLenum, GLuint, GLenum, GLsizei, const char*, const void*);
320 const char* name,
321 const char* desc);
332 const qpTestResult result;
333 const string resultMessage;
334 const string logMessage;
336 VerificationResult (qpTestResult result_, const string& resultMessage_, const string& logMessage_)
341 virtual void callback (GLenum source, GLenum type, GLuint id, GLenum severity, const std::string& message);
344 VerificationResult verifyMessageCount (const MessageID& id, GLenum severity, int refCount, int resCount, bool messageEnabled) const;
347 void verifyMessage (const MessageData& message, GLenum source, GLenum type, GLuint id, GLenum severity);
348 void verifyMessage (const MessageData& message, GLenum source, GLenum type);
350 bool verifyMessageExists (const MessageData& message, GLenum source, GLenum type);
351 void verifyMessageGroup (const MessageData& message, GLenum source, GLenum type);
352 void verifyMessageString (const MessageData& message);
354 bool isDebugContext (void) const;
359 void BaseCase::callbackHandle (GLenum source, GLenum type, GLuint id, GLenum severity, GLsizei length, const char* message, const void* userParam)
364 BaseCase::BaseCase (Context& ctx, const char* name, const char* desc)
383 void BaseCase::callback (GLenum source, GLenum type, GLuint id, GLenum severity, const string& message)
392 BaseCase::VerificationResult BaseCase::verifyMessageCount (const MessageID& id, GLenum severity, int refCount, int resCount, bool messageEnabled) const
441 const bool isDeterministic = id.source == GL_DEBUG_SOURCE_APPLICATION ||
445 const bool canIgnore = id.source == GL_DEBUG_SOURCE_WINDOW_SYSTEM || id.source == GL_DEBUG_SOURCE_OTHER;
535 bool BaseCase::verifyMessageExists (const MessageData& message, GLenum source, GLenum type)
559 void BaseCase::verifyMessageGroup (const MessageData& message, GLenum source, GLenum type)
578 void BaseCase::verifyMessageString (const MessageData& message)
591 void BaseCase::verifyMessage (const MessageData& message, GLenum source, GLenum type)
600 void BaseCase::verifyMessage (const MessageData& message, GLenum source, GLenum type, GLuint id, GLenum severity)
625 bool BaseCase::isDebugContext (void) const
635 const char* name,
636 const char* desc,
645 virtual void callback (GLenum source, GLenum type, GLuint id, GLenum severity, const string& message);
647 const TestFunctionWrapper m_errorFunc;
652 const char* name,
653 const char* desc,
664 const glw::Functions& gl = m_context.getRenderContext().getFunctions();
696 void CallbackErrorCase::callback (GLenum source, GLenum type, GLuint id, GLenum severity, const string& message)
706 const char* name,
707 const char* desc,
716 const TestFunctionWrapper m_errorFunc;
721 const char* name,
722 const char* desc,
733 const glw::Functions& gl = m_context.getRenderContext().getFunctions();
756 const glw::Functions& gl = m_context.getRenderContext().getFunctions();
814 const char* name,
815 const char* desc,
825 const TestFunctionWrapper m_errorFunc;
829 const char* name,
830 const char* desc,
858 const glw::Functions& gl = m_context.getRenderContext().getFunctions();
861 const GLenum result = gl.getError();
886 const char* name,
887 const char* desc,
888 const vector<TestFunctionWrapper>& errorFuncs);
899 MessageFilter(GLenum source_, GLenum type_, GLenum severity_, const vector<GLuint>& ids_, bool enabled_) : source(source_), type(type_), severity(severity_), ids(ids_), enabled(enabled_) {}
908 virtual void callback (GLenum source, GLenum type, GLuint id, GLenum severity, const string& message);
910 vector<MessageData> genMessages (bool uselog, const string& desc);
912 vector<MessageFilter> genFilters (const vector<MessageData>& messages, const vector<MessageFilter>& initial, deUint32 seed, int iterations) const;
913 void applyFilters (const vector<MessageFilter>& filters) const;
914 bool isEnabled (const vector<MessageFilter>& filters, const MessageData& message) const;
916 void verify (const vector<MessageData>& refMessages,
917 const vector<MessageData>& filteredMessages,
918 const vector<MessageFilter>& filters);
920 const vector<TestFunctionWrapper> m_errorFuncs;
926 const char* name,
927 const char* desc,
928 const vector<TestFunctionWrapper>& errorFuncs)
939 const glw::Functions& gl = m_context.getRenderContext().getFunctions();
950 const vector<MessageData> refMessages = genMessages(true, "Reference run");
951 const MessageFilter baseFilter (GL_DONT_CARE, GL_DONT_CARE, GL_DONT_CARE, vector<GLuint>(), true);
952 const deUint32 baseSeed = deStringHash(getName()) ^ m_testCtx.getCommandLine().getBaseSeed();
953 const vector<MessageFilter> filters = genFilters(refMessages, vector<MessageFilter>(1, baseFilter), baseSeed, 4);
988 void FilterCase::callback (GLenum source, GLenum type, GLuint id, GLenum severity, const string& message)
994 vector<MessageData> FilterCase::genMessages (bool uselog, const string& desc)
1011 vector<FilterCase::MessageFilter> FilterCase::genFilters (const vector<MessageData>& messages, const vector<MessageFilter>& initial, deUint32 seed, int iterations) const
1025 const MessageData& msg = messages[ndx];
1035 const vector<MessageID> messageIds (tempMessageIds.begin(), tempMessageIds.end());
1036 const vector<GLenum> sources (tempSources.begin(), tempSources.end());
1037 const vector<GLenum> types (tempTypes.begin(), tempTypes.end());
1038 const vector<GLenum> severities (tempSeverities.begin(), tempSeverities.end());
1048 const GLenum source = sources[rng.getInt(0, int(sources.size()-1))];
1049 const bool enabled = rng.getBool();
1057 const GLenum type = types[rng.getUint32()%types.size()];
1058 const bool enabled = rng.getBool();
1066 const GLenum severity = severities[rng.getUint32()%severities.size()];
1067 const bool enabled = rng.getBool();
1075 const int start = rng.getInt(0, int(messageIds.size()));
1079 const MessageID& id = messageIds[(start+itr)%messageIds.size()];
1080 const bool enabled = rng.getBool();
1092 void FilterCase::applyFilters (const vector<MessageFilter>& filters) const
1095 const tcu::ScopedLogSection section (log, "", "Setting message filters");
1096 const glw::Functions& gl = m_context.getRenderContext().getFunctions();
1100 const MessageFilter& filter = filters[filterNdx];
1119 bool FilterCase::isEnabled (const vector<MessageFilter>& filters, const MessageData& message) const
1125 const MessageFilter& filter = filters[filterNdx];
1166 void FilterCase::verify (const vector<MessageData>& refMessages, const vector<MessageData>& resMessages, const vector<MessageFilter>& filters)
1176 const MessageData& msg = refMessages[refNdx];
1192 const MessageData& msg = resMessages[resNdx];
1208 const MessageID& id = itr->first;
1209 const GLenum severity = itr->second.severity;
1211 const int refCount = itr->second.refCount;
1212 const int resCount = itr->second.resCount;
1213 const bool enabled = isEnabled(filters, MessageData(id, severity, ""));
1231 const char* name,
1232 const char* desc,
1233 const vector<TestFunctionWrapper>& errorFuncs);
1240 const char* name,
1241 const char* desc,
1242 const vector<TestFunctionWrapper>& errorFuncs)
1248 vector<T> join(const vector<T>& a, const vector<T>&b)
1262 const glw::Functions& gl = m_context.getRenderContext().getFunctions();
1276 const vector<MessageData> refMessages = genMessages(true, "Reference run");
1277 const deUint32 baseSeed = deStringHash(getName()) ^ m_testCtx.getCommandLine().getBaseSeed();
1278 const MessageFilter baseFilter (GL_DONT_CARE, GL_DONT_CARE, GL_DONT_CARE, vector<GLuint>(), true);
1279 const vector<MessageFilter> filter0 = genFilters(refMessages, vector<MessageFilter>(1, baseFilter), baseSeed, 4);
1291 const vector<MessageFilter> filter1base = genFilters(refMessages, vector<MessageFilter>(), baseSeed ^ 0xDEADBEEF, 4);
1292 const vector<MessageFilter> filter1full = join(filter0, filter1base);
1305 const vector<MessageFilter> filter2base = genFilters(refMessages, vector<MessageFilter>(), baseSeed ^ 0x43211234, 4);
1306 const vector<MessageFilter> filter2full = join(filter1full, filter2base);
1353 const char* name,
1354 const char* desc);
1360 virtual void callback (GLenum source, GLenum type, GLuint id, GLenum severity, const string& message);
1366 const char* name,
1367 const char* desc)
1376 const glw::Functions& gl = m_context.getRenderContext().getFunctions();
1407 void GroupCase::callback (GLenum source, GLenum type, GLuint id, GLenum severity, const string& message)
1417 const char* name,
1418 const char* desc,
1419 const vector<TestFunctionWrapper>& errorFuncs,
1446 virtual void callback (glw::GLenum source, glw::GLenum type, glw::GLuint id, glw::GLenum severity, const std::string& message);
1450 const vector<TestFunctionWrapper> m_errorFuncs;
1451 const bool m_useCallbacks;
1459 const char* name,
1460 const char* desc,
1461 const vector<TestFunctionWrapper>& errorFuncs,
1473 const glw::Functions& gl = m_context.getRenderContext().getFunctions();
1476 const int maxWait = 10000; // ms
1477 const int warnWait = 100;
1539 const VerifyState pass = verify(false);
1540 const int wait = de::max(50, waited>>2);
1593 void AsyncCase::callback (GLenum source, GLenum type, GLuint id, GLenum severity, const string& message)
1607 const glw::Functions& gl = m_context.getRenderContext().getFunctions();
1626 const de::ScopedLock lock(m_mutex); // Don't block during API call
1640 const de::ScopedLock lock(m_mutex);
1644 const MessageID& id = itr->first;
1646 const int refCount = itr->second.expected;
1647 const int resCount = itr->second.received;
1648 const bool enabled = true;
1669 const char* name,
1670 const char* desc,
1681 const char* name,
1682 const char* desc,
1693 const glw::Functions& gl = m_context.getRenderContext().getFunctions();
1694 const char* const msg = "This is a debug label";
1803 const glu::ContextInfo& ctxInfo,
1824 SyncLabelCase (Context& ctx, const char* name, const char* desc);
1828 SyncLabelCase::SyncLabelCase (Context& ctx, const char* name, const char* desc)
1837 const glw::Functions& gl = m_context.getRenderContext().getFunctions();
1838 const char* const msg = "This is a debug label";
1872 InitialLabelCase (Context& ctx, const char* name, const char* desc);
1876 InitialLabelCase::InitialLabelCase (Context& ctx, const char* name, const char* desc)
1885 const glw::Functions& gl = m_context.getRenderContext().getFunctions();
1899 const tcu::ScopedLogSection section(m_testCtx.getLog(), "Shader", "Shader object");
1916 const tcu::ScopedLogSection section(m_testCtx.getLog(), "Sync", "Sync object");
1942 ClearLabelCase (Context& ctx, const char* name, const char* desc);
1946 ClearLabelCase::ClearLabelCase (Context& ctx, const char* name, const char* desc)
1955 static const struct
1957 const char* description;
1966 const glw::Functions& gl = m_context.getRenderContext().getFunctions();
1968 const char* const msg = "This is a debug label";
1981 const tcu::ScopedLogSection section(m_testCtx.getLog(), "Shader", "Shader object");
2009 const tcu::ScopedLogSection section(m_testCtx.getLog(), "Sync", "Sync object");
2046 SpecifyWithLengthCase (Context& ctx, const char* name, const char* desc);
2050 SpecifyWithLengthCase::SpecifyWithLengthCase (Context& ctx, const char* name, const char* desc)
2059 const glw::Functions& gl = m_context.getRenderContext().getFunctions();
2061 const char* const msg = "This is a debug label";
2062 const char* const clipMsg = "This is a de";
2075 const tcu::ScopedLogSection section(m_testCtx.getLog(), "Shader", "Shader object");
2101 const tcu::ScopedLogSection section(m_testCtx.getLog(), "Sync", "Sync object");
2127 const tcu::ScopedLogSection section(m_testCtx.getLog(), "ZeroSized", "ZeroSized");
2156 BufferLimitedLabelCase (Context& ctx, const char* name, const char* desc);
2160 BufferLimitedLabelCase::BufferLimitedLabelCase (Context& ctx, const char* name, const char* desc)
2169 const glw::Functions& gl = m_context.getRenderContext().getFunctions();
2171 const char* const msg = "This is a debug label";
2184 const tcu::ScopedLogSection superSection(m_testCtx.getLog(), "Shader", "Shader object");
2191 const tcu::ScopedLogSection section(m_testCtx.getLog(), "QueryAll", "Query All");
2214 const tcu::ScopedLogSection section(m_testCtx.getLog(), "QueryAllNoSize", "Query all without size");
2238 const tcu::ScopedLogSection section(m_testCtx.getLog(), "QueryLess", "Query substring");
2261 const tcu::ScopedLogSection section(m_testCtx.getLog(), "QueryNone", "Query one character");
2280 const tcu::ScopedLogSection superSection(m_testCtx.getLog(), "Sync", "Sync object");
2287 const tcu::ScopedLogSection section(m_testCtx.getLog(), "QueryAll", "Query All");
2310 const tcu::ScopedLogSection section(m_testCtx.getLog(), "QueryAllNoSize", "Query all without size");
2334 const tcu::ScopedLogSection section(m_testCtx.getLog(), "QueryLess", "Query substring");
2357 const tcu::ScopedLogSection section(m_testCtx.getLog(), "QueryNone", "Query one character");
2385 LabelMaxSizeCase (Context& ctx, const char* name, const char* desc);
2389 LabelMaxSizeCase::LabelMaxSizeCase (Context& ctx, const char* name, const char* desc)
2398 const glw::Functions& gl = m_context.getRenderContext().getFunctions();
2429 const tcu::ScopedLogSection section (m_testCtx.getLog(), "Shader", "Shader object");
2466 const tcu::ScopedLogSection section (m_testCtx.getLog(), "Sync", "Sync object");
2512 LabelLengthCase (Context& ctx, const char* name, const char* desc);
2516 LabelLengthCase::LabelLengthCase (Context& ctx, const char* name, const char* desc)
2525 const glw::Functions& gl = m_context.getRenderContext().getFunctions();
2527 const char* const msg = "This is a debug label";
2539 const tcu::ScopedLogSection section(m_testCtx.getLog(), "Shader", "Shader object");
2567 const tcu::ScopedLogSection section(m_testCtx.getLog(), "Sync", "Sync object");
2605 const char* name,
2606 const char* description,
2613 const gls::StateQueryUtil::QueryType m_type;
2614 const int m_limit;
2615 const glw::GLenum m_target;
2619 const char* name,
2620 const char* description,
2655 const char* name,
2656 const char* description,
2663 const gls::StateQueryUtil::QueryType m_type;
2664 const glw::GLenum m_target;
2665 const InitialValue m_initial;
2669 const char* name,
2670 const char* description,
2722 const char* name,
2723 const char* description,
2729 const gls::StateQueryUtil::QueryType m_type;
2730 const glw::GLenum m_target;
2734 const char* name,
2735 const char* description,
2762 const char* name,
2763 const char* description,
2768 const gls::StateQueryUtil::QueryType m_type;
2772 const char* name,
2773 const char* description,
2790 const tcu::ScopedLogSection section(m_testCtx.getLog(), "Initial", "Initial");
2796 const tcu::ScopedLogSection section(m_testCtx.getLog(), "Scoped", "Scoped");
2807 extern "C" void GLW_APIENTRY emptyCallback(GLenum, GLenum, GLuint, GLenum, GLsizei, const char*, const void*)
2815 DebugCallbackFunctionCase (Context& context, const char* name, const char* description);
2819 DebugCallbackFunctionCase::DebugCallbackFunctionCase (Context& context, const char* name, const char* description)
2835 const tcu::ScopedLogSection section(m_testCtx.getLog(), "Initial", "Initial");
2841 const tcu::ScopedLogSection section(m_testCtx.getLog(), "Set", "Set");
2844 verifyStatePointer(result, gl, GL_DEBUG_CALLBACK_FUNCTION, (const void*)emptyCallback, QUERY_POINTER);
2854 DebugCallbackUserParamCase (Context& context, const char* name, const char* description);
2858 DebugCallbackUserParamCase::DebugCallbackUserParamCase (Context& context, const char* name, const char* description)
2875 const tcu::ScopedLogSection section(m_testCtx.getLog(), "Initial", "Initial");
2881 const tcu::ScopedLogSection section (m_testCtx.getLog(), "Set", "Set");
2882 const void* param = (void*)(int*)0x123;
2908 tcu::TestNode* createCase (CaseType type, Context& ctx, const char* name, const char* desc, TestFunctionWrapper function)
2923 tcu::TestCaseGroup* createChildCases (CaseType type, Context& ctx, const char* name, const char* desc, const vector<FunctionContainer>& funcs)
2933 vector<FunctionContainer> wrapCoreFunctions (const vector<NegativeTestShared::FunctionContainer>& fns)
2950 const vector<FunctionContainer> bufferFuncs = wrapCoreFunctions(NegativeTestShared::getNegativeBufferApiTestFunctions());
2951 const vector<FunctionContainer> textureFuncs = wrapCoreFunctions(NegativeTestShared::getNegativeTextureApiTestFunctions());
2952 const vector<FunctionContainer> shaderFuncs = wrapCoreFunctions(NegativeTestShared::getNegativeShaderApiTestFunctions());
2953 const vector<FunctionContainer> fragmentFuncs = wrapCoreFunctions(NegativeTestShared::getNegativeFragmentApiTestFunctions());
2954 const vector<FunctionContainer> vaFuncs = wrapCoreFunctions(NegativeTestShared::getNegativeVertexArrayApiTestFunctions());
2955 const vector<FunctionContainer> stateFuncs = wrapCoreFunctions(NegativeTestShared::getNegativeStateApiTestFunctions());
2956 const vector<FunctionContainer> tessellationFuncs = wrapCoreFunctions(NegativeTestShared::getNegativeTessellationTestFunctions());
2957 const vector<FunctionContainer> atomicCounterFuncs = wrapCoreFunctions(NegativeTestShared::getNegativeAtomicCounterTestFunctions());
2958 const vector<FunctionContainer> imageLoadFuncs = wrapCoreFunctions(NegativeTestShared::getNegativeShaderImageLoadTestFunctions());
2959 const vector<FunctionContainer> imageStoreFuncs = wrapCoreFunctions(NegativeTestShared::getNegativeShaderImageStoreTestFunctions());
2960 const vector<FunctionContainer> imageAtomicFuncs = wrapCoreFunctions(NegativeTestShared::getNegativeShaderImageAtomicTestFunctions());
2961 const vector<FunctionContainer> imageAtomicExchangeFuncs = wrapCoreFunctions(NegativeTestShared::getNegativeShaderImageAtomicExchangeTestFunctions());
2962 const vector<FunctionContainer> shaderFunctionFuncs = wrapCoreFunctions(NegativeTestShared::getNegativeShaderFunctionTestFunctions());
2963 const vector<FunctionContainer> shaderDirectiveFuncs = wrapCoreFunctions(NegativeTestShared::getNegativeShaderDirectiveTestFunctions());
2964 const vector<FunctionContainer> ssboBlockFuncs = wrapCoreFunctions(NegativeTestShared::getNegativeSSBOBlockTestFunctions());
2965 const vector<FunctionContainer> preciseFuncs = wrapCoreFunctions(NegativeTestShared::getNegativePreciseTestFunctions());
2966 const vector<FunctionContainer> advancedBlendFuncs = wrapCoreFunctions(NegativeTestShared::getNegativeAdvancedBlendEquationTestFunctions());
2967 const vector<FunctionContainer> shaderStorageFuncs = wrapCoreFunctions(NegativeTestShared::getNegativeShaderStorageTestFunctions());
2968 const vector<FunctionContainer> sampleVariablesFuncs = wrapCoreFunctions(NegativeTestShared::getNegativeSampleVariablesTestFunctions());
2969 const vector<FunctionContainer> computeFuncs = wrapCoreFunctions(NegativeTestShared::getNegativeComputeTestFunctions());
2970 const vector<FunctionContainer> framebufferFetchFuncs = wrapCoreFunctions(NegativeTestShared::getNegativeShaderFramebufferFetchTestFunctions());
2971 const vector<FunctionContainer> externalFuncs = getUserMessageFuncs();
2976 tcu::TestCaseGroup* const queries = new tcu::TestCaseGroup(m_testCtx, "state_query", "State query");
2978 static const struct
2980 const char* name;
2981 const char* targetName;
2998 const char* const postfix = "_getboolean"; \
2999 const QueryType queryType = QUERY_BOOLEAN; \
3003 const char* const postfix = "_getinteger"; \
3004 const QueryType queryType = QUERY_INTEGER; \
3008 const char* const postfix = "_getinteger64"; \
3009 const QueryType queryType = QUERY_INTEGER64; \
3013 const char* const postfix = "_getfloat"; \
3014 const QueryType queryType = QUERY_FLOAT; \
3023 const char* const postfix = "_isenabled"; \
3024 const QueryType queryType = QUERY_ISENABLED; \
3054 tcu::TestCaseGroup* const negative = new tcu::TestCaseGroup(m_testCtx, "negative_coverage", "API error coverage with various reporting methods");
3058 tcu::TestCaseGroup* const host = new tcu::TestCaseGroup(m_testCtx, "callbacks", "Reporting of standard API errors via callback");
3085 tcu::TestCaseGroup* const host = new tcu::TestCaseGroup(m_testCtx, "log", "Reporting of standard API errors via log");
3113 tcu::TestCaseGroup* const host = new tcu::TestCaseGroup(m_testCtx, "get_error", "Reporting of standard API errors via glGetError");
3142 tcu::TestCaseGroup* const host = createChildCases(CASETYPE_CALLBACK, m_context, "externally_generated", "Externally Generated Messages", externalFuncs);
3165 tcu::TestCaseGroup* const filtering = new tcu::TestCaseGroup(m_testCtx, "error_filters", "Filtering of reported errors");
3166 const int errorFuncsPerCase = 4;
3167 const int maxFilteringCaseCount = 32;
3168 const int caseCount = (int(allFuncs.size()) + errorFuncsPerCase-1) / errorFuncsPerCase;
3174 const int start = caseNdx*errorFuncsPerCase;
3175 const int end = de::min((caseNdx+1)*errorFuncsPerCase, int(allFuncs.size()));
3176 const string name = "case_" + de::toString(caseNdx);
3187 tcu::TestCaseGroup* const groups = new tcu::TestCaseGroup(m_testCtx, "error_groups", "Filtering of reported errors with use of Error Groups");
3188 const int errorFuncsPerCase = 4;
3189 const int maxFilteringCaseCount = 16;
3190 const int caseCount = (int(allFuncs.size()) + errorFuncsPerCase-1) / errorFuncsPerCase;
3196 const int start = caseNdx*errorFuncsPerCase;
3197 const int end = de::min((caseNdx+1)*errorFuncsPerCase, int(allFuncs.size()));
3198 const string name = ("case_" + de::toString(caseNdx)).c_str();
3209 tcu::TestCaseGroup* const async = new tcu::TestCaseGroup(m_testCtx, "async", "Asynchronous message generation");
3210 const int errorFuncsPerCase = 2;
3211 const int maxAsyncCaseCount = 16;
3212 const int caseCount = (int(allFuncs.size()) + errorFuncsPerCase-1) / errorFuncsPerCase;
3218 const int start = caseNdx*errorFuncsPerCase;
3219 const int end = de::min((caseNdx+1)*errorFuncsPerCase, int(allFuncs.size()));
3220 const string name = ("case_" + de::toString(caseNdx)).c_str();
3232 tcu::TestCaseGroup* const labels = new tcu::TestCaseGroup(m_testCtx, "object_labels", "Labeling objects");
3234 const struct
3237 const char* name;
3238 const char* desc;