| ▼Ncsci3081 | |
| CASubject | This is the Abstract Subject class from which our subjects will inherit Implements the Observer/subject pattern |
| CBattery | |
| CBeelineRoute | This is the Beeline Route class where we can use the strategy pattern to implement a Beeline route for carriers |
| CCarrier | A representation of a carrier An abstract base class for delivery transportation clases like Drone or Robot. Robot and Drone inherited from Carrier |
| CCarrierFactory | This is a derived class from IEntityFactory to manage all other factories (e.g. DroneFactory, PackageFactory, CustomerFactory...) |
| CChargingStation | A representation of a ChargingStation, inherited from EntityBase It stores the ChargingStation's name, ID, version, position, direction, and dynamic mode |
| CChargingStationFactory | This is the ChargingStationFactory, responsible for making charging station object |
| CCompositeFactory | This is a derived class from IEntityFactory to manage all other factories (e.g. DroneFactory, PackageFactory, CustomerFactory...) |
| CCustomer | A representation of a Customer, inherited from EntityBase It stores the Customer's name, ID, version, position, direction, and dynamic mode |
| CCustomerFactory | This is the CustomerFactory, responsible for making Customer object |
| CDeliverySimulation | This is the facade for the delivery system |
| CDrone | A representation of a drone It stores the drone's name, ID, version, position, direction, speed, and dynamic mode |
| CDroneFactory | This is the DroneFactory, responsible for making Drone object |
| CEntityBase | The base class for creating entities |
| CGenerateId | GenerateId class generates a static unique identifier to the customer, drone, robot, package, and battery objects. Each time GenerateNewId() is called, the id variable gets incremented |
| CIDeliverySystem | The abstract facade of a drone delivery subsystem |
| CJsonHelper | |
| CPackage | A representation of a Package, inherited from EntityBase It stores the Package's name, ID, version, position, direction, and dynamic mode |
| CPackageFactory | This is the PackageFactory, responsible for making Drone object |
| CParabolicRoute | This is the Parabolic Route class where we can use the strategy pattern to implement a parabolic route |
| CRechargeDrone | A representation of a drone It stores the drone's name, ID, version, position, direction, speed, and dynamic mode |
| CRechargeDroneFactory | This is the RECHARGE_DRONE_FACTORY, responsible for making Recharge Drones |
| CRobot | A representation of a robot It stores the robot's name, ID, version, position, direction, speed, and dynamic mode |
| CRobotFactory | This is the RobotFactory, responsible for making a robot object |
| CRouteStrategy | This is the Route Strategy class where we can use the interface to decide which type of route behaviour to implement using a strategy pattern |
| CSmartRoute | This is the Smart Route class where we can use the strategy pattern to implement a A* shortest path route |
| CVector | This is the interface class for the Vector3D and Vector2D classes |
| CVector2D | This is the Vector2D class |
| CVector3D | This is the Vector3D class |
| ▼Nentity_project | |
| CEntityConsoleLogger | The Entity Console Logger outputs entity events to the command line |
| CIEntity | A movable object in a scene. Entities have position, direction and size |
| CIEntityFactory | |
| CIEntityObserver | Observers entity events when they occur |
| CIEntitySystem | An abstract class that represents an entity system that contains entities and updates over time |
| CIGraph | Represents a read only graph object |
| CIGraphNode | Represents a node in a graph object |
| CISceneViewer | Abstact class for viewing a scene representing an entity system |
| COSMGraphParser | Parses an Open Street Map xml file along with a normalized height map |
| CWebSceneViewer | A web viewer for the entity system that uses web sockets |