MCPcopy Create free account
hub / github.com/ImageEngine/cortex / isJoinAdapter

Function isJoinAdapter

src/IECoreScene/ShaderNetworkAlgo.cpp:307–334  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

305}
306
307bool isJoinAdapter( const Shader *shader, std::array<InternedString, 4> &inParameters, InternedString &outParameter )
308{
309 if( auto d = shader->blindData()->member<InternedStringVectorData>( g_joinAdapterInParameters ) )
310 {
311 auto o = shader->blindData()->member<InternedStringData>( g_joinAdapterOutParameter );
312 if( o )
313 {
314 for( size_t i = 0; i < inParameters.size(); ++i )
315 {
316 inParameters[i] = i < d->readable().size() ? d->readable()[i] : InternedString();
317 }
318 outParameter = o->readable();
319 return true;
320 }
321 }
322 else if( auto *b = shader->blindData()->member<BoolData>( componentConnectionAdapterLabel() ) )
323 {
324 // Legacy format.
325 if( b->readable() && shader->getName() == "MaterialX/mx_pack_color" )
326 {
327 inParameters = g_packInParameterNames;
328 outParameter = g_outParameterName;
329 return true;
330 }
331 }
332
333 return false;
334}
335
336} // namespace
337

Callers 1

Calls 4

InternedStringFunction · 0.85
blindDataMethod · 0.80
readableMethod · 0.80
sizeMethod · 0.45

Tested by

no test coverage detected