Package icyllis.arc3d.compiler.tree
Class Type.SamplerType
java.lang.Object
icyllis.arc3d.compiler.tree.Node
icyllis.arc3d.compiler.tree.Symbol
icyllis.arc3d.compiler.tree.Type
icyllis.arc3d.compiler.tree.Type.SamplerType
- Enclosing class:
Type
-
Nested Class Summary
Nested classes/interfaces inherited from class icyllis.arc3d.compiler.tree.Type
Type.AliasType, Type.ArrayType, Type.CoercionCost, Type.Field, Type.GenericType, Type.ImageType, Type.MatrixType, Type.SamplerType, Type.ScalarType, Type.StructType, Type.VectorType
Nested classes/interfaces inherited from class icyllis.arc3d.compiler.tree.Node
Node.ElementKind, Node.ExpressionKind, Node.StatementKind, Node.SymbolKind
-
Field Summary
Fields inherited from class icyllis.arc3d.compiler.tree.Type
kArray_TypeKind, kBoolean_ScalarKind, kFloat_ScalarKind, kGeneric_TypeKind, kMatrix_TypeKind, kMaxNestingDepth, kNonScalar_ScalarKind, kOther_TypeKind, kSampler_TypeKind, kScalar_TypeKind, kSigned_ScalarKind, kStruct_TypeKind, kUnsigned_ScalarKind, kUnsizedArray, kVector_TypeKind, kVoid_TypeKind
-
Method Summary
Modifier and TypeMethodDescriptionFor matrices and vectors, returns the scalar type of individual cells (e.g.int
For sampler/image types, returns the SpvDim.boolean
True for arrayed texture.boolean
boolean
boolean
boolean
boolean
isShadow()
True for samplers that sample a depth texture with comparison (e.g., samplerShadow, sampler2DShadow, HLSL SamplerComparisonState).boolean
Methods inherited from class icyllis.arc3d.compiler.tree.Type
canCoerceTo, checkLiteralOutOfRange, coerceExpression, convertArraySize, convertArraySize, getArrayName, getArraySize, getCoercibleTypes, getCoercionCost, getCols, getComponents, getDesc, getElementType, getFields, getKind, getMaxValue, getMinValue, getMinWidth, getNestingDepth, getRank, getRows, getScalarKind, getType, getTypeKind, getWidth, isArray, isBoolean, isBooleanOrCompound, isFloat, isFloatOrCompound, isGeneric, isInBuiltinTypes, isInteger, isInterfaceBlock, isMatrix, isNumeric, isOpaque, isRelaxedPrecision, isScalar, isSigned, isSignedOrCompound, isStruct, isUnsigned, isUnsignedOrCompound, isUnsizedArray, isUsableInArray, isVector, isVoid, makeAliasType, makeAliasType, makeArrayType, makeCombinedType, makeGenericType, makeImageType, makeMatrixType, makeSamplerType, makeScalarType, makeScalarType, makeSeparateType, makeSpecialType, makeStructType, makeTextureType, makeVectorType, matches, resolve, toCompound, toString, toVector
Methods inherited from class icyllis.arc3d.compiler.tree.Node
getEndOffset, getStartOffset
-
Method Details
-
getComponentType
Description copied from class:Type
For matrices and vectors, returns the scalar type of individual cells (e.g. mat2 has a component type of Float). For textures, returns the sampled type (e.g. texture2D has a component type of Float). For arrays, returns the component type of their base type. For all other types, returns the type itself.- Overrides:
getComponentType
in classType
-
getDimensions
public int getDimensions()Description copied from class:Type
For sampler/image types, returns the SpvDim. For all other types, causes an assertion failure.- Overrides:
getDimensions
in classType
-
isShadow
public boolean isShadow()Description copied from class:Type
True for samplers that sample a depth texture with comparison (e.g., samplerShadow, sampler2DShadow, HLSL SamplerComparisonState). -
isArrayed
public boolean isArrayed()Description copied from class:Type
True for arrayed texture. -
isMultiSampled
public boolean isMultiSampled()- Overrides:
isMultiSampled
in classType
-
isSampled
public boolean isSampled() -
isCombinedSampler
public boolean isCombinedSampler()- Overrides:
isCombinedSampler
in classType
- Returns:
- true for texture with sampler
-
isSeparateSampler
public boolean isSeparateSampler()- Overrides:
isSeparateSampler
in classType
- Returns:
- true for pure sampler
-
isStorageImage
public boolean isStorageImage()- Overrides:
isStorageImage
in classType
- Returns:
- true for image, except subpass input
-