void EndClinicalDueToDrugResistanceEvent::execute() { Person* person = (Person*) dispatcher(); if (person->all_clonal_parasite_populations()->size() == 0) { person->change_state_when_no_parasite_in_blood(); } else { //still have parasite in blood person->immune_system()->set_increase(true); person->set_host_state(Person::ASYMPTOMATIC); if (person->all_clonal_parasite_populations()->contain(clinical_caused_parasite_)) { clinical_caused_parasite_->set_last_update_log10_parasite_density(Model::CONFIG->log_parasite_density_level().log_parasite_density_asymptomatic); person->determine_relapse_or_not(clinical_caused_parasite_); } // person->determine_relapse_or_not(clinical_caused_parasite_); // person->determine_clinical_or_not(clinical_caused_parasite_); // if (clinical_caused_parasite_->last_update_log10_parasite_density() < Model::CONFIG->log_parasite_density_level().log_parasite_density_asymptomatic) { // std::cout << clinical_caused_parasite_->last_update_log10_parasite_density()<< std::endl; // assert(false); // } // clinical_caused_parasite_->set_last_update_log10_parasite_density(Model::CONFIG->log_parasite_density_level().log_parasite_density_asymptomatic); // clinical_caused_parasite_->set_update_function(Model::MODEL->immunity_clearance_update_function()); // // std::cout << "hello" << std::endl; } }
void EndClinicalEvent::execute() { Person* person = (Person*) dispatcher(); if (person->all_clonal_parasite_populations()->size() == 0) { person->change_state_when_no_parasite_in_blood(); } else { //still have parasite in blood person->immune_system()->set_increase(true); person->set_host_state(Person::ASYMPTOMATIC); person->determine_relapse_or_not(clinical_caused_parasite_); } }