Commit Graph

197 Commits

Author SHA1 Message Date
414cf44dae
Load history menu option:
- Browse is still incomplete.
	- There is a bug when selecting a time before the hour 12.
	The time becomes 23:00 ?
2020-12-06 05:38:39 +03:00
147d45e4fe
DataMan and State:
- Save state of given time.

    Still not tested with recovering saved
    states.
2020-12-06 04:07:49 +03:00
EngOsamah
ee1cb4852c Tasks 2020-12-05 23:54:01 +03:00
EngOsamah
4d736bc21c Shuffle Campaigns 2020-12-05 23:03:09 +03:00
709fa9bdac
show capacity next to street name (menu) 2020-12-04 09:10:43 +03:00
a106c5fc2f
Campaign menu option 2020-12-04 08:59:08 +03:00
5f3488c4d0
improved Vehicle output 2020-12-04 08:34:55 +03:00
0e4f871770
Pause inputListner at end of sim:
- This prevents displaying a menu and
	all the input is taken by the input
	thread. In such case, the user can't
	use the menu or exit normally.
2020-12-03 03:36:59 +03:00
787d2a7fd7
Revert capacity() 2020-12-03 03:19:25 +03:00
8bb64bea64
Reset all time members of vehicle:
- Reset (nullify) all times
   when a new route is set.

   Fixes a bug where there is a trip
   time when in second day and still
   has not arrived.
2020-12-03 02:58:54 +03:00
024babaf3f
Extend second day to allow for all buses to arrive 2020-12-03 02:43:13 +03:00
3932f8758c Add Trip time and progress to vehicle output
Signed-off-by: HeshamTB <hishaminv@gmail.com>
2020-12-02 20:32:40 +03:00
f4007d7007 Terminate thread when done
Signed-off-by: HeshamTB <hishaminv@gmail.com>
2020-12-02 19:24:56 +03:00
810820283f final patch before P1
Signed-off-by: HeshamTB <hishaminv@gmail.com>
2020-12-02 19:22:18 +03:00
c7313cd3df Improved output
Signed-off-by: HeshamTB <hishaminv@gmail.com>
2020-12-02 19:06:37 +03:00
22ee69be52 Fixed cast error
Signed-off-by: HeshamTB <hishaminv@gmail.com>
2020-12-02 18:29:24 +03:00
b6003cc3e8
Add distance to Vehicle toString()
Signed-off-by: HeshamTB <hishaminv@gmail.com>
2020-12-02 17:43:05 +03:00
EngOsamah
2f14faa2eb Phase 1 2020-12-02 13:52:11 +03:00
6dbe6a331f
Update menu:
- View buses instead of vehicles.
    - showVehicle option menu.

Signed-off-by: HeshamTB <hishaminv@gmail.com>
2020-12-02 03:01:01 +03:00
afb2b85643
Clean up
Signed-off-by: HeshamTB <hishaminv@gmail.com>
2020-12-02 02:17:07 +03:00
177e22ef13
Merge branch 'menu' 2020-12-02 02:03:29 +03:00
de91dd6cc4
Merge branch 'menu' of https://github.com/HeshamTB/Hajj-simulation into menu 2020-12-02 01:51:00 +03:00
a0d4fdf9f6
Hijri representation (HijriDate):
- Override Date toString()
    to replace 'Jan' with Dhu'l-Hijja
    and other values.
    - PDate returns instances of HijriDate
    that return Hijri Strings.

Signed-off-by: HeshamTB <hishaminv@gmail.com>
2020-12-02 01:46:56 +03:00
d4be36ebf8
Travelable interface
Signed-off-by: HeshamTB <hishaminv@gmail.com>
2020-12-02 00:50:18 +03:00
35ce9ca754
District report evey hour 2-12-2020 meeting
Signed-off-by: HeshamTB <hishaminv@gmail.com>
2020-12-02 00:49:45 +03:00
271395654c
Route used by
Signed-off-by: HeshamTB <hishaminv@gmail.com>
2020-12-02 00:02:08 +03:00
19291fbfe1
District report:
- Add best time to dist

Signed-off-by: HeshamTB <hishaminv@gmail.com>
2020-12-01 22:33:24 +03:00
ba02114562
Print time of finishing for both days
Signed-off-by: HeshamTB <hishaminv@gmail.com>
2020-12-01 22:21:50 +03:00
a376d91671
Clean up
Signed-off-by: HeshamTB <hishaminv@gmail.com>
2020-12-01 21:10:00 +03:00
4a87e08a74
busses arrived per hour fix
Signed-off-by: HeshamTB <hishaminv@gmail.com>
2020-12-01 20:51:12 +03:00
336106c7ed
Street toString()
- Print street details and fields.
    - Print scaled street density.
2020-12-01 20:22:59 +03:00
Asaad Dadoush
86651b3a91 method for the bus arrived per hour 2020-12-01 19:05:27 +03:00
HeshamTB
83261572fb
Merge branch 'master' into menu 2020-12-01 06:56:31 +03:00
3e1af27b6d
Print report option in menu
Signed-off-by: HeshamTB <hishaminv@gmail.com>
2020-12-01 04:58:26 +03:00
EngOsamah
e8cdb4b51d CivilVehicleNoise is OK 2020-12-01 00:26:05 +03:00
51bf50ec6d
menu split into methods:
- Stack-like menu. Recurse until
    Return is selected.

Signed-off-by: HeshamTB <hishaminv@gmail.com>
2020-12-01 00:24:24 +03:00
0b4e259495
Route toString() Exception fix:
- toString() throws exception
   when invoked on 'noise' vehicles
   The routes made for them dont have
   District and Mashier set. Accessing
   name() from a null method throws
   null ptr ex.

Signed-off-by: HeshamTB <hishaminv@gmail.com>
2020-12-01 00:23:07 +03:00
e28a593280
Print time with menu
Signed-off-by: HeshamTB <hishaminv@gmail.com>
2020-11-30 22:42:09 +03:00
fbd39f4081
Street history
- Save time of entry for each vehicle

Signed-off-by: HeshamTB <hishaminv@gmail.com>
2020-11-30 22:36:37 +03:00
3a91f2f0f1
Vehicle toString():
- Print route
    - Check if street is null before getting
        name.

Signed-off-by: HeshamTB <hishaminv@gmail.com>
2020-11-30 21:47:33 +03:00
d7e3fd7a68
Vehicle toString()
Signed-off-by: HeshamTB <hishaminv@gmail.com>
2020-11-30 21:05:01 +03:00
2edf82b28b
menu:
- Added street option in menu
    - Street length printed to second

Signed-off-by: HeshamTB <hishaminv@gmail.com>
2020-11-30 20:50:23 +03:00
076cb510cf
Merge branch 'master' into menu 2020-11-30 20:28:42 +03:00
680890b864
Street toString()
- Print street details and fields.
    - Print scaled street density.
2020-11-30 20:11:41 +03:00
c3485f94d1
Merge branch 'master' into menu 2020-11-30 18:48:34 +03:00
521b36a117
Fix output glitch
Signed-off-by: HeshamTB <hishaminv@gmail.com>
2020-11-28 05:42:21 +03:00
fc05264a46
Menu functions (Exit, Continue) 2020-11-27 20:04:23 +03:00
4346b9348d
Menu functions:
- View Vehicles
    - View Routes
2020-11-27 19:18:44 +03:00
b85a4040f2
Simple menu. Does nothing. 2020-11-27 18:42:17 +03:00
6d3d3b5085
Add pause method in InputListener
- Pause method and var to stop
    Scanner from 'taking' the input
    when in menue.
2020-11-27 18:42:17 +03:00
bd68322a75
Start a thread to listen for console input
- Listen for 'commands' on stdin
    the thread is running alongside
    the simulation.
2020-11-27 18:42:16 +03:00
5fde1eee7e
Route override toString()
- Print length, names of streets
    Estimated time (Best case)
    and endpoints.
2020-11-27 06:04:29 +03:00
b214b279db
Add Buses per District in pre run report 2020-11-27 00:39:40 +03:00
538c4a09a4
Average time for each street in report 2020-11-26 23:50:26 +03:00
51534a5d2b
Keep track of time used on every street on route 2020-11-26 22:41:24 +03:00
ff5c7753ff Add avg time of trip per district (Hour report)
Signed-off-by: HeshamTB <hishaminv@gmail.com>
2020-11-26 21:14:28 +03:00
480d9ccb46 Print dots as prog bar instead of date (minutes)
Signed-off-by: HeshamTB <hishaminv@gmail.com>
2020-11-26 21:11:16 +03:00
71c07b5bc1
Remove colored street name in report 2020-11-26 20:27:41 +03:00
bba5441aee Pre-simulation report:
- Make report with details per District
	(Still incomplete)
	- Use String builder for all reports.
2020-11-26 03:30:36 +03:00
946e4004ae Print msg for no arrival (avg)
Signed-off-by: HeshamTB <hishaminv@gmail.com>
2020-11-26 03:29:08 +03:00
4ab5b750b8
Remove printing of '\b'
- Causes problems in some consoles.
2020-11-23 01:29:23 +03:00
ee94355f42
Method in route getFastestTimeOfTravel(Vehicle):
- Every subclass of Vehicle needs to return
    the max of it self.

    - Calculate best case (empty streets) for
    a given vehcile using a Route.
2020-11-23 01:20:48 +03:00
6367b48746
Notes form 21-11-2020 meeting 2020-11-21 17:27:23 +03:00
dfbd961eca addCivilVehileNoise():
- Found possible fix for the method. Not yet done
	The 'numOfSedan', 'numOfSUV' ... get smaller for
	every loop iteration.

Signed-off-by: HeshamTB <hishaminv@gmail.com>
2020-11-21 02:49:00 +03:00
35cda81a46 Output:
- Add label for current minute output
	- Use "\b" instead of " " when clearing line

Signed-off-by: HeshamTB <hishaminv@gmail.com>
2020-11-21 02:43:55 +03:00
da001dc5cd Output Color with respect to capacity
Signed-off-by: HeshamTB <hishaminv@gmail.com>
2020-11-21 00:25:43 +03:00
1efd3e2dec Added new output and fixed street overflow
Signed-off-by: HeshamTB <hishaminv@gmail.com>
2020-11-21 00:05:55 +03:00
4b0e8800be
Reset num of arrived busses after setting new route 2020-11-20 20:15:13 +03:00
012c8170f9 Two day simulation (buggy)?
Signed-off-by: HeshamTB <hishaminv@gmail.com>
2020-11-19 17:06:12 +03:00
d2eeac04ec Setup for new time managment
Signed-off-by: HeshamTB <hishaminv@gmail.com>
2020-11-18 19:35:49 +03:00
11a9269cb4 Street capacity used instead of remaining.
Signed-off-by: HeshamTB <hishaminv@gmail.com>
2020-11-18 19:28:38 +03:00
9ecbfe15ed updated todo tasks
Signed-off-by: HeshamTB <hishaminv@gmail.com>
2020-11-18 19:28:17 +03:00
Asaad Dadoush
5030e7e5ac Edit Routes and Add Streets 2020-11-18 18:22:07 +03:00
86a4ac509a Move counting methods to street
Signed-off-by: HeshamTB <hishaminv@gmail.com>
2020-11-17 20:44:10 +03:00
b06a15e303 rename counting methods
Signed-off-by: HeshamTB <hishaminv@gmail.com>
2020-11-17 20:25:40 +03:00
200acf9a98 Improved output
Added Breakdown of car types on each street.

	Calculate avg trip time in last 10 min

Signed-off-by: HeshamTB <hishaminv@gmail.com>
2020-11-17 20:18:17 +03:00
Asaad Dadoush
5e612c2995 Edit 2020-11-17 17:45:21 +03:00
d5891ad2d1 Add ref to Camp in Bus ...
- Ref to Camp in Bus.
	- Override arrive() in bus to
	notify camp.
	- isAllArrived() changed to implement camp.isDone().
	Should be a bit faster

Signed-off-by: HeshamTB <hishaminv@gmail.com>
2020-11-15 17:02:56 +03:00
f6209c669d
Remove camp field and better output 2020-11-15 11:48:48 +03:00
124920787c
Better street report 2020-11-15 01:42:17 +03:00
EngOsamah
0458ff143e maybe this is going to be phase one 2020-11-15 01:21:15 +03:00
Asaad Dadoush
bb46419ed3 Report 2020-11-14 21:27:32 +03:00
Asaad Dadoush
3e1b1f162c Add UID for Sedan / SUV / Truck 2020-11-14 16:31:43 +03:00
2eb6a96a23
Better movement.
- Move Vehicles from list
   in Makkah.
2020-11-14 02:37:57 +03:00
fe781f43b6
Better movement.
- Move Vehicles from list
   in Makkah.
2020-11-14 01:30:20 +03:00
392993a008
Cars move on top of each other 2020-11-13 22:35:52 +03:00
fac5ed0089 Major update
Signed-off-by: HeshamTB <hishaminv@gmail.com>
2020-11-12 00:13:05 +03:00
62c8fb22fa Major update
Signed-off-by: HeshamTB <hishaminv@gmail.com>
2020-11-12 00:12:59 +03:00
Asaad Dadoush
6aabadd1f0 add enum 2020-11-11 21:35:18 +03:00
16ff81a44c update Vehicle and Campaign
- Added movment in vehicle.
   - Now Campaign sets Routes for
   it's Vehicles.
   - Fixed Array size of stdRoutes
   - Added getShortestRoute(Campaign)
   and getRoutesToDistrict(District)
   in MakkahCity

Signed-off-by: HeshamTB <hishaminv@gmail.com>
2020-11-11 21:02:59 +03:00
f4bb5e6099
Prevent IndexOutOFBoundEx:
In genCivilVehicles(), the
    casting might step over
    the number of cars size
    of the array. So, use try
    catch blocks and skip in that
    case.
2020-11-11 14:26:41 +03:00
9fb653397f Make PDate refrence type rather then static members 2020-11-11 12:04:50 +03:00
be05e7f848
Method to make noise cars 2020-11-10 20:48:32 +03:00
b491eaf4ab Vehicle: calc distance to next
Signed-off-by: HeshamTB <hishaminv@gmail.com>
2020-11-10 20:16:36 +03:00
92661695b1 Meeting work
Signed-off-by: HeshamTB <hishaminv@gmail.com>

Signed-off-by: HeshamTB <hishaminv@gmail.com>
2020-11-10 20:16:11 +03:00
HeshamTB
f3258355fe
Merge branch 'master' into master 2020-11-10 17:06:28 +03:00
EngOsamah
2b037e40e8 Update 2020-11-10 16:45:35 +03:00
3fb2291b85
Note to review 2020-11-10 08:02:55 +03:00
fc6b93697c
Street: Add get remaining percent capacity() 2020-11-10 00:54:31 +03:00
96a1254ce3 Makkah: add all busses from camps to list
Signed-off-by: HeshamTB <hishaminv@gmail.com>
2020-11-10 00:43:16 +03:00