Lines Matching refs:rsc

247 bool Context::loadRuntime(const char* filename, Context* rsc) {
276 if (!(*halInit)(rsc, 0, 0)) {
291 Context *rsc = static_cast<Context *>(vrsc);
293 rsc->mNativeThreadId = gettid();
295 if (!rsc->isSynchronous()) {
296 setpriority(PRIO_PROCESS, rsc->mNativeThreadId, ANDROID_PRIORITY_DISPLAY);
298 rsc->mThreadPriority = ANDROID_PRIORITY_DISPLAY;
300 if (!rsc->isSynchronous()) {
301 setpriority(PRIO_PROCESS, rsc->mNativeThreadId, -4);
303 rsc->mThreadPriority = -4;
306 rsc->props.mLogTimes = getProp("debug.rs.profile") != 0;
307 rsc->props.mLogScripts = getProp("debug.rs.script") != 0;
308 rsc->props.mLogObjects = getProp("debug.rs.object") != 0;
309 rsc->props.mLogShaders = getProp("debug.rs.shader") != 0;
310 rsc->props.mLogShadersAttr = getProp("debug.rs.shader.attributes") != 0;
311 rsc->props.mLogShadersUniforms = getProp("debug.rs.shader.uniforms") != 0;
312 rsc->props.mLogVisual = getProp("debug.rs.visual") != 0;
313 rsc->props.mDebugMaxThreads = getProp("debug.rs.max-threads");
317 rsc->mContextType = RS_CONTEXT_TYPE_DEBUG;
331 } else if (rsc->mForceCpu || rsc->mIsGraphicsContext) {
333 } else if (rsc->getContextType() == RS_CONTEXT_TYPE_DEBUG) {
339 if (loadRuntime(OVERRIDE_RS_DRIVER_STRING, rsc)) {
353 if (!loadRuntime("libRSDriver.so", rsc)) {
355 rsc->setError(RS_ERROR_FATAL_DRIVER, "Failed loading RS driver");
360 if (rsdHalInit(rsc, 0, 0) != true) {
366 rsc->mHal.funcs.setPriority(rsc, rsc->mThreadPriority);
369 if (rsc->mIsGraphicsContext) {
370 if (!rsc->initGLThread()) {
371 rsc->setError(RS_ERROR_OUT_OF_MEMORY, "Failed initializing GL");
375 rsc->mStateRaster.init(rsc);
376 rsc->setProgramRaster(NULL);
377 rsc->mStateVertex.init(rsc);
378 rsc->setProgramVertex(NULL);
379 rsc->mStateFragment.init(rsc);
380 rsc->setProgramFragment(NULL);
381 rsc->mStateFragmentStore.init(rsc);
382 rsc->setProgramStore(NULL);
383 rsc->mStateFont.init(rsc);
384 rsc->setFont(NULL);
385 rsc->mStateSampler.init(rsc);
386 rsc->mFBOCache.init(rsc);
390 rsc->mRunning = true;
392 if (rsc->isSynchronous()) {
396 if (!rsc->mIsGraphicsContext) {
397 while (!rsc->mExit) {
398 rsc->mIO.playCoreCommands(rsc, -1);
410 while (!rsc->mExit) {
411 rsc->timerSet(RS_TIMER_IDLE);
414 if (!rsc->mRootScript.get() || !rsc->mHasSurface || rsc->mPaused) {
423 drawOnce |= rsc->mIO.playCoreCommands(rsc, displayEvent.getFd());
425 //ALOGE("vs2 time past %lld", (rsc->getTime() - eventBuffer[0].header.timestamp) / 1000000);
430 drawOnce |= rsc->mIO.playCoreCommands(rsc, -1);
433 if ((rsc->mRootScript.get() != NULL) && rsc->mHasSurface &&
434 (targetRate || drawOnce) && !rsc->mPaused) {
437 targetRate = ((rsc->runRootScript() + 15) / 16);
439 if (rsc->props.mLogVisual) {
440 rsc->displayDebugStats();
443 rsc->timerSet(RS_TIMER_CLEAR_SWAP);
444 rsc->mHal.funcs.swap(rsc);
445 rsc->timerFrame();
446 rsc->timerSet(RS_TIMER_INTERNAL);
447 rsc->timerPrint();
448 rsc->timerReset();
454 //ALOGV("%p RS Thread exiting", rsc);
457 if (rsc->mIsGraphicsContext) {
459 rsc->deinitEGL();
464 //ALOGV("%p RS Thread exited", rsc);
494 Context *rsc = (Context *)ctx;
495 if (rsc->watchdog.command && rsc->watchdog.file) {
496 ALOGE("RS watchdog timeout: %i %s line %i %s", rsc->watchdog.inRoot,
497 rsc->watchdog.command, rsc->watchdog.line, rsc->watchdog.file);
499 ALOGE("RS watchdog timeout: %i", rsc->watchdog.inRoot);
533 Context * rsc = new Context();
536 rsc->mForceCpu = true;
539 rsc->mSynchronous = true;
541 rsc->mContextType = ct;
542 rsc->mHal.flags = flags;
544 if (!rsc->initContext(dev, sc)) {
545 delete rsc;
548 return rsc;
552 Context * rsc = new Context();
553 rsc->mIsContextLite = true;
554 return rsc;
814 void rsi_ContextFinish(Context *rsc) {
815 rsc->finish();
818 void rsi_ContextBindRootScript(Context *rsc, RsScript vs) {
821 rsc->setRootScript(s);
825 void rsi_ContextBindSampler(Context *rsc, uint32_t slot, RsSampler vs) {
833 s->bindToContext(&rsc->mStateSampler, slot);
837 void rsi_ContextBindProgramStore(Context *rsc, RsProgramStore vpfs) {
839 rsc->setProgramStore(pfs);
842 void rsi_ContextBindProgramFragment(Context *rsc, RsProgramFragment vpf) {
844 rsc->setProgramFragment(pf);
847 void rsi_ContextBindProgramRaster(Context *rsc, RsProgramRaster vpr) {
849 rsc->setProgramRaster(pr);
852 void rsi_ContextBindProgramVertex(Context *rsc, RsProgramVertex vpv) {
854 rsc->setProgramVertex(pv);
857 void rsi_ContextBindFont(Context *rsc, RsFont vfont) {
859 rsc->setFont(font);
863 void rsi_AssignName(Context *rsc, RsObjectBase obj, const char *name, size_t name_length) {
865 rsc->assignName(ob, name, name_length);
868 void rsi_ObjDestroy(Context *rsc, void *optr) {
870 rsc->removeName(ob);
875 void rsi_ContextPause(Context *rsc) {
876 rsc->pause();
879 void rsi_ContextResume(Context *rsc) {
880 rsc->resume();
883 void rsi_ContextSetSurface(Context *rsc, uint32_t w, uint32_t h, RsNativeWindow sur) {
884 rsc->setSurface(w, h, sur);
888 void rsi_ContextSetPriority(Context *rsc, int32_t p) {
889 rsc->setPriority(p);
892 void rsi_ContextDump(Context *rsc, int32_t bits) {
893 ObjectBase::dumpAll(rsc);
896 void rsi_ContextDestroyWorker(Context *rsc) {
897 rsc->destroyWorkerThreadResources();
900 void rsi_ContextDestroy(Context *rsc) {
901 //ALOGE("%p rsContextDestroy", rsc);
902 rsContextDestroyWorker(rsc);
903 delete rsc;
904 //ALOGV("%p rsContextDestroy done", rsc);
907 RsMessageToClientType rsi_ContextPeekMessage(Context *rsc,
910 return rsc->peekMessageToClient(receiveLen, subID);
913 RsMessageToClientType rsi_ContextGetMessage(Context *rsc, void * data, size_t data_length,
918 return rsc->getMessageToClient(data, receiveLen, subID, data_length);
921 void rsi_ContextInitToClient(Context *rsc) {
922 rsc->initToClient();
925 void rsi_ContextDeinitToClient(Context *rsc) {
926 rsc->deinitToClient();
929 void rsi_ContextSendMessage(Context *rsc, uint32_t id, const uint8_t *data, size_t len) {
930 rsc->sendMessageToClient(data, RS_MESSAGE_TO_CLIENT_USER, id, len, true);
935 void LF_ObjDestroy_handcode(const Context *rsc, RsAsyncVoidPtr objPtr) {
936 if (((Context *)rsc)->isSynchronous()) {
937 rsi_ObjDestroy((Context *)rsc, objPtr);
954 ThreadIO *io = &((Context *)rsc)->mIO;
966 Context *rsc = Context::createContext(dev, NULL, ct, flags);
967 if (rsc) {
968 rsc->setTargetSdkVersion(sdkVersion);
970 return rsc;
979 Context *rsc = Context::createContext(dev, &sc);
980 if (rsc) {
981 rsc->setTargetSdkVersion(sdkVersion);
982 rsc->setDPI(dpi);
984 //ALOGV("%p rsContextCreateGL ret", rsc);
985 return rsc;