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

Function constructor

src/IECoreScene/bindings/ShaderNetworkBinding.cpp:52–77  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

50{
51
52ShaderNetworkPtr constructor( dict shaders, list connections, object output )
53{
54 ShaderNetworkPtr result = new ShaderNetwork;
55
56 list items = shaders.items();
57 for( size_t i = 0, e = len( items ); i < e; ++i )
58 {
59 InternedString handle = extract<const char *>( items[i][0] )();
60 const Shader &shader = extract<const Shader &>( items[i][1] )();
61 result->addShader( handle, &shader );
62 }
63
64 for( stl_input_iterator<object> it( connections ), eIt; it != eIt; ++it )
65 {
66 ShaderNetwork::Connection c = extract<ShaderNetwork::Connection>( *it );
67 result->addConnection( c );
68 }
69
70 if( output != object() )
71 {
72 const ShaderNetwork::Parameter o = extract<ShaderNetwork::Parameter>( output );
73 result->setOutput( o );
74 }
75
76 return result;
77}
78
79const char *addShader( ShaderNetwork &network, const IECore::InternedString &handle, const Shader &shader )
80{

Callers

nothing calls this directly

Calls 5

lenFunction · 0.70
itemsMethod · 0.45
addShaderMethod · 0.45
addConnectionMethod · 0.45
setOutputMethod · 0.45

Tested by

no test coverage detected