Class AgentProperty<T>

Type Parameters:
T - the type of value this property carries
All Implemented Interfaces:
AgentAttribute, Attribute
Direct Known Subclasses:
FunctionalAgentProperty

public abstract non-sealed class AgentProperty<T> extends Property<T,AgentContext> implements AgentAttribute
Abstract class for representing a property belonging to an agent.

Subclasses define the behaviour, setter and getter of the property using an AgentContext.

  • Constructor Details

    • AgentProperty

      public AgentProperty(String name, boolean isLogged, AttributeAccessLevel accessLevel, Class<T> type)
      Constructs a new agent property with the specified name, logging flag, access level and value type.
      Parameters:
      name - the name of the property, used to identify it within its attribute set
      isLogged - whether the property's value is logged as the model progresses
      accessLevel - the access level of the property, determining whether other entities may read it
      type - the class of the value the property carries