1#pragma once
2
3#include <basis/seadTypes.h>
4
5#include "Library/Controller/IUsePadDataReader.h"
6
7namespace al {
8struct PadDataPack;
9
10class PadDataArcReader : public IUsePadDataReader {
11public:
12 PadDataArcReader(const char* path);
13 PadDataArcReader(const char* path, const char* resourceName);
14 void readResource(const char* resourceName);
15 void checkEnd();
16 void read(PadDataPack* frameData) override;
17
18 bool isEnd() const override { return mIsEnd; }
19
20 u32 getCursorFrame() const override { return mCursorFrame; }
21
22 s32 getRemainFrame() const override { return mTotalFrame - mCursorFrame; }
23
24private:
25 PadDataPack* mDataFrames = nullptr;
26 u32 mCursorFrame = 0;
27 u32 mTotalFrame = 0;
28 bool mIsEnd = false;
29 const char* mPath = nullptr;
30};
31} // namespace al
32