Home | History | Annotate | Download | only in pipeline

Lines Matching refs:AttributeInfo

178 	struct AttributeInfo
198 const std::vector<AttributeInfo>& attributeInfos,
210 AttributeInfo getAttributeInfo (size_t attributeNdx) const;
214 std::string getGlslAttributeConditions (const AttributeInfo& attributeInfo, const std::string attributeIndex) const;
217 const std::vector<AttributeInfo> m_attributeInfos;
322 deUint32 getConsumedLocations (const VertexInputTest::AttributeInfo& attributeInfo)
325 const VertexInputTest::GlslType type = attributeInfo.glslType;
327 (attributeInfo.vkType == VK_FORMAT_R64G64B64_SFLOAT || attributeInfo.vkType == VK_FORMAT_R64G64B64A64_SFLOAT))
338 const std::vector<AttributeInfo>& attributeInfos,
372 const AttributeInfo& attributeInfo = getAttributeInfo(attributeNdx);
373 const GlslTypeDescription& glslTypeDescription = s_glslTypeDescriptions[attributeInfo.glslType];
376 attributeLocation += glslTypeDescription.vertexInputCount * getConsumedLocations(attributeInfo);
427 VertexInputTest::AttributeInfo VertexInputTest::getAttributeInfo (size_t attributeNdx) const
431 AttributeInfo attributeInfo =
438 return attributeInfo;
514 const AttributeInfo& attributeInfo = getAttributeInfo(attributeNdx);
515 const deUint32 attributeBinding = getAttributeBinding(m_bindingMapping, firstInputrate, attributeInfo.inputRate, static_cast<deUint32>(attributeNdx));
516 const deUint32 inputSize = getVertexFormatSize(attributeInfo.vkType);
524 const AttributeInfo& attributeInfo = getAttributeInfo(attributeNdx);
525 const GlslTypeDescription& glslTypeDescription = s_glslTypeDescriptions[attributeInfo.glslType];
526 const deUint32 inputSize = getVertexFormatSize(attributeInfo.vkType);
527 const deUint32 attributeBinding = getAttributeBinding(m_bindingMapping, firstInputrate, attributeInfo.inputRate, static_cast<deUint32>(attributeNdx));
528 const deUint32 vertexCount = (attributeInfo.inputRate == VK_VERTEX_INPUT_RATE_VERTEX) ? (4 * 2) : 2;
532 attributeInfo.glslType, // GlslType glslType;
537 attributeInfo.vkType, // VkFormat format;
546 attributeDescription.vkDescription.location = m_locations[attributeNdx] + getConsumedLocations(attributeInfo) * descNdx;
550 const deUint32 offsetToComponentAlignment = getNextMultipleOffset(getVertexFormatSize(attributeInfo.vkType),
560 attributeMaxSizes[attributeBinding] = de::max(attributeMaxSizes[attributeBinding], getVertexFormatSize(attributeInfo.vkType));
664 const AttributeInfo attributeInfo = getAttributeInfo(0);
670 glslCode << getGlslAttributeConditions(attributeInfo, "checkNdx")
673 const int vertexInputCount = VertexInputTest::s_glslTypeDescriptions[attributeInfo.glslType].vertexInputCount;
674 totalInputComponentCount += vertexInputCount * VertexInputTest::s_glslTypeDescriptions[attributeInfo.glslType].vertexInputComponentCount;
747 std::string VertexInputTest::getGlslAttributeConditions (const AttributeInfo& attributeInfo, const std::string attributeIndex) const
751 const int componentCount = VertexInputTest::s_glslTypeDescriptions[attributeInfo.glslType].vertexInputComponentCount;
752 const int vertexInputCount = VertexInputTest::s_glslTypeDescriptions[attributeInfo.glslType].vertexInputCount;
754 const tcu::Vec4 threshold = getFormatThreshold(attributeInfo.vkType);
768 indexId = (attributeInfo.inputRate == VK_VERTEX_INPUT_RATE_VERTEX) ? "gl_VertexIndex" : "gl_InstanceIndex";
778 if (isVertexFormatComponentOrderABGR(attributeInfo.vkType))
780 else if (isVertexFormatComponentOrderARGB(attributeInfo.vkType))
804 if (isVertexFormatSint(attributeInfo.vkType))
806 if (isVertexFormatPacked(attributeInfo.vkType))
808 const deInt32 maxIntValue = (1 << (getPackedVertexFormatComponentWidth(attributeInfo.vkType, orderNdx) - 1)) - 1;
816 else if (isVertexFormatUint(attributeInfo.vkType))
818 if (isVertexFormatPacked(attributeInfo.vkType))
820 const deUint32 maxUintValue = (1 << getPackedVertexFormatComponentWidth(attributeInfo.vkType, orderNdx)) - 1;
827 else if (isVertexFormatSfloat(attributeInfo.vkType))
829 if (VertexInputTest::s_glslTypeDescriptions[attributeInfo.glslType].basicType == VertexInputTest::GLSL_BASIC_TYPE_DOUBLE)
838 else if (isVertexFormatSscaled(attributeInfo.vkType))
840 if (isVertexFormatPacked(attributeInfo.vkType))
842 const float maxScaledValue = float((1 << (getPackedVertexFormatComponentWidth(attributeInfo.vkType, orderNdx) - 1)) - 1);
850 else if (isVertexFormatUscaled(attributeInfo.vkType))
852 if (isVertexFormatPacked(attributeInfo.vkType))
854 const float maxScaledValue = float((1 << getPackedVertexFormatComponentWidth(attributeInfo.vkType, orderNdx)) - 1);
861 else if (isVertexFormatSnorm(attributeInfo.vkType))
863 const float representableDiff = isVertexFormatPacked(attributeInfo.vkType) ? getRepresentableDifferenceSnormPacked(attributeInfo.vkType, orderNdx) : getRepresentableDifferenceSnorm(attributeInfo.vkType);
865 if(isVertexFormatPacked(attributeInfo.vkType))
870 else if (isVertexFormatUnorm(attributeInfo.vkType) || isVertexFormatSRGB(attributeInfo.vkType))
872 const float representableDiff = isVertexFormatPacked(attributeInfo.vkType) ? getRepresentableDifferenceUnormPacked(attributeInfoattributeInfo.vkType);
874 if (isVertexFormatPacked(attributeInfo.vkType))
1659 std::string getAttributeInfoCaseName (const VertexInputTest::AttributeInfo& attributeInfo)
1662 const std::string formatName = getFormatName(attributeInfo.vkType);
1666 if (attributeInfo.inputRate == VK_VERTEX_INPUT_RATE_VERTEX)
1674 std::string getAttributeInfoDescription (const VertexInputTest::AttributeInfo& attributeInfo)
1678 caseDesc << std::string(VertexInputTest::s_glslTypeDescriptions[attributeInfo.glslType].name) << " from type " << getFormatName(attributeInfo.vkType) << " with ";
1680 if (attributeInfo.inputRate == VK_VERTEX_INPUT_RATE_VERTEX)
1688 std::string getAttributeInfosDescription (const std::vector<VertexInputTest::AttributeInfo>& attributeInfos)
1804 VertexInputTest::AttributeInfo attributeInfo;
1805 attributeInfo.vkType = vertexFormats[formatNdx];
1806 attributeInfo.glslType = glslType;
1807 attributeInfo.inputRate = VK_VERTEX_INPUT_RATE_VERTEX;
1810 getAttributeInfoCaseName(attributeInfo),
1811 getAttributeInfoDescription(attributeInfo),
1812 std::vector<VertexInputTest::AttributeInfo>(1, attributeInfo),
1817 attributeInfo.inputRate = VK_VERTEX_INPUT_RATE_INSTANCE;
1820 getAttributeInfoCaseName(attributeInfo),
1821 getAttributeInfoDescription(attributeInfo),
1822 std::vector<VertexInputTest::AttributeInfo>(1, attributeInfo),
1839 void createMultipleAttributeCases (deUint32 depth, deUint32 firstNdx, CompatibleFormats* compatibleFormats, de::Random& randomFunc, tcu::TestCaseGroup& testGroup, VertexInputTest::BindingMapping bindingMapping, VertexInputTest::AttributeLayout attributeLayout, VertexInputTest::LayoutSkip layoutSkip, VertexInputTest::LayoutOrder layoutOrder, const std::vector<VertexInputTest::AttributeInfo>& attributeInfos = std::vector<VertexInputTest::AttributeInfo>(0))
1846 std::vector <VertexInputTest::AttributeInfo> newAttributeInfos = attributeInfos;
1849 VertexInputTest::AttributeInfo attributeInfo;
1850 attributeInfo.glslType = (VertexInputTest::GlslType)currentNdx;
1851 attributeInfo.inputRate = (depth % 2 == 0) ? VK_VERTEX_INPUT_RATE_VERTEX : VK_VERTEX_INPUT_RATE_INSTANCE;
1852 attributeInfo.vkType = VK_FORMAT_UNDEFINED;
1854 newAttributeInfos.push_back(attributeInfo);
2091 std::vector<VertexInputTest::AttributeInfo> attributeInfos(attributeCount[attributeCountNdx]);