commenting my code
This commit is contained in:
parent
e2c23647a5
commit
7840f791bb
@ -1,6 +1,7 @@
|
||||
#include "headers/Customer.h"
|
||||
#include <iostream>
|
||||
|
||||
// moet aangepast worden om een verhicle_type toe te voegen
|
||||
Customer::Customer(int id_, string name_, string card_code_)
|
||||
: id { id_ }
|
||||
, name { name_ }
|
||||
@ -8,17 +9,22 @@ Customer::Customer(int id_, string name_, string card_code_)
|
||||
{
|
||||
}
|
||||
|
||||
/*
|
||||
creert een park_time object met start time= nu, en voegt t toe aan een vector.
|
||||
*/
|
||||
void Customer::clock_in( int s_id)
|
||||
{
|
||||
Park_time pt{id, s_id};
|
||||
park_instances.push_back(pt);
|
||||
}
|
||||
|
||||
// edit de laatste park_time obj in de vector zodat de end_time = now.
|
||||
void Customer::clock_out(int s_id){
|
||||
park_instances[park_instances.size()-1].clock_out(id, s_id);
|
||||
}
|
||||
|
||||
|
||||
|
||||
// monthly report generation. moet nog een manier vinden om af te bakenen.
|
||||
void Customer::gen_monthly(){
|
||||
std::cout << "NAME: " << name << " card code: " << card_code << "\n";
|
||||
std::cout << "-------------------------------------------------\n";
|
||||
|
@ -6,6 +6,7 @@ Park_spot::Park_spot(int id_){
|
||||
taken = false;
|
||||
}
|
||||
|
||||
// clock in en out, calls de juist(in/out) van de customer aan de hand van internal state van taken
|
||||
void Park_spot::clock(Customer* c_customer){
|
||||
if (!taken){
|
||||
parked = c_customer;
|
||||
|
@ -9,11 +9,24 @@
|
||||
using std::vector;
|
||||
using std::string;
|
||||
|
||||
// enum type is basically een manier om categories te representen als een integer in the background, maar om t in code
|
||||
// aan te geven als de actual category.
|
||||
enum class Verhicle_type {
|
||||
"small" = 1,
|
||||
"medium" = 2,
|
||||
"large" = 3,
|
||||
};
|
||||
|
||||
/*
|
||||
db repr of Customer
|
||||
int id (not null, auto increment)
|
||||
string name (not nulll)
|
||||
string card_code (not null)
|
||||
Dit moet nog verandert worden.
|
||||
|
||||
card code zou eigenlijk een randomly generated string moeten zijn, die je bv. op een ndf card zou opslaan en zo zou
|
||||
authenticaten bij je parking spot. We kunnen dit ipv of samen met een password gebruiken.
|
||||
clock in en out creeert en compleet een park_time object. Voegt het toe aan een vector.
|
||||
|
||||
*/
|
||||
|
||||
@ -26,9 +39,10 @@ public:
|
||||
void clock_out(int s_id);
|
||||
// void gen_weekly(); TODO: this
|
||||
void gen_monthly();
|
||||
Customer(int id_, string name_, string card_code_);
|
||||
Customer(int id_, string name_);
|
||||
|
||||
private:
|
||||
Verhicle_type verhicle;
|
||||
vector<Park_time> park_instances;
|
||||
};
|
||||
|
||||
|
@ -6,6 +6,8 @@ db representation:
|
||||
int id not null
|
||||
bool taken not null
|
||||
int customer_id (null) (many to one, foreign key, whatever)
|
||||
|
||||
Dit representeert een parkeerplaats. Het heeft als internal state alleen dat t bezet is of niet.
|
||||
*/
|
||||
|
||||
class Park_spot {
|
||||
|
@ -16,6 +16,9 @@ int spot_id (not null, many to one or something like that)
|
||||
int duration
|
||||
datetime start (not null)
|
||||
datetime end
|
||||
|
||||
Dit is gewoon een record van hoe lang, wie en waar iemand parkeert. Basically, een component van
|
||||
de internal state van customer.
|
||||
*/
|
||||
|
||||
class Park_time {
|
||||
|
27
main.cpp
27
main.cpp
@ -3,23 +3,42 @@
|
||||
#include <thread> // to make pausing work, not sure if i need chrono, or this, or both
|
||||
#include <vector>
|
||||
|
||||
|
||||
/*
|
||||
Code strucure like this:
|
||||
als class declarations in /headers/class_naam.h, en definitions van de member objects in /class_naam.cpp
|
||||
elke klas in zn eigen file omdat ik incomplete class declarations wilt tegengaan, omdat ik ze niet goed begrijp.
|
||||
En header/source split om multiple definition errors tegen te gaan.
|
||||
|
||||
Park_spot representeert een parkeermeter bij elke parkeer spot.
|
||||
Een customer is een customer.
|
||||
Park time is een object die reffereert naar parkspot en customer, basically een record die zegt dat
|
||||
een customer voor x tijd geparkeert heeft bij spot x, enz.
|
||||
|
||||
De client clockt in en uit bij een spot.
|
||||
*/
|
||||
|
||||
void Wait(int sec)
|
||||
/*
|
||||
a wait function where 1 sec represents 1 hour irl.
|
||||
*/
|
||||
{
|
||||
std::this_thread::sleep_for(seconds { sec });
|
||||
}
|
||||
|
||||
using std::cout;
|
||||
|
||||
|
||||
int main()
|
||||
{
|
||||
std::vector<Park_spot> spots {
|
||||
1, 2, 3, 4, 5
|
||||
};
|
||||
std::vector<Customer> customers {
|
||||
{ 1, "Sagar Ram", "eddgh" },
|
||||
{ 2, "Shaq", "wsdfwefgv" },
|
||||
{ 3, "Josh", "WDFGWEF" },
|
||||
{ 4, "Stefano", "EDGGERG" }
|
||||
{ 1, "Sagar Ram" },
|
||||
{ 2, "Shaq" },
|
||||
{ 3, "Josh" },
|
||||
{ 4, "Stefano" }
|
||||
};
|
||||
|
||||
spots[1].clock(&customers[3]); // stefano parks at spot 2
|
||||
|
Loading…
Reference in New Issue
Block a user