1#include "Library/Camera/SpecialCameraHolder.h"
2
3#include "Library/Base/StringUtil.h"
4#include "Library/Camera/CameraTicket.h"
5#include "Library/Camera/CameraTicketId.h"
6
7namespace al {
8
9SpecialCameraHolder::SpecialCameraHolder() {}
10
11void SpecialCameraHolder::allocEntranceCameraBuffer(s32 maxEntries) {
12 mMaxEntranceCameras = maxEntries;
13 mEntranceCameras = new CameraTicket*[maxEntries];
14 for (s32 i = 0; i < mMaxEntranceCameras; i++)
15 mEntranceCameras[i] = nullptr;
16}
17
18void SpecialCameraHolder::registerEntranceCamera(CameraTicket* ticket) {
19 mEntranceCameras[mNumEntranceCameras] = ticket;
20 mNumEntranceCameras++;
21}
22
23CameraTicket* SpecialCameraHolder::findEntranceCamera(const char* suffix) const {
24 for (s32 i = 0; i < mNumEntranceCameras; i++) {
25 CameraTicket* ticket = mEntranceCameras[i];
26 if (isEqualString(str1: ticket->getTicketId()->getSuffix(), str2: suffix))
27 return ticket;
28 }
29 return nullptr;
30}
31
32} // namespace al
33