Summary Files Commits Branches @commit @diff @stats
path: root / Year 1 / Object-oriented Programming / Exam 2 / ex2 / EventWithFixedIntermission.cpp
blob: 17078d97cf9cf05e1ff5a189a198388155a990a5 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include "EventWithFixedIntermission.h"
#include <iostream>

EventWithFixedIntermission::EventWithFixedIntermission(unsigned startTime, unsigned endTime, unsigned intermissionStart) : Event(0, 0) {
	this->intermissionStart = intermissionStart;
	if (endTime - startTime <= 240) {
		Event::setStartTime(startTime);
		Event::setEndTime(endTime);
	}
	else
		std::cout << "Event cannot last for more than 4 hours (240 minutes)!" << std::endl;
}

bool EventWithFixedIntermission::isHappeningAt(unsigned time) const {
	return (time < intermissionStart || time > intermissionStart + 20) && Event::isHappeningAt(time);
}

EventWithFixedIntermission* EventWithFixedIntermission::clone() const {
	return new EventWithFixedIntermission(*this);
}