MCPcopy Create free account
hub / github.com/devosoft/avida / AddEventMoveBetweenTargetsPred

Method AddEventMoveBetweenTargetsPred

avida-core/source/main/cDeme.cc:1099–1117  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1097
1098
1099void cDeme::AddEventMoveBetweenTargetsPred(int times)
1100{
1101 if (cell_events.GetSize() == 0) {
1102 cerr << "Error: An EventMoveBetweenTargets cannot be created until at least one CellEvent is added.\n";
1103 exit(1);
1104 }
1105
1106 Apto::Array<cDemeCellEvent*, Apto::Smart> alive_events;
1107
1108 for (int i = 0; i < cell_events.GetSize(); i++) {
1109 if (!cell_events[i].IsDead()) {
1110 alive_events.Push(&cell_events[i]);
1111 }
1112 }
1113
1114 cOrgMovementPred_EventMovedBetweenTargets* pred = new cOrgMovementPred_EventMovedBetweenTargets(alive_events, m_world->GetPopulation(), times);
1115 m_world->GetStats().AddMovementPredicate(pred);
1116 movement_pred_list.Push(pred);
1117}
1118
1119
1120void cDeme::AddEventEventNUniqueIndividualsMovedIntoTargetPred(int times)

Callers 1

AddDemePredMethod · 0.80

Calls 5

AddMovementPredicateMethod · 0.80
GetSizeMethod · 0.45
IsDeadMethod · 0.45
PushMethod · 0.45
GetStatsMethod · 0.45

Tested by

no test coverage detected