blob: e702d1535a124ff81357acc5514afe18deb4a90e (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
|
#include "Bar.h"
void Bar::addDrink(const char* name, int ml)
{
drinks.enqueue(Drink(name, ml));
}
void Bar::addAlocoholDrink(const char* name, int ml, int alcohol)
{
alcoholDrinks.enqueue(AlcoholDrink(name, ml, alcohol));
}
Drink Bar::getDrink()
{
Drink d = drinks.dequeue();
incrementStatistics(d);
return d;
}
AlcoholDrink Bar::getAcloholDrink()
{
AlcoholDrink d = alcoholDrinks.dequeue();
incrementStatistics(d, true);
return d;
}
void Bar::incrementStatistics(const Drink& dr, bool isAlcoholDrink)
{
stats.mlSold += dr.getMl();
stats.allDrinksSold++;
if (isAlcoholDrink)
stats.alcoholDrinksSold++;
}
size_t Bar::getMlSold()
{
return stats.mlSold;
}
size_t Bar::getAllDrinksSold()
{
return stats.allDrinksSold;
}
size_t Bar::getAlcoholDrinksSold()
{
return stats.alcoholDrinksSold;
}
|