> ## Documentation Index
> Fetch the complete documentation index at: https://devdocs.xbox.com/llms.txt
> Use this file to discover all available pages before exploring further.

# SHAPE_DMA_READ_WRITE_FULL

> SHAPE_DMA_READ_WRITE_FULL

# SHAPE\_DMA\_READ\_WRITE\_FULL

Structure used to query read and write pointers and buffer-full flag in one operation.

## Syntax

```cpp theme={null}
typedef struct SHAPE_DMA_READ_WRITE_FULL {  
    UINT32 readPointer : 5;
    UINT32 reserved0 : 3;
    UINT32 writePointer : 5;
    UINT32 reserved1 : 3;
    UINT32 full : 1;
    UINT32 reserved2 : 15;
} SHAPE_DMA_READ_WRITE_FULL  
```

### Members

*readPointer*\
Type: UINT32

Read/Write: The read pointer.

*reserved0*\
Type: UINT32

Reserved.

*writePointer*\
Type: UINT32

Read/Write: The write pointer.

*reserved1*\
Type: UINT32

Reserved.

*full*\
Type: UINT32

Read/Write: Buffer-full flag (0 == empty, 1 == full).

*reserved2*\
Type: UINT32

Reserved.

## Remarks

This structure is used by the [GetShapeDmaReadWriteFull](/reference/audio/shapedmacontext/functions/getshapedmareadwritefull) function.

The read and write pointers are offsets from the start of the buffer.

When the read pointer and the write pointer are equal, use *full* to determine whether the buffer is empty or full.

The members that are marked **Read/Write** are set by your application but can be changed by the ACP library.

## Requirements

**Header:** shapedmacontext.h

**Supported platforms:** XBOX One family consoles and XBOX Series consoles

## See also

[GetShapeDmaReadWriteFull](/reference/audio/shapedmacontext/functions/getshapedmareadwritefull)\
[ShapeDmaContext](/reference/audio/shapedmacontext/shapedmacontext_members)


## Related topics

- [GetShapeDmaReadWriteFull](/reference/audio/shapedmacontext/functions/getshapedmareadwritefull.md)
- [SetShapeDmaReadWriteFull](/reference/audio/shapedmacontext/functions/setshapedmareadwritefull.md)
- [ShapeDmaContext](/reference/audio/shapedmacontext/shapedmacontext_members.md)
- [GetShapeDmaBufferFull](/reference/audio/shapedmacontext/functions/getshapedmabufferfull.md)
- [SetShapeDmaBufferFull](/reference/audio/shapedmacontext/functions/setshapedmabufferfull.md)
