Lines Matching defs:block
720 BufferBlock& block = interface.getBlock(blockNdx);
721 bool hasInstanceName = block.getInstanceName() != DE_NULL;
722 std::string blockPrefix = hasInstanceName ? (std::string(block.getBlockName()) + ".") : std::string("");
728 for (BufferBlock::iterator varIter = block.begin(); varIter != block.end(); varIter++)
731 curOffset += computeReferenceLayout(layout, activeBlockNdx, blockPrefix, curOffset, bufVar, block.getFlags());
732 if (block.getFlags() & LAYOUT_RELAXED)
742 int numInstances = block.isArray() ? block.getArraySize() : 1;
744 // Create block layout entries for each instance.
751 blockEntry.name = block.getBlockName();
754 // Compute active variable set for block.
758 if (block.isArray())
958 void generateDeclaration (std::ostream& src, const BufferBlock& block, int bindingPoint, bool usePhysStorageBuffer)
961 if ((block.getFlags() & LAYOUT_MASK) != 0)
962 src << LayoutFlagsFmt(block.getFlags() & LAYOUT_MASK) << ", ";
972 for (BufferBlock::const_iterator varIter = block.begin(); varIter != block.end(); varIter++)
983 src << "buffer " << block.getBlockName();
986 for (BufferBlock::const_iterator varIter = block.begin(); varIter != block.end(); varIter++)
998 if (block.getInstanceName() != DE_NULL)
1000 src << " " << block.getInstanceName();
1001 if (block.getFlags() & LAYOUT_DESCRIPTOR_INDEXING)
1003 else if (block.isArray())
1004 src << "[" << block.getArraySize() << "]";
1007 DE_ASSERT(!block.isArray());
1132 string getAPIName (const BufferBlock& block, const BufferVar& var, const glu::TypeComponentVector& accessPath)
1136 if (block.getInstanceName())
1137 name << block.getBlockName() << ".";
1164 string getShaderName (const BufferBlock& block, int instanceNdx, const BufferVar& var, const glu::TypeComponentVector& accessPath)
1168 if (block.getInstanceName())
1170 name << block.getInstanceName();
1172 if (block.getFlags() & LAYOUT_DESCRIPTOR_INDEXING)
1174 else if (block.isArray())
1214 const BufferBlock& block,
1225 const int arraySize = curType.getArraySize() == VarType::UNSIZED_ARRAY ? block.getLastUnsizedArraySize(instanceNdx) : curType.getArraySize();
1228 generateCompareSrc(src, resultVar, bufferLayout, block, instanceNdx, blockPtr, bufVar, accessPath.element(elemNdx), LOAD_FULL_MATRIX);
1235 generateCompareSrc(src, resultVar, bufferLayout, block, instanceNdx, blockPtr, bufVar, accessPath.member(memberNdx), LOAD_FULL_MATRIX);
1241 const string apiName = getAPIName(block, bufVar, accessPath.getPath());
1247 const string shaderName = getShaderName(block, instanceNdx, bufVar, accessPath.getPath());
1284 const BufferBlock& block = interface.getBlock(declNdx);
1285 const bool isArray = block.isArray();
1286 const int numInstances = isArray ? block.getArraySize() : 1;
1288 DE_ASSERT(!isArray || block.getInstanceName());
1292 const string instanceName = block.getBlockName() + (isArray ? "[" + de::toString(instanceNdx) + "]" : string(""));
1296 for (BufferBlock::const_iterator varIter = block.begin(); varIter != block.end(); varIter++)
1303 generateCompareSrc(src, resultVar, layout, block, instanceNdx, blockPtr, bufVar, glu::SubTypeAccess(bufVar.getType()), matrixLoadFlag);
1314 const BufferBlock& block,
1325 const int arraySize = curType.getArraySize() == VarType::UNSIZED_ARRAY ? block.getLastUnsizedArraySize(instanceNdx) : curType.getArraySize();
1328 generateWriteSrc(src, bufferLayout, block, instanceNdx, blockPtr, bufVar, accessPath.element(elemNdx), matrixStoreFlag);
1335 generateWriteSrc(src, bufferLayout, block, instanceNdx, blockPtr, bufVar, accessPath.member(memberNdx), matrixStoreFlag);
1341 const string apiName = getAPIName(block, bufVar, accessPath.getPath());
1347 const string shaderName = getShaderName(block, instanceNdx, bufVar, accessPath.getPath());
1395 const BufferBlock& block = interface.getBlock(declNdx);
1396 const bool isArray = block.isArray();
1397 const int numInstances = isArray ? block.getArraySize() : 1;
1399 DE_ASSERT(!isArray || block.getInstanceName());
1403 const string instanceName = block.getBlockName() + (isArray ? "[" + de::toString(instanceNdx) + "]" : string(""));
1407 for (BufferBlock::const_iterator varIter = block.begin(); varIter != block.end(); varIter++)
1414 generateWriteSrc(src, layout, block, instanceNdx, blockPtr, bufVar, glu::SubTypeAccess(bufVar.getType()), matrixStoreFlag);
1453 const BufferBlock& block = interface.getBlock(blockNdx);
1454 generateDeclaration(src, block, 1 + blockNdx, usePhysStorageBuffer);
1462 const BufferBlock& block = interface.getBlock(blockNdx);
1463 if (block.getInstanceName() != DE_NULL)
1465 src << " " << block.getBlockName() << " " << block.getInstanceName();
1466 if (block.isArray())
1467 src << "[" << block.getArraySize() << "]";
1595 const BufferBlock& block,
1606 const int arraySize = curType.getArraySize() == VarType::UNSIZED_ARRAY ? block.getLastUnsizedArraySize(instanceNdx) : curType.getArraySize();
1609 copyNonWrittenData(layout, block, instanceNdx, srcBlockPtr, dstBlockPtr, bufVar, accessPath.element(elemNdx));
1616 copyNonWrittenData(layout, block, instanceNdx, srcBlockPtr, dstBlockPtr, bufVar, accessPath.member(memberNdx));
1622 const string apiName = getAPIName(block, bufVar, accessPath.getPath());
1637 const BufferBlock& block = interface.getBlock(declNdx);
1638 const bool isArray = block.isArray();
1639 const int numInstances = isArray ? block.getArraySize() : 1;
1641 DE_ASSERT(!isArray || block.getInstanceName());
1645 const string instanceName = block.getBlockName() + (isArray ? "[" + de::toString(instanceNdx) + "]" : string(""));
1650 for (BufferBlock::const_iterator varIter = block.begin(); varIter != block.end(); varIter++)
1657 copyNonWrittenData(layout, block, instanceNdx, srcBlockPtr, dstBlockPtr, bufVar, glu::SubTypeAccess(bufVar.getType()));
1847 string getBlockAPIName (const BufferBlock& block, int instanceNdx)
1849 DE_ASSERT(block.isArray() || instanceNdx == 0);
1850 return block.getBlockName() + (block.isArray() ? ("[" + de::toString(instanceNdx) + "]") : string());
1853 // \note Some implementations don't report block members in the order they are declared.
1890 const BufferBlock& block = interface.getBlock(declNdx);
1891 const bool isArray = block.isArray();
1892 const int numInstances = isArray ? block.getArraySize() : 1;
1896 const string apiName = getBlockAPIName(block, instanceNdx);
1904 const int lastArraySize = isLastUnsized ? block.getLastUnsizedArraySize(instanceNdx) : 0;
1968 // Pointers for each block.
1985 // Ensure each new block starts fully aligned to avoid unaligned host accesses
2120 const BufferBlock& block = m_interface.getBlock(bindingNdx);
2121 if (block.isArray())
2124 .addArrayBinding(vk::VK_DESCRIPTOR_TYPE_STORAGE_BUFFER, block.getArraySize(), vk::VK_SHADER_STAGE_COMPUTE_BIT);
2125 numBlocks += block.getArraySize();
2242 const BufferBlock& block = m_interface.getBlock(bindingNdx);
2243 const int numBlocksInBinding = (block.isArray() ? block.getArraySize() : 1);