Exemple #1
0
static void sfw_be_rem_change (RemReader_t *rrp, Change_t *cp)
{
	ctrc_printd (RTPS_ID, RTPS_SFW_BE_REM, &rrp, sizeof (rrp));
	prof_start (rtps_bw_rem);

	RR_SIGNAL (rrp, "BE-RemChange");

#ifdef RTPS_MARKERS
	if (rrp->rr_writer->endpoint.mark_rmch)
		rtps_marker_notify (rrp->rr_writer->endpoint.endpoint, EM_REM_CHANGE, "sfw_be_rem_change");
#endif
	change_remove (rrp, cp);
	prof_stop (rtps_bw_rem, 1);
	CACHE_CHECK (&rrp->rr_writer->endpoint, "sfw_be_rem_change");
}
Exemple #2
0
bool Game::update_game(std::string message)
{
    Json::Value root;
    Json::Reader reader;
    reader.parse(message,root,false);

    if(root["type"].asString() != "changes")
    {
        return false;
    }

    Json::Value changes = root["args"]["changes"];
    std::stringstream convert;

    for(int i = 0; i < changes.size(); i++)
    {
        convert<<changes[i];
        if(changes[i]["action"].asString() == "add")
        {
            change_add(convert.str());
        }
        else if(changes[i]["action"].asString() == "remove")
        {
            change_remove(convert.str());
        }
        else if(changes[i]["action"].asString() == "update")
        {
            change_update(convert.str());
        }
        else if(changes[i]["action"].asString() == "global_update")
        {
            change_global_update(convert.str());
        }
        convert.str(std::string());
    }

    return true;
}