| 275 | } |
| 276 | |
| 277 | void |
| 278 | EffectInstance::setParallelRenderArgsTLS(double time, |
| 279 | ViewIdx view, |
| 280 | bool isRenderUserInteraction, |
| 281 | bool isSequential, |
| 282 | U64 nodeHash, |
| 283 | const AbortableRenderInfoPtr& abortInfo, |
| 284 | const NodePtr & treeRoot, |
| 285 | int visitsCount, |
| 286 | const boost::shared_ptr<NodeFrameRequest> & nodeRequest, |
| 287 | const OSGLContextPtr& glContext, |
| 288 | int textureIndex, |
| 289 | const TimeLine* timeline, |
| 290 | bool isAnalysis, |
| 291 | bool isDuringPaintStrokeCreation, |
| 292 | const NodesList & rotoPaintNodes, |
| 293 | RenderSafetyEnum currentThreadSafety, |
| 294 | PluginOpenGLRenderSupport currentOpenGLSupport, |
| 295 | bool doNanHandling, |
| 296 | bool draftMode, |
| 297 | const boost::shared_ptr<RenderStats> & stats) |
| 298 | { |
| 299 | EffectDataTLSPtr tls = _imp->tlsData->getOrCreateTLSData(); |
| 300 | std::list<boost::shared_ptr<ParallelRenderArgs> >& argsList = tls->frameArgs; |
| 301 | boost::shared_ptr<ParallelRenderArgs> args(new ParallelRenderArgs); |
| 302 | |
| 303 | args->time = time; |
| 304 | args->timeline = timeline; |
| 305 | args->view = view; |
| 306 | args->isRenderResponseToUserInteraction = isRenderUserInteraction; |
| 307 | args->isSequentialRender = isSequential; |
| 308 | args->request = nodeRequest; |
| 309 | if (nodeRequest) { |
| 310 | args->nodeHash = nodeRequest->nodeHash; |
| 311 | } else { |
| 312 | args->nodeHash = nodeHash; |
| 313 | } |
| 314 | assert(abortInfo); |
| 315 | args->abortInfo = abortInfo; |
| 316 | args->treeRoot = treeRoot; |
| 317 | args->visitsCount = visitsCount; |
| 318 | args->textureIndex = textureIndex; |
| 319 | args->isAnalysis = isAnalysis; |
| 320 | args->isDuringPaintStrokeCreation = isDuringPaintStrokeCreation; |
| 321 | args->currentThreadSafety = currentThreadSafety; |
| 322 | args->currentOpenglSupport = currentOpenGLSupport; |
| 323 | args->rotoPaintNodes = rotoPaintNodes; |
| 324 | args->doNansHandling = isAnalysis ? false : doNanHandling; |
| 325 | args->draftMode = draftMode; |
| 326 | args->tilesSupported = getNode()->getCurrentSupportTiles(); |
| 327 | args->stats = stats; |
| 328 | args->openGLContext = glContext; |
| 329 | argsList.push_back(args); |
| 330 | } |
| 331 | |
| 332 | bool |
| 333 | EffectInstance::getThreadLocalRotoPaintTreeNodes(NodesList* nodes) const |
no test coverage detected