neuray API Programmer's Manual

icompound_shader_class.h File Reference

Description

Database element Compound_shader_class.

Code Example

icompound_shader_class.h

‎//*****************************************************************************
// Copyright 1986, 2016 NVIDIA Corporation. All rights reserved.
//*****************************************************************************
//*****************************************************************************

#ifndef MI_NEURAYLIB_ICOMPOUND_SHADER_H
#define MI_NEURAYLIB_ICOMPOUND_SHADER_H

#include <mi/neuraylib/ishader_class.h>
#include <mi/neuraylib/version.h>

namespace mi {

namespace neuraylib {

class MI_NEURAYLIB_DEPRECATED_CLASS_METASL(IShader);
class MI_NEURAYLIB_DEPRECATED_CLASS_METASL(IShader_graph);

class MI_NEURAYLIB_DEPRECATED_CLASS_METASL(ICompound_shader_class) :
    public base::Interface_declare<0xbbfc8692,0xaa49,0x4fd5,0xbb,0x1b,0x86,0x22,0xeb,0x72,0xc0,0x0a,
                                   neuraylib::MI_NEURAYLIB_DEPRECATED_CLASS_METASL(IShader_class)>
{
public:
    virtual Sint32 add_node( const char* node_name, const char* class_name) = 0;

    virtual MI_NEURAYLIB_DEPRECATED_CLASS_METASL(IShader)* edit_shader(
        const char* node_name) const = 0;

    virtual const MI_NEURAYLIB_DEPRECATED_CLASS_METASL(IShader)* access_shader(
        const char* node_name) const = 0;

    virtual MI_NEURAYLIB_DEPRECATED_CLASS_METASL(IShader_graph)* edit_shader_graph(
        const char* node_name) const = 0;

    virtual const MI_NEURAYLIB_DEPRECATED_CLASS_METASL(IShader_graph)* access_shader_graph(
        const char* node_name) const = 0;

    virtual Uint32 get_node_count() const = 0;

    virtual const char* get_node_name( Uint32 index) const = 0;
};

} // namespace neuraylib

#ifdef MI_NEURAYLIB_DEPRECATED_NAMESPACE_MI_TRANSITION
using neuraylib::MI_NEURAYLIB_DEPRECATED_CLASS_METASL(ICompound_shader_class);
using neuraylib::MI_NEURAYLIB_DEPRECATED_CLASS_METASL(IShader);
using neuraylib::MI_NEURAYLIB_DEPRECATED_CLASS_METASL(IShader_class);
using neuraylib::MI_NEURAYLIB_DEPRECATED_CLASS_METASL(IShader_graph);
#endif // MI_NEURAYLIB_DEPRECATED_NAMESPACE_MI_TRANSITION

} // namespace mi

#endif // MI_NEURAYLIB_ICOMPOUND_SHADER_H

Namespaces

namespace 
Common namespace for APIs of NVIDIA Advanced Rendering Center GmbH. More...
namespace 
Namespace for the neuray API. More...