1#pragma once
2
3#include <basis/seadTypes.h>
4
5namespace al {
6
7struct CameraPoseInfo;
8class CameraSwitchRequestInfo;
9class CameraTicket;
10
11class CameraSwitchRequester {
12public:
13 CameraSwitchRequester();
14
15 void init(CameraSwitchRequestInfo* start, CameraSwitchRequestInfo* end);
16 void requestStart(CameraTicket* ticket, s32);
17 void requestEnd(CameraTicket* ticket, s32, bool);
18 void requestEndWithNextCameraPose(CameraTicket* ticket, const CameraPoseInfo* poseInfo, s32);
19
20private:
21 CameraSwitchRequestInfo* mStart = nullptr;
22 CameraSwitchRequestInfo* mEnd = nullptr;
23};
24
25static_assert(sizeof(CameraSwitchRequester) == 0x10);
26
27} // namespace al
28