refactor(room): move room to separate file

This commit is contained in:
Kristofers Solo 2024-03-14 00:56:19 +02:00
parent b4b01c4a11
commit cad8e6d032
4 changed files with 53 additions and 42 deletions

View File

@ -5,24 +5,6 @@
#include <cstdint>
#include <initializer_list>
Room::Room(
uint32_t id, std::string title, uint32_t utcTimestampCreatedAt, RoomStatus status, std::vector<Player> players):
id(id),
title(title),
status(status),
players(players) {
this->utcTimestampCreatedAt = createUTCTimestamp(utcTimestampCreatedAt);
}
Room::Room(uint32_t id,
std::string title,
uint32_t utcTimestampCreatedAt,
RoomStatus status,
std::initializer_list<Player> players):
Room(id, title, utcTimestampCreatedAt, status, std::vector<Player>(players)) {
this->utcTimestampCreatedAt = createUTCTimestamp(utcTimestampCreatedAt);
}
Event::Event(std::string title,
uint32_t utcTimestampCreatedAt,
uint32_t numberNight,

View File

@ -14,32 +14,8 @@ enum EventType {
PLAYER_STATE_CHANGE,
};
enum RoomStatus {
AWAITING_START,
IN_PROGRESS,
STOPPED,
ENDED,
};
struct Room;
struct Event;
struct Room {
uint32_t id;
std::string title;
std::tm *utcTimestampCreatedAt;
RoomStatus status;
std::vector<Player> players;
Room(
uint32_t id, std::string title, uint32_t utcTimestampCreatedAt, RoomStatus status, std::vector<Player> players);
Room(uint32_t id,
std::string title,
uint32_t utcTimestampCreatedAt,
RoomStatus status,
std::initializer_list<Player> players);
};
struct Event {
std::string title;
std::tm *utcTimestampCreatedAt;

23
src/room.cc Normal file
View File

@ -0,0 +1,23 @@
#include "room.hh"
#include <cstdint>
#include <initializer_list>
#include <string>
#include <vector>
Room::Room(uint32_t id, std::string title, uint32_t created_at, RoomStatus status, std::vector<Player> players):
id(id),
title(title),
created_at(createUTCTimestamp(created_at)),
status(status),
players(players) {
}
Room::Room(
uint32_t id, std::string title, uint32_t created_at, RoomStatus status, std::initializer_list<Player> players):
id(id),
title(title),
created_at(createUTCTimestamp(created_at)),
status(status),
players(players) {
}

30
src/room.hh Normal file
View File

@ -0,0 +1,30 @@
#ifndef ROOM_HH
#define ROOM_HH
#include "player.hh"
#include <cstdint>
#include <ctime>
#include <initializer_list>
#include <string>
#include <vector>
enum RoomStatus {
AwaitingStart,
InProgress,
Stopped,
Ended,
};
struct Room {
uint32_t id;
std::string title;
std::tm *created_at;
RoomStatus status;
std::vector<Player> players;
Room(uint32_t id, std::string title, uint32_t created_at, RoomStatus status, std::vector<Player> players);
Room(uint32_t id, std::string title, uint32_t created_at, RoomStatus status, std::initializer_list<Player> players);
};
#endif // !ROOM_HH