当前位置: 首页>>代码示例>>C++>>正文


C++ Person::cancel_all_return_to_residence_events方法代码示例

本文整理汇总了C++中Person::cancel_all_return_to_residence_events方法的典型用法代码示例。如果您正苦于以下问题:C++ Person::cancel_all_return_to_residence_events方法的具体用法?C++ Person::cancel_all_return_to_residence_events怎么用?C++ Person::cancel_all_return_to_residence_events使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Person的用法示例。


在下文中一共展示了Person::cancel_all_return_to_residence_events方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: execute

void CirculateToTargetLocationNextDayEvent::execute() {
    Person* person = (Person*) dispatcher();
    person->set_location(target_location_);

    if (target_location_ != person->residence_location()) {
        //if person already have return trip then no need to reschedule it
        //elase
        //Schedule for a return trip in next several days base on gamma distribution
        if (!person->has_return_to_residence_event()) {
            int length_of_trip = 0;
            while (length_of_trip < 1) {
                length_of_trip = Model::RANDOM->random_gamma(Model::CONFIG->spatial_information().length_of_stay_theta, Model::CONFIG->spatial_information().length_of_stay_k);
            }

//            std::cout << length_of_trip << std::endl;
            ReturnToResidenceEvent::schedule_event(Model::SCHEDULER, person, Model::SCHEDULER->current_time() + length_of_trip);

        }
    } else {
        //return by chance so we cancel all return event
        //cancel return trip and do nothing
        person->cancel_all_return_to_residence_events();
    }



}
开发者ID:merlinvn,项目名称:OUCRU-Malaria-Sim-v3.0.2,代码行数:27,代码来源:CirculateToTargetLocationNextDayEvent.cpp


注:本文中的Person::cancel_all_return_to_residence_events方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。