void __cdecl account_manager::search_profile_cb(GPConnection * connection, void * arg, void * param) { account_manager* tmp_inst = static_cast<account_manager*>(param); VERIFY(tmp_inst); GPProfileSearchResponseArg* tmp_arg = static_cast<GPProfileSearchResponseArg*>(arg); found_email_cb tmp_cb = tmp_inst->m_found_email_cb; tmp_inst->m_found_email_cb.clear(); if (tmp_arg->result != GP_NO_ERROR) { tmp_cb(false, CGameSpy_GP::TryToTranslate(tmp_arg->result).c_str()); return; } if (tmp_arg->numMatches == 0) { tmp_cb(false, ""); return; } GPProfileSearchMatch* first_match = tmp_arg->matches; VERIFY(first_match->nick); tmp_cb(true, first_match->nick); }
void __cdecl account_manager::user_nicks_cb (GPConnection * connection, void * arg, void * param) { account_manager* tmp_inst = static_cast<account_manager*>(param); VERIFY(tmp_inst); GPGetUserNicksResponseArg* tmp_arg = static_cast<GPGetUserNicksResponseArg*>(arg); account_profiles_cb tmp_cb = tmp_inst->m_account_profiles_cb; tmp_inst->m_account_profiles_cb.clear(); if (tmp_arg->result != GP_NO_ERROR) { tmp_cb(0, CGameSpy_GP::TryToTranslate(tmp_arg->result).c_str()); return; } for (int i = 0; i < tmp_arg->numNicks; ++i) { tmp_inst->m_result_profiles.push_back(tmp_arg->nicks[i]); tmp_inst->m_result_profiles_ptrs.push_back( tmp_inst->m_result_profiles.back().c_str() ); } tmp_cb(tmp_arg->numNicks, ""); }
// send stop condition void i2cf_wstop() { TWCR = (1<<TWINT) | (1<<TWEN) | (1<<TWSTO) | (1<<TWIE); i2c_ready = 1; i2c_next = i2c_none; i2c_state = 9; sei(); if(i2c_w_callback) { void (*tmp_cb)(void) = i2c_w_callback; i2c_w_callback = 0; tmp_cb(); } }
void __cdecl account_manager::unicks_suggestion_cb(GPConnection * connection, void * arg, void * param) { account_manager* tmp_inst = static_cast<account_manager*>(param); VERIFY(tmp_inst); GPSuggestUniqueNickResponseArg* tmp_arg = static_cast<GPSuggestUniqueNickResponseArg*>(arg); VERIFY(tmp_arg); suggest_nicks_cb tmp_cb = tmp_inst->m_suggest_nicks_cb; tmp_inst->m_suggest_nicks_cb.clear(); if (tmp_arg->result != GP_NO_ERROR) { tmp_cb(0, CGameSpy_GP::TryToTranslate(tmp_arg->result).c_str()); return; } for (int i = 0; i < tmp_arg->numSuggestedNicks; ++i) { tmp_inst->m_suggested_nicks.push_back (tmp_arg->suggestedNicks[i]); tmp_inst->m_suggested_nicks_ptrs.push_back (tmp_inst->m_suggested_nicks.back().c_str()); } tmp_cb(tmp_arg->numSuggestedNicks, ""); }