diff --git a/src/prep/prep.cpp b/src/prep/prep.cpp index 0cd8665..6ef7707 100644 --- a/src/prep/prep.cpp +++ b/src/prep/prep.cpp @@ -33,10 +33,42 @@ Room::Room(uint32_t id, std::string title, uint32_t utcTimestampCreatedAt, RoomS this->utcTimestampCreatedAt = createUTCTimestamp(utcTimestampCreatedAt); } -Event::Event(std::string title, uint32_t utcTimestampCreatedAt, uint32_t numberNight, bool isVisible): +Event::Event(std::string title, + uint32_t utcTimestampCreatedAt, + uint32_t numberNight, + bool isVisible, + std::vector causedBy, + std::vector prohibits, + std::vector allows): title(title), utcTimestampCreatedAt(createUTCTimestamp(utcTimestampCreatedAt)), numberNight(numberNight), isVisible(isVisible) { this->utcTimestampCreatedAt = createUTCTimestamp(utcTimestampCreatedAt); + for (auto &a : causedBy) { + this->causedBy.push_back(a); + } + for (auto &a : prohibits) { + this->prohibits.push_back(a); + } + for (auto &a : allows) { + this->allows.push_back(a); + } +} + +Event::Event(std::string title, + uint32_t utcTimestampCreatedAt, + uint32_t numberNight, + bool isVisible, + std::initializer_list causedBy, + std::initializer_list prohibits, + std::initializer_list allows): + Event(title, + utcTimestampCreatedAt, + numberNight, + isVisible, + std::vector(causedBy), + std::vector(prohibits), + std::vector(allows)) { + this->utcTimestampCreatedAt = createUTCTimestamp(utcTimestampCreatedAt); } diff --git a/src/prep/prep.hh b/src/prep/prep.hh index eadd4e6..01969c3 100644 --- a/src/prep/prep.hh +++ b/src/prep/prep.hh @@ -75,9 +75,23 @@ struct Event { uint32_t numberNight; bool isVisible; std::vector causedBy; - std::vector influenced; + std::vector prohibits; + std::vector allows; - Event(std::string title, uint32_t utcTimestampCreatedAt, uint32_t numberNight, bool isVisible); + Event(std::string title, + uint32_t utcTimestampCreatedAt, + uint32_t numberNight, + bool isVisible, + std::vector causedBy, + std::vector prohibits, + std::vector allows); + Event(std::string title, + uint32_t utcTimestampCreatedAt, + uint32_t numberNight, + bool isVisible, + std::initializer_list causedBy, + std::initializer_list prohibits, + std::initializer_list allows); }; #endif