Class Layout

java.lang.Object
icyllis.arc3d.compiler.tree.Layout

public final class Layout extends Object
Represents a layout block appearing before a variable declaration, as in:

layout (location = 0) int x;

  • Field Details

    • kOriginUpperLeft_LayoutFlag

      public static final int kOriginUpperLeft_LayoutFlag
      See Also:
    • kPixelCenterInteger_LayoutFlag

      public static final int kPixelCenterInteger_LayoutFlag
      See Also:
    • kEarlyFragmentTests_LayoutFlag

      public static final int kEarlyFragmentTests_LayoutFlag
      See Also:
    • kBlendSupportAllEquations_LayoutFlag

      public static final int kBlendSupportAllEquations_LayoutFlag
      See Also:
    • kPushConstant_LayoutFlag

      public static final int kPushConstant_LayoutFlag
      See Also:
    • kStd140_LayoutFlag

      public static final int kStd140_LayoutFlag
      See Also:
    • kStd430_LayoutFlag

      public static final int kStd430_LayoutFlag
      See Also:
    • kLocation_LayoutFlag

      public static final int kLocation_LayoutFlag
      See Also:
    • kComponent_LayoutFlag

      public static final int kComponent_LayoutFlag
      See Also:
    • kIndex_LayoutFlag

      public static final int kIndex_LayoutFlag
      See Also:
    • kBinding_LayoutFlag

      public static final int kBinding_LayoutFlag
      See Also:
    • kOffset_LayoutFlag

      public static final int kOffset_LayoutFlag
      See Also:
    • kSet_LayoutFlag

      public static final int kSet_LayoutFlag
      See Also:
    • kInputAttachmentIndex_LayoutFlag

      public static final int kInputAttachmentIndex_LayoutFlag
      See Also:
    • kBuiltin_LayoutFlag

      public static final int kBuiltin_LayoutFlag
      See Also:
    • kCount_LayoutFlag

      public static final int kCount_LayoutFlag
      See Also:
    • mLocation

      public int mLocation
      (in / out, expect for compute) individual variable, interface block, block member.
    • mComponent

      public int mComponent
      (in / out, expect for compute) individual variable, block member.
    • mIndex

      public int mIndex
      (fragment out) individual variable.
    • mBinding

      public int mBinding
      (UBO / SSBO) individual variable (opaque types only), interface block.
    • mOffset

      public int mOffset
      (UBO / SSBO) individual variable (atomic counters only), block member.
    • mSet

      public int mSet
      (UBO / SSBO, Vulkan only) individual variable (opaque types only), interface block.
    • mInputAttachmentIndex

      public int mInputAttachmentIndex
      (UBO, Vulkan only) individual variable (subpass types only), connect a shader variable to the corresponding attachment on the subpass in which the shader is being used.
    • mBuiltin

      public int mBuiltin
      (SpvBuiltIn) identify which particular built-in value this object represents.
  • Constructor Details

    • Layout

      public Layout()
  • Method Details

    • describeLayoutFlag

      public static String describeLayoutFlag(int flag)
    • layoutFlags

      public int layoutFlags()
    • setLayoutFlag

      public void setLayoutFlag(@Nonnull Context context, int mask, String name, int pos)
    • clearLayoutFlag

      public void clearLayoutFlag(int mask)
    • checkLayoutFlags

      public boolean checkLayoutFlags(@Nonnull Context context, int pos, int permittedLayoutFlags)
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object
    • equals

      public boolean equals(Object o)
      Overrides:
      equals in class Object
    • toString

      @Nonnull public String toString()
      Overrides:
      toString in class Object