diff options
Added files from project 1 (mirror)
1 files changed, 41 insertions, 0 deletions
| -rw-r--r-- | Year 1/Object-oriented Programming/Project 1/src/Models/Ticket.h | 41 |
diff --git a/Year 1/Object-oriented Programming/Project 1/src/Models/Ticket.h b/Year 1/Object-oriented Programming/Project 1/src/Models/Ticket.h new file mode 100644 index 0000000..06b4571 --- /dev/null +++ b/Year 1/Object-oriented Programming/Project 1/src/Models/Ticket.h @@ -0,0 +1,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 |
