55 void removePerson(
unsigned int id);
58 std::size_t
getSize()
const {
return m_members.size(); }
61 std::size_t getActiveClusterMembers()
const;
64 std::size_t getInfectedCount()
const;
78 std::size_t
getId()
const {
return m_cluster_id; }
82 const std::vector<std::pair<Simulator::PersonType*, bool>>&
getMembers()
const {
return m_members; }
90 std::tuple<bool, size_t> sortMembers();
93 template<LogMode log_level,
bool track_index_case,
typename local_information_policy>
98 void updateMemberPresence();
101 std::size_t m_cluster_id;
103 std::size_t m_index_immune;
104 std::vector<std::pair<Simulator::PersonType*, bool>> m_members;
108 static std::array<ContactProfile, numOfClusterTypes()> g_profiles;
GeoCoordinate getLocation() const
Return the geo coordinates (latitude-longitude) of the cluster.
double getContactRate(const Simulator::PersonType *p) const
Get basic contact rate in this cluster.
double getAge() const
Get the age.
ClusterType getClusterType() const
Return the type of this cluster.
Time Dependent Person DataType.
std::size_t toSizeType(ClusterType c)
Cast for array access.
Header file for the Person class.
std::size_t getSize() const
Return number of persons in this cluster.
Header for the Simulator class.
Header file for the Loader class for the checkpointing functionality.
Forward declaration of class Person.
const std::vector< std::pair< Simulator::PersonType *, bool > > & getMembers() const
Get the members of this vector Rather for testing purposes.
Actual contacts and transmission in cluster (primary template).
Definition of ClusterType.
std::size_t getId() const
Get the ID of this cluster.
Header for the LogMode class.
Represents a location for social contacts, an group of people.
unsigned int effectiveAge(unsigned int age)
Effective age (topping of at maximum).
ClusterType
Enumerates the cluster types.