Lines Matching refs:entry

140 std::ostream& operator<< (std::ostream& stream, const BlockLayoutEntry& entry)
142 stream << entry.name << " { name = " << entry.name
143 << ", size = " << entry.size
146 for (vector<int>::const_iterator i = entry.activeVarIndices.begin(); i != entry.activeVarIndices.end(); i++)
148 if (i != entry.activeVarIndices.begin())
184 static bool isUnsizedArray (const BufferVarLayoutEntry& entry)
186 DE_ASSERT(entry.arraySize != 0 || entry.topLevelArraySize != 0);
187 return entry.arraySize == 0 || entry.topLevelArraySize == 0;
190 std::ostream& operator<< (std::ostream& stream, const BufferVarLayoutEntry& entry)
192 stream << entry.name << " { type = " << glu::getDataTypeName(entry.type)
193 << ", blockNdx = " << entry.blockNdx
194 << ", offset = " << entry.offset
195 << ", arraySize = " << entry.arraySize
196 << ", arrayStride = " << entry.arrayStride
197 << ", matrixStride = " << entry.matrixStride
198 << ", topLevelArraySize = " << entry.topLevelArraySize
199 << ", topLevelArrayStride = " << entry.topLevelArrayStride
200 << ", isRowMajor = " << (entry.isRowMajor ? "true" : "false")
478 BufferVarLayoutEntry entry;
480 entry.name = curPrefix;
481 entry.type = basicType;
482 entry.arraySize = 1;
483 entry.arrayStride = 0;
484 entry.matrixStride = 0;
485 entry.topLevelArraySize = topLevelArraySize;
486 entry.topLevelArrayStride = topLevelArrayStride;
487 entry.blockNdx = curBlockNdx;
496 entry.offset = curOffset;
497 entry.matrixStride = baseAlignment;
498 entry.isRowMajor = isRowMajor;
505 entry.offset = curOffset;
510 layout.bufferVars.push_back(entry);
521 BufferVarLayoutEntry entry;
523 entry.name = curPrefix + "[0]"; // Array variables are always postfixed with [0]
524 entry.type = elemBasicType;
525 entry.blockNdx = curBlockNdx;
526 entry.offset = curOffset;
527 entry.arraySize = type.getArraySize();
528 entry.arrayStride = stride;
529 entry.matrixStride = 0;
530 entry.topLevelArraySize = topLevelArraySize;
531 entry.topLevelArrayStride = topLevelArrayStride;
535 layout.bufferVars.push_back(entry);
545 BufferVarLayoutEntry entry;
547 entry.name = curPrefix + "[0]"; // Array variables are always postfixed with [0]
548 entry.type = elemBasicType;
549 entry.blockNdx = curBlockNdx;
550 entry.offset = curOffset;
551 entry.arraySize = type.getArraySize();
552 entry.arrayStride = vecStride*numVecs;
553 entry.matrixStride = vecStride;
554 entry.isRowMajor = isRowMajor;
555 entry.topLevelArraySize = topLevelArraySize;
556 entry.topLevelArrayStride = topLevelArrayStride;
560 layout.bufferVars.push_back(entry);
607 BufferVarLayoutEntry entry;
609 entry.name = prefix;
610 entry.topLevelArraySize = 1;
611 entry.topLevelArrayStride = 0;
612 entry.type = elemBasicType;
613 entry.blockNdx = curBlockNdx;
614 entry.offset = curOffset;
615 entry.arraySize = topLevelArraySize;
616 entry.arrayStride = stride;
617 entry.matrixStride = 0;
619 layout.bufferVars.push_back(entry);
635 BufferVarLayoutEntry entry;
637 entry.name = prefix;
638 entry.topLevelArraySize = 1;
639 entry.topLevelArrayStride = 0;
640 entry.type = elemBasicType;
641 entry.blockNdx = curBlockNdx;
642 entry.offset = curOffset;
643 entry.arraySize = topLevelArraySize;
644 entry.arrayStride = stride*numVecs;
645 entry.matrixStride = stride;
646 entry.isRowMajor = isRowMajor;
648 layout.bufferVars.push_back(entry);
707 // Allocate entry for instance.
726 void generateValue (const BufferVarLayoutEntry& entry, int unsizedArraySize, void* basePtr, de::Random& rnd)
728 const glu::DataType scalarType = glu::getDataTypeScalarType(entry.type);
729 const int scalarSize = glu::getDataTypeScalarSize(entry.type);
730 const int arraySize = entry.arraySize == 0 ? unsizedArraySize : entry.arraySize;
731 const int arrayStride = entry.arrayStride;
732 const int topLevelSize = entry.topLevelArraySize == 0 ? unsizedArraySize : entry.topLevelArraySize;
733 const int topLevelStride = entry.topLevelArrayStride;
734 const bool isMatrix = glu::isDataTypeMatrix(entry.type);
735 const int numVecs = isMatrix ? (entry.isRowMajor ? glu::getDataTypeMatrixNumRows(entry.type) : glu::getDataTypeMatrixNumColumns(entry.type)) : 1;
745 deUint8* const topElemPtr = (deUint8*)basePtr + entry.offset + topElemNdx*topLevelStride;
753 deUint8* const vecPtr = elemPtr + (isMatrix ? vecNdx*entry.matrixStride : 0);
1362 BlockLayoutEntry& entry = layout.blocks[blockNdx];
1377 entry.size = returnValues[0];
1386 entry.activeVarIndices.resize(numBlockVars);
1387 gl.getProgramResourceiv(program, GL_SHADER_STORAGE_BLOCK, (deUint32)blockNdx, 1, &queryArg, numBlockVars, &retLength, &entry.activeVarIndices[0]);
1409 entry.name = &name[0];
1418 BufferVarLayoutEntry& entry = layout.bufferVars[bufVarNdx];
1446 entry.blockNdx = returnValues[0];
1447 entry.type = glu::getDataTypeFromGLType(returnValues[1]);
1448 entry.offset = returnValues[2];
1449 entry.arraySize = returnValues[3];
1450 entry.arrayStride = returnValues[4];
1451 entry.matrixStride = returnValues[5];
1452 entry.topLevelArraySize = returnValues[6];
1453 entry.topLevelArrayStride = returnValues[7];
1454 entry.isRowMajor = returnValues[8] != 0;
1472 entry.name = &name[0];
1836 static bool hasUnsizedArray (const BufferLayout& layout, const BlockLayoutEntry& entry)
1838 for (vector<int>::const_iterator varNdx = entry.activeVarIndices.begin(); varNdx != entry.activeVarIndices.end(); ++varNdx)
1847 static int getUnsizedArrayStride (const BufferLayout& layout, const BlockLayoutEntry& entry)
1849 for (vector<int>::const_iterator varNdx = entry.activeVarIndices.begin(); varNdx != entry.activeVarIndices.end(); ++varNdx)