Website Summary Files Commits Branches @commit @diff @stats
path: root / src / Models / Reservation.h
diff options
context:
space:
mode:
Commitb844597fd23bc57aa97e231fc90eecfd6322cecc (patch)
Author
 Syndamia <kamen.d.mladenov@protonmail.com>
2022-05-07 08:28:27 +0300
Committer
 Syndamia <kamen.d.mladenov@protonmail.com>
2022-05-07 08:28:27 +0300
Files86a4112ecfa1e3a54dbcf44a7ddf37575ba4aa39 /src/Models/Reservation.h
FMI-OOP-P1_TicketSystem-b844597fd23bc57aa97e231fc90eecfd6322cecc.tar
FMI-OOP-P1_TicketSystem-b844597fd23bc57aa97e231fc90eecfd6322cecc.tar.gz
FMI-OOP-P1_TicketSystem-b844597fd23bc57aa97e231fc90eecfd6322cecc.zip
Parent0910afb91c8f9672be1d6184f47fb75947ea14f1 (diff)
Reorganized whole architecture
1 files changed, 29 insertions, 0 deletions
-rw-r--r--src/Models/Reservation.h29
diff --git a/src/Models/Reservation.h b/src/Models/Reservation.h
new file mode 100644
index 0000000..1a415b5
--- /dev/null
+++ b/src/Models/Reservation.h
@@ -0,0 +1,29 @@
+#ifndef HEADER_EVENTSYSTEM_RESERVATION
+#define HEADER_EVENTSYSTEM_RESERVATION
+
+#include "Ticket.h"
+#include <istream>
+#include <ostream>
+
+#define PASSWORD_LEN 8
+#define NOTE_LEN 32
+
+class Reservation {
+ Ticket ticket;
+ char password[PASSWORD_LEN];
+ char note[NOTE_LEN];
+
+public:
+ Reservation();
+ Reservation(const Ticket& ticket);
+ Reservation(const Ticket& ticket, const char* password, const char* note);
+
+ bool validPassword(const char* password) const;
+ const Ticket& get_ticket() const;
+
+ void read(std::istream& istr);
+ void write(std::ostream& ostr) const;
+ int compare(const Reservation& other) const;
+};
+
+#endif