NVIDIA Iray API Home  Up
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
ibridge_video_server.h
Go to the documentation of this file.
1 //*****************************************************************************
2 // Copyright 1986, 2016 NVIDIA Corporation. All rights reserved.
3 //*****************************************************************************
6 //*****************************************************************************
7 
8 #ifndef MI_UNPUBLISHED_BRIDGE_VIDEO_SERVER_H
9 #define MI_UNPUBLISHED_BRIDGE_VIDEO_SERVER_H
10 
12 #include <mi/neuraylib/typedefs.h>
13 #include <mi/neuraylib/version.h>
14 
15 namespace mi {
16 
17 class IString;
18 
19 namespace neuraylib { class IBuffer; class ICanvas; }
20 
21 namespace bridge {
22 
23 class IVideo_source;
24 
29 class IServer_video_context : public
42  mi::base::Interface_declare<0x9f1c260c,0x43a7,0x439e,0x9a,0x9f,0xb0,0xc0,0x24,0xc4,0xdc,0xbe>
43 {
44 public:
54  virtual void frame_ready() = 0;
55 
60  virtual void set_video_source( IVideo_source* video_source) = 0;
61 
63  virtual IVideo_source* get_video_source() const = 0;
64 
84  virtual Sint32 set_video_format( const char* format) = 0;
85 
89  virtual const IString* get_video_format() const = 0;
90 
111  virtual Sint32 set_frame_rate( Uint32 frame_rate) = 0;
112 
116  virtual Uint32 get_frame_rate() const = 0;
117 
134  virtual Sint32 set_bit_rate( Uint32 bit_rate) = 0;
135 
139  virtual Uint32 get_bit_rate() const = 0;
140 
153  virtual Sint32 set_max_pending_frames( Uint32 count) = 0;
154 
156  virtual Uint32 get_max_pending_frames() const = 0;
157 
167  virtual void report_progress( Float64 value, const char* area, const char* message) = 0;
168 
177  virtual void report_error( Sint32 error_code, const char* error_message) = 0;
178 
180  virtual void reset() = 0;
181 
187  virtual void close() = 0;
188 
190  virtual Uint32 get_id() const = 0;
191 };
192 
197 class IVideo_source : public
198  mi::base::Interface_declare<0x972224a4,0xa63b,0x42ce,0x96,0xfe,0xe1,0x33,0xf9,0x81,0x1c,0x64>
199 {
200 public:
220 
230  virtual void video_error( Sint32 error_code, const char* message) = 0;
231 
238  virtual void video_context_closed( Sint32 reason) = 0;
239 };
240  // end group mi_neuray_bridge_server
242 
243 } // namespace bridge
244 
245 #ifdef MI_NEURAYLIB_DEPRECATED_NAMESPACE_MI_TRANSITION
246 using neuraylib::IBuffer;
247 #endif // MI_NEURAYLIB_DEPRECATED_NAMESPACE_MI_TRANSITION
248 
249 } // namespace mi
250 
251 #endif // MI_UNPUBLISHED_BRIDGE_VIDEO_SERVER_H