Mario Kart 64
Loading...
Searching...
No Matches
Cup.h
Go to the documentation of this file.
1#pragma once
2
3// Base Cup class
4#include <vector>
5#include <memory>
6#include "courses/Course.h"
7
8class Course; // <-- Forward declare
9
10class Cup {
11public:
12 std::string Id;
13 const char* Name;
15 size_t CursorPosition = 0; // Course index in cup
16 std::vector<std::shared_ptr<Course>> Courses;
17
18 explicit Cup(std::string id, const char* name, std::vector<std::shared_ptr<Course>> courses);
19
20 virtual void ShuffleCourses();
21
22 virtual void Next();
23 virtual void Previous();
24 virtual void SetCourse(size_t position);
25 virtual std::shared_ptr<Course> GetCourse();
26 virtual size_t GetSize();
27};
virtual std::shared_ptr< Course > GetCourse()
Definition Cup.cpp:33
Cup(std::string id, const char *name, std::vector< std::shared_ptr< Course > > courses)
Definition Cup.cpp:4
size_t CursorPosition
Definition Cup.h:15
const char * Name
Definition Cup.h:13
std::vector< std::shared_ptr< Course > > Courses
Definition Cup.h:16
virtual size_t GetSize()
Definition Cup.cpp:37
virtual void Next()
Definition Cup.cpp:14
virtual void SetCourse(size_t position)
Definition Cup.cpp:26
u8 * Thumbnail
Definition Cup.h:14
virtual void Previous()
Definition Cup.cpp:20
std::string Id
Definition Cup.h:12
virtual void ShuffleCourses()
Definition Cup.cpp:42