Material Definition Language API nvidia_logo_transpbg.gif Up
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
imdl_execution_context.h
Go to the documentation of this file.
1 /***************************************************************************************************
2  * Copyright 2019 NVIDIA Corporation. All rights reserved.
3  **************************************************************************************************/
6 
7 #ifndef MI_NEURAYLIB_IMDL_EXECUTION_CONTEXT_H
8 #define MI_NEURAYLIB_IMDL_EXECUTION_CONTEXT_H
9 
11 #include <mi/base/enums.h>
12 
13 namespace mi {
14 
15 namespace neuraylib {
16 
17 
22 class IMessage: public
24  base::Interface_declare<0x51965a01,0xcd3f,0x41fc,0xb1,0x8b,0x8,0x1c,0x7b,0x4b,0xba,0xb2>
25 {
26 public:
27 
31  enum Kind {
32 
47  // Undocumented, for alignment only.
48  MSG_FORCE_32_BIT = 0xffffffffU
49  };
50 
52  virtual Kind get_kind() const = 0;
53 
55  virtual base::Message_severity get_severity() const = 0;
56 
58  virtual const char* get_string() const = 0;
59 
61  virtual Sint32 get_code() const = 0;
62 
66  virtual Size get_notes_count() const = 0;
67 
69  virtual const IMessage* get_note(Size index) const = 0;
70 };
71 
99 
101  base::Interface_declare<0x28eb1f99,0x138f,0x4fa2,0xb5,0x39,0x17,0xb4,0xae,0xfb,0x1b,0xca>
102 {
103 public:
104 
106  virtual Size get_messages_count() const = 0;
107 
109  virtual Size get_error_messages_count() const = 0;
110 
112  virtual const IMessage* get_message(Size index) const = 0;
113 
115  virtual const IMessage* get_error_message(Size index) const = 0;
116 
117 
119  virtual Size get_option_count() const = 0;
120 
122  virtual const char* get_option_name(Size index) const = 0;
123 
125  virtual const char* get_option_type(const char* name) const = 0;
126 
134  virtual Sint32 get_option(const char* name, const char*& value) const = 0;
135 
143  virtual Sint32 get_option(const char* name, Float32& value) const = 0;
144 
152  virtual Sint32 get_option(const char* name, bool& value) const = 0;
153 
161  virtual Sint32 set_option(const char* name, const char* value) = 0;
162 
170  virtual Sint32 set_option(const char* name, Float32 value) = 0;
171 
180  virtual Sint32 set_option(const char* name, bool value) = 0;
181 };
182 
183  // end group mi_neuray_mdl_types
185 
186 } // namespace neuraylib
187 } // namespace mi
188 
189 #endif // MI_NEURAYLIB_IMDL_EXECUTION_CONTEXT_H