Ejemplo n.º 1
0
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);
}
Ejemplo n.º 2
0
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, "");
}
Ejemplo n.º 3
0
// 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();
   } 
}
Ejemplo n.º 4
0
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, "");
}