ACP_COMMAND_UPDATE_ALL_CONTEXTS Structure

Command to update arrays of all SHAPE context types.

Syntax

struct ACP_COMMAND_UPDATE_ALL_CONTEXTS {
    UINT32 srcEntryCount;
    UINT32 eqCompEntryCount;
    UINT32 filtVolEntryCount;
    UINT32 dmaReadEntryCount;
    UINT32 dmaWriteEntryCount;
    UINT32 pcmEntryCount;
    UINT32 xmaEntryCount;
    APU_ADDRESS srcEntries;
    APU_ADDRESS eqCompEntries;
    APU_ADDRESS filtVolEntries;
    APU_ADDRESS dmaReadEntries;
    APU_ADDRESS dmaWriteEntries;
    APU_ADDRESS pcmEntries;
    APU_ADDRESS xmaEntries;
    UINT32 srcIndexCount;
    UINT32 eqCompIndexCount;
    UINT32 filtVolIndexCount;
    UINT32 dmaReadIndexCount;
    UINT32 dmaWriteIndexCount;
    UINT32 pcmIndexCount;
    UINT32 xmaIndexCount;
    APU_ADDRESS srcIndices;
    APU_ADDRESS eqCompIndices;
    APU_ADDRESS filtVolIndices;
    APU_ADDRESS dmaReadIndices;
    APU_ADDRESS dmaWriteIndices;
    APU_ADDRESS pcmIndices;
    APU_ADDRESS xmaIndices;
};  

Members

srcEntryCount
Count of SRC entries.

eqCompEntryCount
Count of EQ/Comp entries.

filtVolEntryCount
Count of Filt/Vol entries.

dmaReadEntryCount
Count of DMA entries that read from a mixbuffer.

dmaWriteEntryCount
Count of DMA entries that write to a mixbuffer.

pcmEntryCount
Count of PCM entries.

xmaEntryCount
Count of XMA entries.

srcEntries
Pointer to array of SRC entries.

eqCompEntries
Pointer to array of EQ/Comp entries.

filtVolEntries
Pointer to array of Filt/Vol entries.

dmaReadEntries
Pointer to array of DMA entries that read from a mixbuffer.

dmaWriteEntries
Pointer to array of DMA entries that write to a mixbuffer.

pcmEntries
Pointer to array of PCM entries.

xmaEntries
Pointer to array of XMA entries.

srcIndexCount
Count of SRC indices.

eqCompIndexCount
Count of EQ/Comp indices.

filtVolIndexCount
Count of Filt/Vol indices.

dmaReadIndexCount
Count of DMA indices that read from a mixbuffer.

dmaWriteIndexCount
Count of DMA indices that write to a mixbuffer.

pcmIndexCount
Count of PCM indices.

xmaIndexCount
Count of XMA indices.

srcIndices
Array of unsigned 16bit indices into SRC entries.

eqCompIndices
Array of unsigned 16bit indices into EQ/Comp entries.

filtVolIndices
Array of unsigned 16bit indices into Filt/Vol entries.

dmaReadIndices
Array of unsigned 16bit indices into DMA read entries.

dmaWriteIndices
Array of unsigned 16bit indices into DMA write entries.

pcmIndices
Array of unsigned 16bit indices into PCM entries.

xmaIndices
Array of unsigned 16bit indices into XMA entries.

Remarks

There are two methods of performing block updates. In the direct method the xxxEntryCount and xxxEntries fields are used and the index fields are ignored. The block update will behave as follows.

    for(i = 0; i < entryCount; ++i)
    {
      UpdateContext(entries[i]);
    }  

In the second, indrect, method, the xxxIndexCount and xxxIndices fields are used and the entry fields are ignored. The block update will behave as follows.

    for(int i = 0; i < indexCount; ++i)
    {
      UpdateContext(entries[indices[i] ]);
    }  

Requirements

Header: Declared in acphal.h.

Library: Use acphal.lib.

See also

ACP_COMMAND_TYPE

ACP_COMMAND_UPDATE_CONTEXTS

ACP_COMMAND_UPDATE_DMA_READ_CONTEXT_ENTRY

ACP_COMMAND_UPDATE_DMA_WRITE_CONTEXT_ENTRY

ACP_COMMAND_UPDATE_EQCOMP_CONTEXT_ENTRY

ACP_COMMAND_UPDATE_FILTVOL_CONTEXT_ENTRY

ACP_COMMAND_UPDATE_PCM_CONTEXT_ENTRY

ACP_COMMAND_UPDATE_SRC_CONTEXT_ENTRY

ACP_COMMAND_UPDATE_XMA_CONTEXT_ENTRY