Structure
The Structure base trait. It abstract from all the types because it represent the pure concept of a structure abstracting away from the particular implementation types.
Type members
Types
Type that describes the entity that interacts with the structure.
Type that describes the entity that interacts with the structure.
Type that describes the type of the structure defined with types.
Type that describes the type of the structure defined with types.
Type that describes an entity that is entered in the structure.
Type that describes an entity that is entered in the structure.
Type that represents the position of the structure.
Type that represents the position of the structure.
Type that describes the time of the simulation.
Type that describes the time of the simulation.
Type that represents the strategy used to chose if a entity can enter or not.
Type that represents the strategy used to chose if a entity can enter or not.
Type that represents the time distribution used for the permanence.
Type that represents the time distribution used for the permanence.
Value members
Abstract methods
Each structure has a capacity in terms of how many entities can be at the same time inside.
Each structure has a capacity in terms of how many entities can be at the same time inside.
- Returns:
the maximum number of entity contained by the structure
Method that check if an entity is allowed to enter.
Method that check if an entity is allowed to enter.
- Value parameters:
- entity
the entity that want to enter
- Returns:
true if it can enter, false instead
Method that insert the entity inside the structure.
Method that insert the entity inside the structure.
- Value parameters:
- entity
the entity that want to enter
- timestamp
the timestamp in which the entity is entered
- Returns:
The modified instance of the structure
Each structure has associated a strategy that affects the enter of entities.
Each structure has associated a strategy that affects the enter of entities.
- Returns:
the strategy
Method that remove an entity from the structure.
Method that remove an entity from the structure.
- Value parameters:
- entity
the entity that want to exit
- Returns:
the modified instance of the structure without the entity inside.
Each structure has an infection probability that influence the infection of an entity that is inside.
Each structure has an infection probability that influence the infection of an entity that is inside.
- Returns:
the infection probability when an entity is inside the structure
Method to handle the situation in which an entity can't enter in the structure.
Method to handle the situation in which an entity can't enter in the structure.
- Value parameters:
- entity
the entity for witch the entering is denied
- timeStamp
the timestamp in which the entity request to enter
- Returns:
the resulting structure instance
Concrete methods
Method that allows an entity to exit from the structure. This method WILL NOT handle the entity position, but it will only remove the entity from internal structures.
Method that allows an entity to exit from the structure. This method WILL NOT handle the entity position, but it will only remove the entity from internal structures.
- Value parameters:
- entity
the entity that need to exit
- Returns:
The modified instance of the structure without the entity inside
Method that allows an entity to try to enter inside the structure. Note that an entity could not be allowed to enter based on the characteristics of the structure.
Method that allows an entity to try to enter inside the structure. Note that an entity could not be allowed to enter based on the characteristics of the structure.
- Value parameters:
- entity
the entity that wants to enter
- Returns:
The modified instance of the structure if entered