MCPcopy Create free account
hub / github.com/NatronGitHub/Natron / tiledRenderingFunctor

Method tiledRenderingFunctor

Engine/EffectInstance.cpp:2141–2181  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

2139}
2140
2141EffectInstance::RenderingFunctorRetEnum
2142EffectInstance::Implementation::tiledRenderingFunctor(EffectInstance::Implementation::TiledRenderingFunctorArgs & args,
2143 const RectToRender & specificData,
2144 QThread* callingThread)
2145{
2146 ///Make the thread-storage live as long as the render action is called if we're in a newly launched thread in eRenderSafetyFullySafeFrame mode
2147 QThread* curThread = QThread::currentThread();
2148
2149 if (callingThread != curThread) {
2150 ///We are in the case of host frame threading, see kOfxImageEffectPluginPropHostFrameThreading
2151 ///We know that in the renderAction, TLS will be needed, so we do a deep copy of the TLS from the caller thread
2152 ///to this thread
2153 appPTR->getAppTLS()->copyTLS(callingThread, curThread);
2154 }
2155
2156
2157 EffectInstance::RenderingFunctorRetEnum ret = tiledRenderingFunctor(specificData,
2158 args.renderFullScaleThenDownscale,
2159 args.isSequentialRender,
2160 args.isRenderResponseToUserInteraction,
2161 args.firstFrame,
2162 args.lastFrame,
2163 args.preferredInput,
2164 args.mipMapLevel,
2165 args.renderMappedMipMapLevel,
2166 args.rod,
2167 args.time,
2168 args.view,
2169 args.par,
2170 args.byPassCache,
2171 args.outputClipPrefDepth,
2172 args.outputClipPrefsComps,
2173 args.compsNeeded,
2174 args.processChannels,
2175 args.planes);
2176
2177 //Exit of the host frame threading thread
2178 appPTR->getAppTLS()->cleanupTLSForThread();
2179
2180 return ret;
2181}
2182
2183EffectInstance::RenderingFunctorRetEnum
2184EffectInstance::Implementation::tiledRenderingFunctor(const RectToRender & rectToRender,

Callers 1

renderRoIInternalMethod · 0.80

Calls 15

getAppTLSMethod · 0.80
cleanupTLSForThreadMethod · 0.80
getOrCreateTLSDataMethod · 0.80
toCanonicalMethod · 0.80
toPixelEnclosingMethod · 0.80
isHostMaskingEnabledMethod · 0.80
emptyMethod · 0.80
copyTLSMethod · 0.45
getTLSDataMethod · 0.45
isNullMethod · 0.45
beginMethod · 0.45

Tested by

no test coverage detected