--- layout: stdlib-reference --- # struct RWByteAddressBuffer *Conditionally conforms to:* \_\_IDynamicResourceCastable\<\_\_DynamicResourceKind\.General\>, [IPhysicalBuffer](../../interfaces/iphysicalbuffer-019/index.html), [IRWPhysicalBuffer](../../interfaces/irwphysicalbuffer-0123b/index.html) ## Description Represents an opaque handle to a read-write buffer allocated in global memory that is indexed in bytes. This type can be used when working with raw buffers. Raw buffer can be viewed as a bag of bits to which you want raw access, that is, a buffer that you can conveniently access through chunks of one to four 32-bit typeless address values. ## Fields #### [descriptorAccess](descriptoraccess-a.html) : [DescriptorAccess](../descriptoraccess-0a/index.html) = [DescriptorAccess](../descriptoraccess-0a/index.html)\.[ReadWrite](../descriptoraccess-0a/index.html#decl-ReadWrite) #### [kind](kind.html) : [DescriptorKind](../descriptorkind-0a/index.html) = [DescriptorKind](../descriptorkind-0a/index.html)\.[StorageBuffer](../descriptorkind-0a/index.html#decl-StorageBuffer) ## Methods * [GetDimensions](getdimensions-03) * [Load2Aligned](load2aligned-05) * [Load2](load2-0) * [Load3Aligned](load3aligned-05) * [Load3](load3-0) * [Load4Aligned](load4aligned-05) * [Load4](load4-0) * [Load](load-0) * [LoadAligned](loadaligned-04) * [InterlockedAddF64](interlockedaddf64-0be) * [\_NvInterlockedAddFp16x2](0nvinterlockedaddfp16x2-013eh) * [InterlockedAddF16](interlockedaddf16-0be) * [InterlockedAddF16Emulated](interlockedaddf16emulated-0beh) * [InterlockedAddF32](interlockedaddf32-0be) * [InterlockedAddI64](interlockedaddi64-0be) * [InterlockedCompareExchangeU64](interlockedcompareexchangeu64-0biq) * [InterlockedMaxU64](interlockedmaxu64-0be) * [InterlockedMax64](interlockedmax64-0b) * [InterlockedMinU64](interlockedminu64-0be) * [InterlockedMin64](interlockedmin64-0b) * [InterlockedAddU64](interlockedaddu64-0be) * [InterlockedAdd64](interlockedadd64-0b) * [InterlockedAndU64](interlockedandu64-0be) * [InterlockedAnd64](interlockedand64-0b) * [InterlockedOrU64](interlockedoru64-0bd) * [InterlockedOr64](interlockedor64-0b) * [InterlockedXorU64](interlockedxoru64-0be) * [InterlockedXor64](interlockedxor64-0b) * [InterlockedExchangeU64](interlockedexchangeu64-0bj) * [InterlockedExchange64](interlockedexchange64-0b) * [InterlockedCompareExchange64](interlockedcompareexchange64-0bi) * [InterlockedCompareExchangeFloatBitwise](interlockedcompareexchangefloatbitwise-0biqv) * [InterlockedExchangeFloat](interlockedexchangefloat-0bj) * [InterlockedCompareStore64](interlockedcomparestore64-0bi) * [InterlockedCompareStoreFloatBitwise](interlockedcomparestorefloatbitwise-0bins) * [InterlockedMax](interlockedmax-0b) * [InterlockedMin](interlockedmin-0b) * [InterlockedAdd](interlockedadd-0b) * [InterlockedAnd](interlockedand-0b) * [InterlockedOr](interlockedor-0b) * [InterlockedXor](interlockedxor-0b) * [InterlockedExchange](interlockedexchange-0b) * [InterlockedCompareExchange](interlockedcompareexchange-0bi) * [InterlockedCompareStore](interlockedcomparestore-0bi) * [Store2](store2-0) * [Store2Aligned](store2aligned-06) * [Store3](store3-0) * [Store3Aligned](store3aligned-06) * [Store4](store4-0) * [Store4Aligned](store4aligned-06) * [Store](store-0) * [StoreAligned](storealigned-05) * [init](init) * [GetBufferPointer](getbufferpointer-039) * [LoadByteOffset](loadbyteoffset-048) * [StoreByteOffset](storebyteoffset-059) ## Conditional Conformances ### Conformance to \_\_IDynamicResourceCastable\<\_\_DynamicResourceKind\.General\> `RWByteAddressBuffer` additionally conforms to `__IDynamicResourceCastable<__DynamicResourceKind.General>`. ### Conformance to IPhysicalBuffer `RWByteAddressBuffer` additionally conforms to `IPhysicalBuffer`. ### Conformance to IRWPhysicalBuffer `RWByteAddressBuffer` additionally conforms to `IRWPhysicalBuffer`. ## Remarks This type is supported natively when targeting HLSL.