Class Individual

java.lang.Object
org.episteme.natural.biology.SocialEntity
org.episteme.natural.biology.Individual
All Implemented Interfaces:
Serializable, Commented, ComprehensiveIdentification, Identified<Identification>, Named, Positioned<Place>, SimulationAgent
Direct Known Subclasses:
Human

public class Individual extends SocialEntity implements Positioned<Place>
Represents an individual organism - a single instance of a species.
See Also:
  • Constructor Details

  • Method Details

    • getDescendants

      public Set<Individual> getDescendants()
    • getAncestors

      public Set<Individual> getAncestors()
    • isDescendantOf

      public boolean isDescendantOf(Individual suspectedAncestor)
    • isAncestorOf

      public boolean isAncestorOf(Individual suspectedDescendant)
    • getGenealogicalDistance

      public int getGenealogicalDistance(Individual other)
    • getSpecies

      public Species getSpecies()
    • getSex

      public BiologicalSex getSex()
    • getBirthDate

      public LocalDate getBirthDate()
    • getDeathDate

      public LocalDate getDeathDate()
    • setDeathDate

      public void setDeathDate(LocalDate deathDate)
    • getLifeStage

      public LifeStage getLifeStage()
    • setLifeStage

      public void setLifeStage(LifeStage stage)
    • getReproductionMode

      public ReproductionMode getReproductionMode()
    • setReproductionMode

      public void setReproductionMode(ReproductionMode mode)
    • getPosition

      public Place getPosition()
      Description copied from interface: Positioned
      Returns the position of this entity.
      Specified by:
      getPosition in interface Positioned<Place>
      Returns:
      the position.
    • setPosition

      public void setPosition(Place place)
    • getTerritory

      public Place getTerritory()
    • setTerritory

      public void setTerritory(Place territory)
    • addRole

      public void addRole(Object role)
    • getParents

      public Set<Individual> getParents()
    • addParent

      public void addParent(Individual parent)
    • getChildren

      public Set<Individual> getChildren()
    • addChild

      public void addChild(Individual child)
    • addPathology

      public void addPathology(String pathologyName)
    • getPathologies

      public Set<String> getPathologies()
    • getBiographySummary

      public String getBiographySummary()
    • setBiographySummary

      public void setBiographySummary(String summary)
    • addAvailableBehavior

      public void addAvailableBehavior(Behavior behavior)
    • getAvailableBehaviors

      public Set<Behavior> getAvailableBehaviors()
    • removeAvailableBehavior

      public void removeAvailableBehavior(Behavior behavior)
    • isAlive

      public boolean isAlive()
    • getAge

      public int getAge()
    • die

      public void die(LocalDate date)
    • isSiblingOf

      public boolean isSiblingOf(Individual other)
    • getSiblings

      public List<Individual> getSiblings()
    • clone

      public Individual clone(String newId)
    • calculateInbreedingCoefficient

      public Real calculateInbreedingCoefficient()
    • calculateRelationshipCoefficient

      public Real calculateRelationshipCoefficient(Individual other)
    • calculateSuccessionOrder

      public List<Individual> calculateSuccessionOrder(boolean malePriority)
    • equals

      public boolean equals(Object o)
      Overrides:
      equals in class Object
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object
    • toString

      public String toString()
      Overrides:
      toString in class Object
    • processEvent

      public void processEvent(Event event)
      Description copied from interface: SimulationAgent
      Process an event delivered to this agent.
      Specified by:
      processEvent in interface SimulationAgent
      Specified by:
      processEvent in class SocialEntity
      Parameters:
      event - The event to process