/**
 * SayHello ---- 调用 Java 方法
 */
void PrintTraceInfo(const char *aStrToPrint) {
	//获取当前线程的jniEnv
	JNIEnv *jniEnv;
	(*gJvm)->GetEnv(gJvm, (void **)&jniEnv, JNI_VERSION_1_6);
	if(jniEnv == NULL){
		__android_log_print(ANDROID_LOG_INFO, "JNIMsg", "get jniEnv from currentThread null...." );
		return;
	}

	if(isFirst == 1) {
		TestProvider = NULL;
		mTestProvider = NULL;
		printTraceInfo = NULL;
		__android_log_print(ANDROID_LOG_INFO, "JNIMsg", "init the provider info...." );
		int result = InitProvider(jniEnv);
		if(result != 1) {
			return;
		}
	}

	if(mTestProvider != NULL && printTraceInfo != NULL) {
		jstring jstrMSG = NULL;
		jstrMSG =(*jniEnv)->NewStringUTF(jniEnv, aStrToPrint);
		__android_log_print(ANDROID_LOG_INFO, "JNIMsg", "call java printTrackInfo begin...." );
		(*jniEnv)->CallVoidMethod(jniEnv, mTestProvider, printTraceInfo,jstrMSG);
		__android_log_print(ANDROID_LOG_INFO, "JNIMsg", "call java printTrackInfo after...." );
		(*jniEnv)->DeleteLocalRef(jniEnv, jstrMSG);
	}
}
示例#2
0
文件: quoteSvrSimu.cpp 项目: ongbe/TT
void QuoteServer::StartNewOrder(QuoteOrder *vOrder)
{
	m_vOrder = vOrder;	
	m_uiExpectProviderTotal = m_vOrder->uiProvidersTotal;
	m_uiActualProviderTotal = 0;
	time(&m_tOrderStartTime);
	InitProvider();

	m_status = DOING_TASK;
	
	return ;
}
示例#3
0
	void RadioManager::InitProviders ()
	{
		InitProvider (new RadioCustomStreams (this));

		auto pm = Core::Instance ().GetProxy ()->GetPluginsManager ();
		auto pileObjs = pm->GetAllCastableRoots<Media::IAudioPile*> ();
		for (auto pileObj : pileObjs)
		{
			auto pile = qobject_cast<Media::IAudioPile*> (pileObj);

			auto item = new QStandardItem (tr ("Search in %1")
					.arg (pile->GetServiceName ()));
			item->setIcon (pile->GetServiceIcon ());
			item->setEditable (false);
			item->setData (QVariant::fromValue (pileObj), RadioWidgetRole::PileObject);

			StationsModel_->appendRow (item);
		}

		auto providerObjs = pm->GetAllCastableRoots<Media::IRadioStationProvider*> ();
		for (auto provObj : providerObjs)
			InitProvider (provObj);
	}