iiray_bridge_server.h File Reference
Description
Bridge server.
Code Example
iiray_bridge_server.h
/***************************************************************************************************
* Copyright 2024 NVIDIA Corporation. All rights reserved.
**************************************************************************************************/
#ifndef MI_NEURAYLIB_IIRAY_BRIDGE_SERVER_H
#define MI_NEURAYLIB_IIRAY_BRIDGE_SERVER_H
#include <mi/base/enums.h>
#include <mi/base/interface_declare.h>
namespace mi {
class IString;
namespace http { class IServer; }
namespace bridge {
class IApplication_session_handler;
class IServer_session;
class IIray_bridge_snapshot_handler : public
mi::base::Interface_declare<0x46e19aa2,0xf669,0x422d,0x96,0x83,0x69,0xbd,0x9b,0x69,0x7f,0x55>
{
public:
virtual bool on_snapshot_request( IServer_session* session, Uint32 context_id) = 0;
virtual Sint32
on_snapshot_creation( IServer_session* session, Uint32 context_id,
const char* scene_name, bool incremental, const char* suggested_snapshot_name,
const char* cb_file_data, IString* final_snapshot_name,
IString* error_message) = 0;
virtual void on_snapshot_error( IServer_session* session, Uint32 context_id,
Sint32 error_code, const char* error_message) = 0;
};
class IIray_bridge_application : public
mi::base::Interface_declare<0x199fadaf,0xf8c0,0x4d40,0xaf,0x20,0x95,0x6c,0x1d,0x73,0xf4,0xa4>
{
public:
virtual Sint32
set_disk_cache( const char* location) = 0;
virtual const char* get_disk_cache() const = 0;
virtual Sint32
open( bool enable_streaming = true) = 0;
virtual Sint32
close() = 0;
virtual Sint32
set_session_handler( IApplication_session_handler* handler) = 0;
virtual IApplication_session_handler* get_session_handler() const = 0;
virtual Sint32
set_log_forwarding_limit( base::Message_severity limit) = 0;
virtual base::Message_severity
get_log_forwarding_limit() const = 0;
virtual Sint32
set_snapshot_path( const char* path) = 0;
virtual const char* get_snapshot_path() const = 0;
virtual Sint32
set_snapshot_handler( IIray_bridge_snapshot_handler* handler) = 0;
};
class IIray_bridge_server : public
mi::base::Interface_declare<0x1acd50a4,0xbc89,0x4712,0x97,0xd,0x79,0xf2,0x99,0x8b,0x4,0x12>
{
public:
virtual IIray_bridge_application* create_application(
const char* application_path, http::IServer* http_server) = 0;
virtual const char* get_bridge_protocol_version() const = 0;
virtual Sint32
delete_snapshot(const char* snapshot_path) = 0;
virtual Sint32
delete_snapshot_from_string(const char* cb_data) = 0;
};
// end group mi_neuray_bridge_server
} // namespace bridge
} // namespace mi
#endif // MI_NEURAYLIB_IBRIDGE_SERVER_H
Namespaces
- namespace
- Common namespace for APIs of NVIDIA Advanced Rendering Center GmbH. More...
- namespace
- Namespace for the Bridge functionality of the neuray API. More...
- namespace
- Namespace for the HTTP server of the neuray API. More...