CSCI3081W Drone Delivery System
Public Member Functions | List of all members
Human Class Reference

Represents a human in a physical system. Humans move using euler integration based on a specified velocity and direction. More...

#include <Human.h>

Inheritance diagram for Human:
Inheritance graph
[legend]
Collaboration diagram for Human:
Collaboration graph
[legend]

Public Member Functions

 Human (const JsonObject &obj)
 Humans are created with a name. More...
 
 ~Human ()
 Destructor.
 
void update (double dt)
 Updates the human's position. More...
 
- Public Member Functions inherited from IEntity
 IEntity ()
 Constructor that assigns a unique ID to the entity.
 
 IEntity (const JsonObject &details)
 Constructor with JsonObject details to define the entity. More...
 
virtual ~IEntity ()
 Virtual destructor for IEntity.
 
virtual void linkModel (SimulationModel *model)
 Links this entity to a simulation model, giving it access to the model's public variables and functions. More...
 
virtual int getId () const
 Gets the ID of the entity. More...
 
virtual Vector3 getPosition () const
 Gets the position of the entity. More...
 
virtual Vector3 getDirection () const
 Gets the direction of the entity. More...
 
virtual const JsonObjectgetDetails () const
 Gets the details of the entity. More...
 
virtual std::string getColor () const
 Gets the color of the entity. More...
 
virtual std::string getName () const
 Gets the name of the entity. More...
 
virtual double getSpeed () const
 Gets the speed of the entity. More...
 
virtual void setPosition (Vector3 pos_)
 Sets the position of the entity. More...
 
virtual void setDirection (Vector3 dir_)
 Set the direction of the entity. More...
 
virtual void setColor (std::string col_)
 Sets the color of the entity. More...
 
virtual void rotate (double angle)
 Rotate the entity around y axis. More...
 
virtual SimulationModelgetModel () const
 
- Public Member Functions inherited from IPublisher
void addObserver (const IObserver *o)
 adds an observer to the simulation More...
 
void removeObserver (const IObserver *o)
 removes an observer in the simulation More...
 
void notifyObservers (const std::string &message) const
 notifies all observers with a specific message More...
 

Additional Inherited Members

- Protected Attributes inherited from IEntity
SimulationModelmodel = nullptr
 
int id = -1
 
JsonObject details
 
Vector3 position
 
Vector3 direction
 
std::string color
 
std::string name
 
double speed = 0
 

Detailed Description

Represents a human in a physical system. Humans move using euler integration based on a specified velocity and direction.

Constructor & Destructor Documentation

◆ Human()

Human::Human ( const JsonObject obj)

Humans are created with a name.

Parameters
objJSON object containing the human's information

Member Function Documentation

◆ update()

void Human::update ( double  dt)
virtual

Updates the human's position.

Parameters
dtDelta time

Implements IEntity.


The documentation for this class was generated from the following file: