blob: 06b4571f80f849bed8b3c0bdbeaa1879a7a0577e (
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
|
#ifndef HEADER_HEADER_TICKET
#define HEADER_HEADER_TICKET
/*! \file Ticket.h
* \brief Stores the declaration of class Ticket
*/
#include <istream>
#include <ostream>
/*! \brief Each Ticket contains a row and a seat number
*/
class Ticket {
unsigned row;
unsigned seat;
public:
//! Sets row and seat to zeroes
Ticket();
//! Sets row and seat
Ticket(unsigned row, unsigned seat);
//! Returns row
unsigned get_row() const;
//! Returns seat
unsigned get_seat() const;
//! Reads Ticket from stram
void read(std::istream& istr);
//! Writes Ticket to stream
void write(std::ostream& ostr) const;
//! Compares two Tickets
int compare(const Ticket& other) const;
};
//! Reads Ticket from stream with >> operator
std::istream& operator>>(std::istream& istr, Ticket& ticket);
//! Writes Ticket to stream with << operator
std::ostream& operator<<(std::ostream& ostr, const Ticket& ticket);
#endif
|