CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutSign UpSign In
hrydgard

CoCalc provides the best real-time collaborative environment for Jupyter Notebooks, LaTeX documents, and SageMath, scalable from individual users to large groups and classes!

GitHub Repository: hrydgard/ppsspp
Path: blob/master/Core/HLE/AtracCtx2.h
Views: 1401
1
#pragma once
2
3
#include <cstdint>
4
5
#include "Core/HLE/AtracCtx.h"
6
7
8
class Atrac2 : public AtracBase {
9
public:
10
void DoState(PointerWrap &p) override;
11
void WriteContextToPSPMem() override;
12
13
int Analyze(u32 addr, u32 size) override;
14
int AnalyzeAA3(u32 addr, u32 size, u32 filesize) override;
15
16
int CurrentSample() const override { return currentSample_; }
17
int RemainingFrames() const override;
18
19
void GetStreamDataInfo(u32 *writePtr, u32 *writableBytes, u32 *readOffset) override;
20
int AddStreamData(u32 bytesToAdd) override;
21
u32 AddStreamDataSas(u32 bufPtr, u32 bytesToAdd) override;
22
u32 ResetPlayPosition(int sample, int bytesWrittenFirstBuf, int bytesWrittenSecondBuf) override;
23
void GetResetBufferInfo(AtracResetBufferInfo *bufferInfo, int sample) override;
24
int SetData(u32 buffer, u32 readSize, u32 bufferSize, int outputChannels, int successCode) override;
25
u32 SetSecondBuffer(u32 secondBuffer, u32 secondBufferSize) override;
26
u32 SecondBufferSize() const override;
27
28
u32 DecodeData(u8 *outbuf, u32 outbufPtr, u32 *SamplesNum, u32 *finish, int *remains) override;
29
u32 GetNextSamples() override;
30
void InitLowLevel(u32 paramsAddr, bool jointStereo) override;
31
32
private:
33
int currentSample_ = 0;
34
};
35
36