NVIDIA Iray API
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
ishader_graph_class.h
Go to the documentation of this file.
1 //*****************************************************************************
2 // Copyright 1986, 2014 NVIDIA Corporation. All rights reserved.
3 //*****************************************************************************
6 //*****************************************************************************
7 
8 #ifndef MI_NEURAYLIB_ISHADER_GRAPH_CLASS_H
9 #define MI_NEURAYLIB_ISHADER_GRAPH_CLASS_H
10 
12 
13 namespace mi {
14 
15 class IShader;
16 class IShader_graph;
17 class IAttribute_container;
18 
23 class IShader_graph_class :
383  public base::Interface_declare<0x167536d2,0x1815,0x4496,0x8a,0xfb,0x64,0xec,0x78,0x28,0x2a,0xb3,
384  IScene_element>
385 {
386 public:
407  virtual Sint32 create_metasl_graph( const char* name, Uint8 privacy = 0) const = 0;
408 
427  virtual Sint32 create_shader_graph( const char* name, Uint8 privacy = 0) const = 0;
428 
433  virtual const IAttribute_container* access_input_parameters() const = 0;
434 
453  virtual Sint32 add_node( const char* node_name, const char* class_name) = 0;
454 
473  virtual Sint32 add_export( const char* node_name, const char* class_name) = 0;
474 
486  virtual const IShader* access_shader( const char* node_name) const = 0;
487 
500  virtual IShader* edit_shader( const char* node_name) const = 0;
501 
512  virtual const IShader_graph* access_shader_graph( const char* node_name) const = 0;
513 
525  virtual IShader_graph* edit_shader_graph( const char* node_name) const = 0;
526 
531  virtual const char* get_filename() const = 0;
532 };
533  // end group mi_neuray_shaders
535 
536 } // namespace mi
537 
538 #endif // MI_NEURAYLIB_ISHADER_GRAPH_CLASS_H