Microsoft DirectX 8.1 (C++)

DMUS_SYNTHSTATS8

The DMUS_SYNTHSTATS8 structure is used by the IDirectMusicPort8::GetRunningStats method to return the current running status of a synthesizer.

Syntax

typedef struct DMUS_SYNTHSTATS {
  DWORD dwSize; 
  DWORD dwValidStats;
  DWORD dwVoices;
  DWORD dwTotalCPU;
  DWORD dwCPUPerVoice;
  DWORD dwLostNotes;
  DWORD dwFreeMemory;
  long  lPeakVolume;
  DWORD dwSynthMemUse;
} DMUS_SYNTHSTATS8;
 
typedef struct _DMUS_SYNTHSTATS8 *LPDMUS_SYNTHSTATS8;

Members

dwSize

Size of the structure, in bytes. This member must be initialized to sizeof(DMUS_SYNTHSTATS) before the structure is passed to a method.

dwValidStats

Flags that specify which fields in this structure have been filled in by the synthesizer. The following flags have been defined:

DMUS_SYNTHSTATS_VOICES
DMUS_SYNTHSTATS_TOTAL_CPU
DMUS_SYNTHSTATS_CPU_PER_VOICE
DMUS_SYNTHSTATS_FREE_MEMORY
DMUS_SYNTHSTATS_LOST_NOTES
DMUS_SYNTHSTATS_PEAK_VOLUME

dwVoices

Average number of voices playing.

dwTotalCPU

Total percentage of the CPU being consumed, multiplied by 100.

dwCPUPerVoice

Percentage of the CPU being consumed per voice, multiplied by 100.

dwLostNotes

Number of notes lost. Notes can be dropped because of voice-stealing or because too much of the CPU is being consumed.

dwFreeMemory

Amount of memory currently available to store DLS instruments. If the synthesizer is using system memory and the amount is therefore limited only by the available system memory, this value is set to DMUS_SYNTHSTATS_SYSTEMMEMORY.

lPeakVolume

Peak volume, measured in hundredths of decibels.

dwSynthMemUse

Memory used by synthesizer wave data.

Remarks

All the running status parameters, with the exception of dwFreeMemory, are refreshed every second. For example, dwLostNotes provides the total number of notes lost over a one-second period.

Requirements

  Header: Declared in dmusici.h.