Katana Plug-in APIs 0.1

FnRenderServicesSuite.h

00001 // Copyright (c) 2016 The Foundry Visionmongers Ltd.
00002 #ifndef FNRENDER_FNRENDERSERVICESSUITE_H_
00003 #define FNRENDER_FNRENDERSERVICESSUITE_H_
00004 #include <stdint.h>
00005 #if !defined(_MSC_VER) || _MSC_VER >= 1800 /* VS 2013 */
00006 #include <stdbool.h>
00007 #endif
00008 
00009 typedef struct FnSocketIdSenderStruct* FnSocketIdSenderHandle;
00010 
00011 #define FnRenderServicesSuite_version 1
00012 
00013 enum
00014 {
00015     kFnSocketIdSenderStatus_OK = 0,
00016     kFnSocketIdSenderStatus_SocketError = 1,
00017     kFnSocketIdSenderStatus_UnknownError = 2,
00018 };
00019 typedef int FnSocketIdSenderStatus;
00020 
00021 struct FnRenderServicesSuite_v1
00022 {
00023     // SocketIDSender
00024     FnSocketIdSenderHandle (*socketIdSenderCreate)(const char* host,
00025                                                    int64_t frameId);
00026     void (*socketIdSenderDispose)(FnSocketIdSenderHandle handle);
00027     FnSocketIdSenderStatus (*socketIdSenderSendId)(
00028         FnSocketIdSenderHandle handle,
00029         uint64_t id,
00030         const char* objectName);
00031     FnSocketIdSenderStatus (*socketIdSenderGetIds)(
00032         FnSocketIdSenderHandle handle,
00033         int64_t* nextId,
00034         int64_t* maxId);
00035 
00036     // RendererInfo
00037     bool (*shaderTypeTagMatchesFilter)(const char* shaderTypeTag,
00038                                        const char* filter);
00039 };
00040 
00041 #endif  // FNRENDER_FNRENDERSERVICESSUITE_H_
 All Classes Functions Variables Typedefs Enumerations Enumerator