Skip to content

Documentation / device / PBPrimitiveTypeInfo

Class: PBPrimitiveTypeInfo

Defined in: libs/device/src/builder/types.ts:740

The primitive type info

Extends

Constructors

Constructor

new PBPrimitiveTypeInfo(type): PBPrimitiveTypeInfo

Defined in: libs/device/src/builder/types.ts:747

Parameters

type

PBPrimitiveType

Returns

PBPrimitiveTypeInfo

Overrides

PBTypeInfo<PrimitiveTypeDetail>.constructor

Accessors

typeId

Get Signature

get typeId(): string

Defined in: libs/device/src/builder/types.ts:589

Get unique id for this type

Returns

string

Inherited from

PBTypeInfo.typeId


primitiveType

Get Signature

get primitiveType(): PBPrimitiveType

Defined in: libs/device/src/builder/types.ts:862

Get the primitive type

Returns

PBPrimitiveType


scalarType

Get Signature

get scalarType(): PBPrimitiveType

Defined in: libs/device/src/builder/types.ts:886

Get the scalar type

Returns

PBPrimitiveType


rows

Get Signature

get rows(): number

Defined in: libs/device/src/builder/types.ts:890

Get number of rows

Returns

number


cols

Get Signature

get cols(): number

Defined in: libs/device/src/builder/types.ts:894

Get number of columns

Returns

number


normalized

Get Signature

get normalized(): boolean

Defined in: libs/device/src/builder/types.ts:898

Get if this is a normalized primitive type

Returns

boolean

Methods

isVoidType()

isVoidType(): this is PBVoidTypeInfo

Defined in: libs/device/src/builder/types.ts:596

returns true if this is a void type

Returns

this is PBVoidTypeInfo

Inherited from

PBTypeInfo.isVoidType


isAnyType()

isAnyType(): this is PBAnyTypeInfo

Defined in: libs/device/src/builder/types.ts:600

returns true if this is an any type

Returns

this is PBAnyTypeInfo

Inherited from

PBTypeInfo.isAnyType


haveAtomicMembers()

haveAtomicMembers(): boolean

Defined in: libs/device/src/builder/types.ts:608

Wether this type have atomic members

Returns

boolean

Inherited from

PBTypeInfo.haveAtomicMembers


isStructType()

isStructType(): this is PBStructTypeInfo

Defined in: libs/device/src/builder/types.ts:616

returns true if this is a struct type

Returns

this is PBStructTypeInfo

Inherited from

PBTypeInfo.isStructType


isArrayType()

isArrayType(): this is PBArrayTypeInfo

Defined in: libs/device/src/builder/types.ts:620

returns true if this is an array type

Returns

this is PBArrayTypeInfo

Inherited from

PBTypeInfo.isArrayType


isPointerType()

isPointerType(): this is PBPointerTypeInfo

Defined in: libs/device/src/builder/types.ts:624

returns true if this is a pointer type

Returns

this is PBPointerTypeInfo

Inherited from

PBTypeInfo.isPointerType


isAtomicI32()

isAtomicI32(): this is PBAtomicI32TypeInfo

Defined in: libs/device/src/builder/types.ts:628

returns true if this is an atomic int type

Returns

this is PBAtomicI32TypeInfo

Inherited from

PBTypeInfo.isAtomicI32


isAtomicU32()

isAtomicU32(): this is PBAtomicU32TypeInfo

Defined in: libs/device/src/builder/types.ts:632

returns true if this is an atomic uint type

Returns

this is PBAtomicU32TypeInfo

Inherited from

PBTypeInfo.isAtomicU32


isSamplerType()

isSamplerType(): this is PBSamplerTypeInfo

Defined in: libs/device/src/builder/types.ts:636

returns true if this is a sampler type

Returns

this is PBSamplerTypeInfo

Inherited from

PBTypeInfo.isSamplerType


isTextureType()

isTextureType(): this is PBTextureTypeInfo

Defined in: libs/device/src/builder/types.ts:640

returns true if this is a texture type

Returns

this is PBTextureTypeInfo

Inherited from

PBTypeInfo.isTextureType


isCompatibleType()

isCompatibleType(other): boolean

Defined in: libs/device/src/builder/types.ts:664

Check whether a given type is compatible with this type

Parameters

other

PBTypeInfo

The type to be checked

Returns

boolean

true if the given type is compatible with this type, othewise false

Inherited from

PBTypeInfo.isCompatibleType


getCachedTypeInfo()

static getCachedTypeInfo(primitiveType): PBPrimitiveTypeInfo

Defined in: libs/device/src/builder/types.ts:751

Get or create a PBPrimitiveTypeInfo instance for a given prmitive type

Parameters

primitiveType

PBPrimitiveType

Returns

PBPrimitiveTypeInfo


isInteger()

isInteger(): boolean

Defined in: libs/device/src/builder/types.ts:866

Whether the type is signed or unsigned integer scalar or vector

Returns

boolean


isF16()

isF16(): boolean

Defined in: libs/device/src/builder/types.ts:878

Whether the type is half float (f16) scalar or vector

Returns

boolean


haveF16Members()

haveF16Members(): boolean

Defined in: libs/device/src/builder/types.ts:882

Whether this type contains f16 scalar or vector types

Returns

boolean

Overrides

PBTypeInfo.haveF16Members


resizeType()

resizeType(rows, cols): PBPrimitiveType

Defined in: libs/device/src/builder/types.ts:940

Creates a new primitive type info by changing row and column of this type

Parameters

rows

number

The new value of row

cols

number

The new value of column

Returns

PBPrimitiveType

The new primitive type


isScalarType()

isScalarType(): boolean

Defined in: libs/device/src/builder/types.ts:944

Returns true if this is a scalar type

Returns

boolean


isVectorType()

isVectorType(): boolean

Defined in: libs/device/src/builder/types.ts:948

Returns true if this is a vector type

Returns

boolean


isMatrixType()

isMatrixType(): boolean

Defined in: libs/device/src/builder/types.ts:952

Returns true if this is a matrix type

Returns

boolean


isPrimitiveType()

isPrimitiveType(): this is PBPrimitiveTypeInfo

Defined in: libs/device/src/builder/types.ts:956

returns true if this is a primitive type

Returns

this is PBPrimitiveTypeInfo

Overrides

PBTypeInfo.isPrimitiveType


toBufferLayout()

toBufferLayout(_offset): any

Defined in: libs/device/src/builder/types.ts:986

Creates a buffer layout from this type

Parameters

_offset

number

Byte offset of the layout

Returns

any

The created buffer layout

Overrides

PBTypeInfo.toBufferLayout

Released under the MIT License.