~registry/dolphin-emu/triforce

« back to all changes in this revision

Viewing changes to Source/Core/Core/Src/DSPEmulator.h

  • Committer: Sérgio Benjamim
  • Date: 2015-02-13 05:54:40 UTC
  • Revision ID: sergio_br2@yahoo.com.br-20150213055440-ey2rt3sjpy27km78
Dolphin Triforce branch from code.google, commit b957980 (4.0-315).

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
// Copyright 2013 Dolphin Emulator Project
 
2
// Licensed under GPLv2
 
3
// Refer to the license.txt file included.
 
4
 
 
5
#ifndef _DSPEMULATOR_H_
 
6
#define _DSPEMULATOR_H_
 
7
 
 
8
#include "ChunkFile.h"
 
9
#include "SoundStream.h"
 
10
 
 
11
class DSPEmulator
 
12
{
 
13
public:
 
14
        virtual ~DSPEmulator() {}
 
15
 
 
16
        virtual bool IsLLE() = 0;
 
17
 
 
18
        virtual bool Initialize(bool bWii, bool bDSPThread) = 0;
 
19
        virtual void Shutdown() = 0;
 
20
 
 
21
        virtual void DoState(PointerWrap &p) = 0;
 
22
        virtual void PauseAndLock(bool doLock, bool unpauseOnUnlock=true) = 0;
 
23
 
 
24
        virtual void DSP_WriteMailBoxHigh(bool _CPUMailbox, unsigned short) = 0;
 
25
        virtual void DSP_WriteMailBoxLow(bool _CPUMailbox, unsigned short) = 0;
 
26
        virtual unsigned short DSP_ReadMailBoxHigh(bool _CPUMailbox) = 0;
 
27
        virtual unsigned short DSP_ReadMailBoxLow(bool _CPUMailbox) = 0;
 
28
        virtual unsigned short DSP_ReadControlRegister() = 0;
 
29
        virtual unsigned short DSP_WriteControlRegister(unsigned short) = 0;
 
30
        virtual void DSP_SendAIBuffer(unsigned int address, unsigned int num_samples) = 0;
 
31
        virtual void DSP_Update(int cycles) = 0;
 
32
        virtual void DSP_StopSoundStream() = 0;
 
33
        virtual void DSP_ClearAudioBuffer(bool mute) = 0;
 
34
        virtual u32 DSP_UpdateRate() = 0;
 
35
 
 
36
protected:
 
37
        SoundStream *soundStream;
 
38
};
 
39
 
 
40
DSPEmulator *CreateDSPEmulator(bool HLE);
 
41
 
 
42
#endif // _DSPEMULATOR_H_