1 #ifndef DRONE_DECORATOR_H_
2 #define DRONE_DECORATOR_H_
5 #include "IEntityDecorator.h"
6 #include "PathStrategy.h"
34 virtual bool getPickedUp()
const {
return sub->getPickedUp(); }
45 return sub->getFinalStrategy();
59 virtual void update(
double dt) {
return sub->update(dt); }
75 return sub->getToFinalDestinationStrategy();
84 return sub->getToPackageStrategy();
Base class decorator for Drone that implements IEntityDecorator Drone template, delegates all work to...
Definition: DroneDecorator.h:13
virtual IStrategy * getFinalStrategy() const
Returns pointer to toFinalDestination.
Definition: DroneDecorator.h:44
virtual void setToPackage(IStrategy *s) const
Sets the Drone's toPackage strategy to a new one.
Definition: DroneDecorator.h:52
virtual Package * getPackage() const
Gets pointer to the Drone's package.
Definition: DroneDecorator.h:39
IStrategy * getToPackageStrategy()
Get the To Package Strategy object.
Definition: DroneDecorator.h:83
IStrategy * getToFinalDestinationStrategy()
Get the To Final Destination Strategy object.
Definition: DroneDecorator.h:74
virtual ~DroneDecorator()
Destructor.
Definition: DroneDecorator.h:24
virtual SimulationModel * getModel() const
Get the Model object.
Definition: DroneDecorator.h:67
virtual bool getPickedUp() const
Gets the pickedUp status of the Drone object.
Definition: DroneDecorator.h:34
DroneDecorator(Drone *d)
Constructor for DroneDecorator, calls IEntityDecorator constructor.
Definition: DroneDecorator.h:19
virtual void getNextDelivery() const
Gets the next delivery in the scheduler.
Definition: DroneDecorator.h:29
virtual void update(double dt)
Updates the drone's position.
Definition: DroneDecorator.h:59
Represents a drone in a physical system. Drones move using euler integration based on a specified vel...
Definition: Drone.h:19
Base class decorator for all entities that implements each specific entity in a template,...
Definition: IEntityDecorator.h:15
Strategy interface.
Definition: IStrategy.h:11
Represents a package in a physical system. Packages move using euler integration based on a specified...
Definition: Package.h:17
Class SimulationModel handling the transit simulation. it can communicate with the controller.
Definition: SimulationModel.h:30