Program Listing for OmniClient.h¶
↰ Return to documentation for OmniClient.h
// Copyright (c) 2020-2022, NVIDIA CORPORATION. All rights reserved.
//
// NVIDIA CORPORATION and its licensors retain all intellectual property
// and proprietary rights in and to this software, related documentation
// and any modifications thereto. Any use, reproduction, disclosure or
// distribution of this software and related documentation without an express
// license agreement from NVIDIA CORPORATION is strictly prohibited.
//
// clang-format off
#pragma once
#include "OmniClientAbi.h"
#include "OmniClientVersion.h"
#include <stdbool.h>
#include <stddef.h>
#include <stdint.h>
const uint64_t kOmniClientVersion = (uint64_t)OMNICLIENT_VERSION_MAJOR << 48 |
(uint64_t)OMNICLIENT_VERSION_MINOR << 32 |
(uint64_t)OMNICLIENT_VERSION_PATCH;
typedef enum
{
eOmniClientLogLevel_Debug,
eOmniClientLogLevel_Verbose,
eOmniClientLogLevel_Info,
eOmniClientLogLevel_Warning,
eOmniClientLogLevel_Error,
Count_eOmniClientLogLevel
} OmniClientLogLevel;
typedef void(OMNICLIENT_ABI* OmniClientLogCallback)
(char const* threadName, char const* component, OmniClientLogLevel level, char const* message)
OMNICLIENT_CALLBACK_NOEXCEPT;
OMNICLIENT_EXPORT(void)
omniClientSetLogCallback(OmniClientLogCallback callback)
OMNICLIENT_NOEXCEPT;
OMNICLIENT_EXPORT(void)
omniClientSetLogLevel(OmniClientLogLevel level)
OMNICLIENT_NOEXCEPT;
OMNICLIENT_EXPORT(char const*)
omniClientGetLogLevelString(OmniClientLogLevel level)
OMNICLIENT_NOEXCEPT;
OMNICLIENT_EXPORT(char)
omniClientGetLogLevelChar(OmniClientLogLevel level)
OMNICLIENT_NOEXCEPT;
OMNICLIENT_EXPORT(bool)
omniClientInitialize(uint64_t version)
OMNICLIENT_NOEXCEPT;
OMNICLIENT_EXPORT(void)
omniClientShutdown()
OMNICLIENT_NOEXCEPT;
OMNICLIENT_EXPORT(char const*)
omniClientGetVersionString()
OMNICLIENT_NOEXCEPT;
struct OmniClientContent
{
void* buffer;
size_t size;
void (*free)(void* buffer);
};
OMNICLIENT_EXPORT(struct OmniClientContent) omniClientAllocContent(size_t size) OMNICLIENT_NOEXCEPT;
OMNICLIENT_EXPORT(struct OmniClientContent) omniClientReferenceContent(void* buffer, size_t size) OMNICLIENT_NOEXCEPT;
OMNICLIENT_EXPORT(struct OmniClientContent) omniClientMoveContent(struct OmniClientContent* content) OMNICLIENT_NOEXCEPT;
OMNICLIENT_EXPORT(struct OmniClientContent) omniClientCopyContent(struct OmniClientContent const* content) OMNICLIENT_NOEXCEPT;
OMNICLIENT_EXPORT(void) omniClientFreeContent(struct OmniClientContent* content) OMNICLIENT_NOEXCEPT;
#ifdef __cplusplus
inline OmniClientContent omniClientMoveContent(OmniClientContent& content) noexcept
{
return omniClientMoveContent(&content);
}
inline OmniClientContent omniClientCopyContent(OmniClientContent const& content) noexcept
{
return omniClientCopyContent(&content);
}
inline void omniClientFreeContent(OmniClientContent& content) noexcept
{
omniClientFreeContent(&content);
}
#endif
typedef enum
{
eOmniClientConnectionStatus_Connecting,
eOmniClientConnectionStatus_Connected,
eOmniClientConnectionStatus_ConnectError,
eOmniClientConnectionStatus_Disconnected,
Count_eOmniClientConnectionStatus
} OmniClientConnectionStatus;
typedef void
(OMNICLIENT_ABI* OmniClientConnectionStatusCallback)(void* userData, char const* url, OmniClientConnectionStatus status)
OMNICLIENT_CALLBACK_NOEXCEPT;
OMNICLIENT_EXPORT(uint32_t)
omniClientRegisterConnectionStatusCallback(void* userData, OmniClientConnectionStatusCallback callback)
OMNICLIENT_NOEXCEPT;
OMNICLIENT_EXPORT(char const*)
omniClientGetConnectionStatusString(OmniClientConnectionStatus connectionStatus)
OMNICLIENT_NOEXCEPT;
typedef enum
{
eOmniClientFileStatus_Reading,
eOmniClientFileStatus_Writing,
eOmniClientFileStatus_Copying,
eOmniClientFileStatus_Moving,
eOmniClientFileStatus_Deleting,
eOmniClientFileStatus_LiveUpdateSending,
eOmniClientFileStatus_LiveUpdateReceived,
Count_eOmniClientFileStatus
} OmniClientFileStatus;
typedef void
(OMNICLIENT_ABI* OmniClientFileStatusCallback)(void* userData, char const* url, OmniClientFileStatus status, int percentage)
OMNICLIENT_CALLBACK_NOEXCEPT;
OMNICLIENT_EXPORT(uint32_t)
omniClientRegisterFileStatusCallback(void* userData, OmniClientFileStatusCallback callback)
OMNICLIENT_NOEXCEPT;
OMNICLIENT_EXPORT(char const*)
omniClientGetFileStatusString(OmniClientFileStatus fileStatus)
OMNICLIENT_NOEXCEPT;
OMNICLIENT_EXPORT(void)
omniClientUnregisterCallback(uint32_t handle)
OMNICLIENT_NOEXCEPT;
typedef uint64_t OmniClientRequestId;
static const OmniClientRequestId kInvalidRequestId = 0;
typedef enum
{
eOmniClientResult_Ok,
eOmniClientResult_OkLatest,
eOmniClientResult_OkNotYetFound,
eOmniClientResult_Error,
eOmniClientResult_ErrorConnection,
eOmniClientResult_ErrorNotSupported,
eOmniClientResult_ErrorAccessDenied,
eOmniClientResult_ErrorNotFound,
eOmniClientResult_ErrorBadVersion,
eOmniClientResult_ErrorAlreadyExists,
eOmniClientResult_ErrorSourceIsDest,
eOmniClientResult_ErrorAccessLost,
eOmniClientResult_ErrorLocked,
eOmniClientResult_ErrorBadRequest,
Count_eOmniClientResult
} OmniClientResult;
OMNICLIENT_EXPORT(char const*)
omniClientGetResultString(OmniClientResult result)
OMNICLIENT_NOEXCEPT;
OMNICLIENT_EXPORT(void)
omniClientStop(OmniClientRequestId requestId)
OMNICLIENT_NOEXCEPT;
OMNICLIENT_EXPORT(void)
omniClientWait(OmniClientRequestId requestId)
OMNICLIENT_NOEXCEPT;
OMNICLIENT_EXPORT(bool)
omniClientWaitFor(OmniClientRequestId requestId, uint64_t milliseconds)
OMNICLIENT_NOEXCEPT;
OMNICLIENT_EXPORT(void)
omniClientSetAlias(char const* src, char const* dst)
OMNICLIENT_NOEXCEPT;
OMNICLIENT_EXPORT(struct OmniIDLCPPInitializerReactor*)
omniClientGetReactor()
OMNICLIENT_NOEXCEPT;
OMNICLIENT_EXPORT(void)
omniClientAddBookmark(char const* name, char const* url)
OMNICLIENT_NOEXCEPT;
OMNICLIENT_EXPORT(void)
omniClientRemoveBookmark(char const* name)
OMNICLIENT_NOEXCEPT;
struct OmniClientBookmark
{
char const* name;
char const* url;
};
typedef void
(OMNICLIENT_ABI* OmniClientBookmarkCallback)(void* userData, struct OmniClientBookmark const* bookmarks, size_t numBookmarks)
OMNICLIENT_CALLBACK_NOEXCEPT;
OMNICLIENT_EXPORT(OmniClientRequestId)
omniClientListBookmarks(void* userData, OmniClientBookmarkCallback callback)
OMNICLIENT_NOEXCEPT;
struct OmniClientUrl
{
char const* scheme;
char const* user;
char const* host;
char const* port;
char const* path;
char const* query;
char const* fragment;
bool isRaw;
};
OMNICLIENT_EXPORT(struct OmniClientUrl*)
omniClientBreakUrl(char const* url)
OMNICLIENT_NOEXCEPT;
OMNICLIENT_EXPORT(struct OmniClientUrl*)
omniClientBreakUrlAbsolute(char const* url)
OMNICLIENT_NOEXCEPT;
OMNICLIENT_EXPORT(void)
omniClientFreeUrl(struct OmniClientUrl* url)
OMNICLIENT_NOEXCEPT;
OMNICLIENT_EXPORT(char*)
omniClientMakeUrl(struct OmniClientUrl const* url, char* buffer, size_t* bufferSize)
OMNICLIENT_NOEXCEPT;
OMNICLIENT_EXPORT(char*)
omniClientMakeFileUrl(char const* path, char* buffer, size_t* bufferSize)
OMNICLIENT_NOEXCEPT;
OMNICLIENT_EXPORT(char*)
omniClientNormalizeUrl(char const* url, char* buffer, size_t* bufferSize)
OMNICLIENT_NOEXCEPT;
OMNICLIENT_EXPORT(char*)
omniClientCombineUrls(char const* baseUrl, char const* otherUrl, char* buffer, size_t* bufferSize)
OMNICLIENT_NOEXCEPT;
OMNICLIENT_EXPORT(char*)
omniClientCombineWithBaseUrl(char const* otherUrl, char* buffer, size_t* bufferSize)
OMNICLIENT_NOEXCEPT;
OMNICLIENT_EXPORT(struct OmniClientUrl*)
omniClientCombineWithBaseUrl2(char const* otherUrl)
OMNICLIENT_NOEXCEPT;
OMNICLIENT_EXPORT(char*)
omniClientMakeRelativeUrl(char const* baseUrl, char const* otherUrl, char* buffer, size_t* bufferSize)
OMNICLIENT_NOEXCEPT;
OMNICLIENT_EXPORT(char*)
omniClientMakePrintable(char const* string, char* buffer, size_t* bufferSize)
OMNICLIENT_NOEXCEPT;
struct OmniClientCredentials
{
bool abort;
struct OmniClientContent token;
struct OmniClientContent username;
struct OmniClientContent password;
};
typedef bool
(OMNICLIENT_ABI* OmniClientAuthCallback)(void* userData, char const* prefix, struct OmniClientCredentials * credentials)
OMNICLIENT_CALLBACK_NOEXCEPT;
OMNICLIENT_EXPORT(uint32_t)
omniClientRegisterAuthCallback(void* userData, OmniClientAuthCallback callback)
OMNICLIENT_NOEXCEPT;
typedef void
(OMNICLIENT_ABI* OmniClientAuthenticationMessageBoxCallback)(void* userData, bool show, const char* server, uint32_t authHandle)
OMNICLIENT_CALLBACK_NOEXCEPT;
OMNICLIENT_EXPORT(void)
omniClientSetAuthenticationMessageBoxCallback(void* userData, OmniClientAuthenticationMessageBoxCallback callback)
OMNICLIENT_NOEXCEPT;
OMNICLIENT_EXPORT(void)
omniClientAuthenticationCancel(uint32_t authHandle)
OMNICLIENT_NOEXCEPT;
OMNICLIENT_EXPORT(void)
omniClientSignOut(char const* url)
OMNICLIENT_NOEXCEPT;
OMNICLIENT_EXPORT(void)
omniClientReconnect(const char* url)
OMNICLIENT_NOEXCEPT;
struct OmniClientServerInfo
{
char const* version;
char const* username;
char const* authToken;
bool cacheEnabled;
bool omniObjectsEnabled;
bool checkpointsEnabled;
};
typedef void
(OMNICLIENT_ABI* OmniClientGetServerInfoCallback)(void* userData, OmniClientResult result, struct OmniClientServerInfo const * info)
OMNICLIENT_CALLBACK_NOEXCEPT;
OMNICLIENT_EXPORT(OmniClientRequestId)
omniClientGetServerInfo(char const* url, void* userData, OmniClientGetServerInfoCallback callback)
OMNICLIENT_NOEXCEPT;
#define BIT(x) (1 << (x - 1))
typedef enum
{
fOmniClientAccess_Read = BIT(1),
fOmniClientAccess_Write = BIT(2),
fOmniClientAccess_Admin = BIT(3),
fOmniClientAccess_Full = fOmniClientAccess_Admin | fOmniClientAccess_Write | fOmniClientAccess_Read
} OmniClientAccessFlags;
typedef enum
{
fOmniClientItem_ReadableFile = BIT(1),
fOmniClientItem_WriteableFile = BIT(2),
fOmniClientItem_CanHaveChildren = BIT(3),
fOmniClientItem_DoesNotHaveChildren = BIT(4),
fOmniClientItem_IsMount = BIT(5),
fOmniClientItem_IsInsideMount = BIT(6),
fOmniClientItem_CanLiveUpdate = BIT(7),
fOmniClientItem_IsOmniObject = BIT(8),
fOmniClientItem_IsChannel = BIT(9),
fOmniClientItem_IsCheckpointed = BIT(10)
} OmniClientItemFlags;
#undef BIT
struct OmniClientListEntry
{
const char* relativePath;
uint32_t access;
uint32_t flags;
uint64_t size;
uint64_t modifiedTimeNs;
uint64_t createdTimeNs;
const char* modifiedBy;
const char* createdBy;
const char* version;
const char* hash;
const char* comment;
};
typedef void
(OMNICLIENT_ABI* OmniClientStatCallback)(void* userData, OmniClientResult result, struct OmniClientListEntry const* entry)
OMNICLIENT_CALLBACK_NOEXCEPT;
OMNICLIENT_EXPORT(OmniClientRequestId)
omniClientStat(char const* url, void* userData, OmniClientStatCallback callback)
OMNICLIENT_NOEXCEPT;
typedef enum
{
eOmniClientListEvent_Unknown,
eOmniClientListEvent_Created,
eOmniClientListEvent_Updated,
eOmniClientListEvent_Deleted,
eOmniClientListEvent_Metadata,
eOmniClientListEvent_Locked,
eOmniClientListEvent_Unlocked,
Count_eOmniClientListEvent
} OmniClientListEvent;
typedef void
(OMNICLIENT_ABI* OmniClientStatSubscribeCallback)(void* userData, OmniClientResult result, OmniClientListEvent listEvent, struct OmniClientListEntry const* entry)
OMNICLIENT_CALLBACK_NOEXCEPT;
OMNICLIENT_EXPORT(OmniClientRequestId)
omniClientStatSubscribe(char const* url, void* userData, OmniClientStatCallback callback, OmniClientStatSubscribeCallback subscribeCallback)
OMNICLIENT_NOEXCEPT;
typedef void
(OMNICLIENT_ABI* OmniClientResolveCallback)(void* userData, OmniClientResult result, struct OmniClientListEntry const* entry, char const* url)
OMNICLIENT_CALLBACK_NOEXCEPT;
OMNICLIENT_EXPORT(OmniClientRequestId)
omniClientResolve(char const* relativePath, char const* const* searchPaths, uint32_t numSearchPaths, void* userData, OmniClientResolveCallback callback)
OMNICLIENT_NOEXCEPT;
typedef void
(OMNICLIENT_ABI* OmniClientResolveSubscribeCallback)(void* userData, OmniClientResult result, OmniClientListEvent listEvent, struct OmniClientListEntry const* entry, char const* url)
OMNICLIENT_CALLBACK_NOEXCEPT;
OMNICLIENT_EXPORT(OmniClientRequestId)
omniClientResolveSubscribe(char const* relativePath, char const* const* searchPaths, uint32_t numSearchPaths, void* userData, OmniClientResolveCallback callback, OmniClientResolveSubscribeCallback subscribeCallback)
OMNICLIENT_NOEXCEPT;
OMNICLIENT_EXPORT(void)
omniClientAddDefaultSearchPath(char const* searchPath)
OMNICLIENT_NOEXCEPT;
OMNICLIENT_EXPORT(void)
omniClientRemoveDefaultSearchPath(char const* searchPath)
OMNICLIENT_NOEXCEPT;
OMNICLIENT_EXPORT(uint32_t)
omniClientGetDefaultSearchPaths(char const** searchPaths, uint32_t maxSearchPaths)
OMNICLIENT_NOEXCEPT;
OMNICLIENT_EXPORT(void)
omniClientPushBaseUrl(char const* baseUrl)
OMNICLIENT_NOEXCEPT;
OMNICLIENT_EXPORT(bool)
omniClientPopBaseUrl(char const* baseUrl)
OMNICLIENT_NOEXCEPT;
OMNICLIENT_EXPORT(char const*)
omniClientGetBaseUrl()
OMNICLIENT_NOEXCEPT;
typedef void
(OMNICLIENT_ABI* OmniClientListCallback)(void* userData, OmniClientResult result, uint32_t numEntries, struct OmniClientListEntry const* entries)
OMNICLIENT_CALLBACK_NOEXCEPT;
OMNICLIENT_EXPORT(OmniClientRequestId)
omniClientList(char const* url, void* userData, OmniClientListCallback callback)
OMNICLIENT_NOEXCEPT;
typedef void
(OMNICLIENT_ABI* OmniClientListSubscribeCallback)(void* userData, OmniClientResult result, OmniClientListEvent listEvent, struct OmniClientListEntry const* entry)
OMNICLIENT_CALLBACK_NOEXCEPT;
OMNICLIENT_EXPORT(OmniClientRequestId)
omniClientListSubscribe(char const* url, void* userData, OmniClientListCallback callback, OmniClientListSubscribeCallback subscribeCallback)
OMNICLIENT_NOEXCEPT;
typedef void
(OMNICLIENT_ABI* OmniClientDeleteCallback)(void* userData, OmniClientResult result)
OMNICLIENT_CALLBACK_NOEXCEPT;
OMNICLIENT_EXPORT(OmniClientRequestId)
omniClientDelete(char const* url, void* userData, OmniClientDeleteCallback callback)
OMNICLIENT_NOEXCEPT;
typedef void
(OMNICLIENT_ABI* OmniClientCopyCallback)(void* userData, OmniClientResult result)
OMNICLIENT_CALLBACK_NOEXCEPT;
typedef enum
{
eOmniClientCopy_ErrorIfExists,
eOmniClientCopy_Overwrite,
} OmniClientCopyBehavior;
OMNICLIENT_EXPORT(OmniClientRequestId)
omniClientCopy(char const* srcUrl, char const* dstUrl, void* userData, OmniClientCopyCallback callback, OmniClientCopyBehavior behavior OMNICLIENT_DEFAULT(eOmniClientCopy_ErrorIfExists), const char* message OMNICLIENT_DEFAULT(nullptr))
OMNICLIENT_NOEXCEPT;
typedef void
(OMNICLIENT_ABI* OmniClientMoveCallback)(void* userData, OmniClientResult result, bool copied)
OMNICLIENT_CALLBACK_NOEXCEPT;
OMNICLIENT_EXPORT(OmniClientRequestId)
omniClientMove(char const* srcUrl, char const* dstUrl, void* userData, OmniClientMoveCallback callback, OmniClientCopyBehavior behavior OMNICLIENT_DEFAULT(eOmniClientCopy_ErrorIfExists), const char* message OMNICLIENT_DEFAULT(nullptr))
OMNICLIENT_NOEXCEPT;
typedef void
(OMNICLIENT_ABI* OmniClientCreateFolderCallback)(void* userData, OmniClientResult result)
OMNICLIENT_CALLBACK_NOEXCEPT;
OMNICLIENT_EXPORT(OmniClientRequestId)
omniClientCreateFolder(char const* url, void* userData, OmniClientCreateFolderCallback callback)
OMNICLIENT_NOEXCEPT;
typedef void
(OMNICLIENT_ABI* OmniClientWriteFileCallback)(void* userData, OmniClientResult result)
OMNICLIENT_CALLBACK_NOEXCEPT;
OMNICLIENT_EXPORT(OmniClientRequestId)
omniClientWriteFile(char const* url, struct OmniClientContent* content, void* userData, OmniClientWriteFileCallback callback, const char* message OMNICLIENT_DEFAULT(nullptr))
OMNICLIENT_NOEXCEPT;
typedef void
(OMNICLIENT_ABI* OmniClientReadFileCallback)(void* userData, OmniClientResult result, char const* version, struct OmniClientContent* content)
OMNICLIENT_CALLBACK_NOEXCEPT;
OMNICLIENT_EXPORT(OmniClientRequestId)
omniClientReadFile(char const* url, void* userData, OmniClientReadFileCallback callback)
OMNICLIENT_NOEXCEPT;
typedef void
(OMNICLIENT_ABI* OmniClientGetLocalFileCallback)(void* userData, OmniClientResult result, char const* localFilePath)
OMNICLIENT_CALLBACK_NOEXCEPT;
OMNICLIENT_EXPORT(OmniClientRequestId)
omniClientGetLocalFile(char const* url, void* userData, OmniClientGetLocalFileCallback callback)
OMNICLIENT_NOEXCEPT;
typedef enum
{
eOmniClientChannelEvent_Error, //< An unknown error occured
eOmniClientChannelEvent_Message, //< Someone sent a message
eOmniClientChannelEvent_Hello, //< You joined a channel that someone else was already in, and they said hello.
eOmniClientChannelEvent_Join, //< Someone joined the channel
eOmniClientChannelEvent_Left, //< Someone left the channel (as of Nucleus 114, the server does not appear to send these)
eOmniClientChannelEvent_Deleted, //< Someone deleted the channel or changed ACLs so you no longer have access.
Count_eOmniClientChannelEvent
} OmniClientChannelEvent;
typedef void
(OMNICLIENT_ABI* OmniClientJoinChannelCallback)(void* userData, OmniClientResult result, OmniClientChannelEvent eventType, char const* from, struct OmniClientContent* content)
OMNICLIENT_CALLBACK_NOEXCEPT;
OMNICLIENT_EXPORT(OmniClientRequestId)
omniClientJoinChannel(char const* url, void* userData, OmniClientJoinChannelCallback callback)
OMNICLIENT_NOEXCEPT;
typedef void
(OMNICLIENT_ABI* OmniClientSendMessageCallback)(void* userData, OmniClientResult result)
OMNICLIENT_CALLBACK_NOEXCEPT;
OMNICLIENT_EXPORT(OmniClientRequestId)
omniClientSendMessage(OmniClientRequestId joinRequestId, struct OmniClientContent* content, void* userData, OmniClientSendMessageCallback callback)
OMNICLIENT_NOEXCEPT;
struct OmniClientAclEntry
{
const char* name;
uint32_t access;
};
typedef void
(OMNICLIENT_ABI* OmniClientGetAclsCallback)(void* userData, OmniClientResult result, uint32_t numEntries, struct OmniClientAclEntry* entries)
OMNICLIENT_CALLBACK_NOEXCEPT;
OMNICLIENT_EXPORT(OmniClientRequestId)
omniClientGetAcls(char const* url, void* userData, OmniClientGetAclsCallback callback)
OMNICLIENT_NOEXCEPT;
typedef void
(OMNICLIENT_ABI* OmniClientSetAclsCallback)(void* userData, OmniClientResult result)
OMNICLIENT_CALLBACK_NOEXCEPT;
OMNICLIENT_EXPORT(OmniClientRequestId)
omniClientSetAcls(char const* url, uint32_t numEntries, struct OmniClientAclEntry* entries, void* userData, OmniClientSetAclsCallback callback)
OMNICLIENT_NOEXCEPT;
typedef void
(OMNICLIENT_ABI* OmniClientLockCallback)(void* userData, OmniClientResult result)
OMNICLIENT_CALLBACK_NOEXCEPT;
OMNICLIENT_EXPORT(OmniClientRequestId)
omniClientLock(char const* url, void* userData, OmniClientLockCallback callback)
OMNICLIENT_NOEXCEPT;
typedef void
(OMNICLIENT_ABI* OmniClientUnlockCallback)(void* userData, OmniClientResult result)
OMNICLIENT_CALLBACK_NOEXCEPT;
OMNICLIENT_EXPORT(OmniClientRequestId)
omniClientUnlock(char const* url, void* userData, OmniClientUnlockCallback callback)
OMNICLIENT_NOEXCEPT;
typedef void
(OMNICLIENT_ABI* OmniClientCreateCheckpointCallback)(void* userData, OmniClientResult result, char const * checkpointQuery)
OMNICLIENT_CALLBACK_NOEXCEPT;
OMNICLIENT_EXPORT(OmniClientRequestId)
omniClientCreateCheckpoint(char const* url, char const* comment, bool force, void* userData, OmniClientCreateCheckpointCallback callback)
OMNICLIENT_NOEXCEPT;
typedef void
(OMNICLIENT_ABI* OmniClientListCheckpointsCallback)(void* userData, OmniClientResult result, uint32_t numEntries, struct OmniClientListEntry const* entries)
OMNICLIENT_CALLBACK_NOEXCEPT;
OMNICLIENT_EXPORT(OmniClientRequestId)
omniClientListCheckpoints(char const* url, void* userData, OmniClientListCheckpointsCallback callback)
OMNICLIENT_NOEXCEPT;
struct OmniClientBranchAndCheckpoint
{
char const* branch;
uint64_t checkpoint;
};
OMNICLIENT_EXPORT(struct OmniClientBranchAndCheckpoint *)
omniClientGetBranchAndCheckpointFromQuery(const char* query)
OMNICLIENT_NOEXCEPT;
OMNICLIENT_EXPORT(void)
omniClientFreeBranchAndCheckpoint(struct OmniClientBranchAndCheckpoint *)
OMNICLIENT_NOEXCEPT;
OMNICLIENT_EXPORT(char*)
omniClientMakeQueryFromBranchAndCheckpoint(char const* branch, uint64_t checkpoint, char* buffer, size_t* bufferSize)
OMNICLIENT_NOEXCEPT;
typedef void
(OMNICLIENT_ABI* OmniClientGetGroupsCallback)(void* userData, OmniClientResult result, uint64_t count, const char** groups)
OMNICLIENT_CALLBACK_NOEXCEPT;
OMNICLIENT_EXPORT(OmniClientRequestId)
omniClientGetGroups(char const* url, void* userData, OmniClientGetGroupsCallback callback)
OMNICLIENT_NOEXCEPT;
typedef void
(OMNICLIENT_ABI* OmniClientGetGroupUsersCallback)(void* userData, OmniClientResult result, uint64_t count, const char** users)
OMNICLIENT_CALLBACK_NOEXCEPT;
OMNICLIENT_EXPORT(OmniClientRequestId)
omniClientGetGroupUsers(char const* url, const char* group, void* userData, OmniClientGetGroupUsersCallback callback)
OMNICLIENT_NOEXCEPT;
typedef void
(OMNICLIENT_ABI* OmniClientCreateGroupCallback)(void* userData, OmniClientResult result)
OMNICLIENT_CALLBACK_NOEXCEPT;
OMNICLIENT_EXPORT(OmniClientRequestId)
omniClientCreateGroup(char const* url, const char* group, void* userData, OmniClientCreateGroupCallback callback)
OMNICLIENT_NOEXCEPT;
typedef void
(OMNICLIENT_ABI* OmniClientRenameGroupCallback)(void* userData, OmniClientResult result)
OMNICLIENT_CALLBACK_NOEXCEPT;
OMNICLIENT_EXPORT(OmniClientRequestId)
omniClientRenameGroup(char const* url, const char* group, const char* newGroup, void* userData, OmniClientRenameGroupCallback callback)
OMNICLIENT_NOEXCEPT;
typedef void
(OMNICLIENT_ABI* OmniClientRemoveGroupCallback)(void* userData, OmniClientResult result, uint64_t changeCount)
OMNICLIENT_CALLBACK_NOEXCEPT;
OMNICLIENT_EXPORT(OmniClientRequestId)
omniClientRemoveGroup(char const* url, const char* group, void* userData, OmniClientRemoveGroupCallback callback)
OMNICLIENT_NOEXCEPT;
typedef void
(OMNICLIENT_ABI* OmniClientGetUsersCallback)(void* userData, OmniClientResult result, uint64_t count, const char** users)
OMNICLIENT_CALLBACK_NOEXCEPT;
OMNICLIENT_EXPORT(OmniClientRequestId)
omniClientGetUsers(char const* url, void* userData, OmniClientGetUsersCallback callback)
OMNICLIENT_NOEXCEPT;
typedef void
(OMNICLIENT_ABI* OmniClientGetUserGroupsCallback)(void* userData, OmniClientResult result, uint64_t count, const char** groups)
OMNICLIENT_CALLBACK_NOEXCEPT;
OMNICLIENT_EXPORT(OmniClientRequestId)
omniClientGetUserGroups(char const* url, const char *user, void* userData, OmniClientGetUserGroupsCallback callback)
OMNICLIENT_NOEXCEPT;
typedef void
(OMNICLIENT_ABI* OmniClientAddUserToGroupCallback)(void* userData, OmniClientResult result)
OMNICLIENT_CALLBACK_NOEXCEPT;
OMNICLIENT_EXPORT(OmniClientRequestId)
omniClientAddUserToGroup(char const* url, const char* user, const char* group, void* userData, OmniClientAddUserToGroupCallback callback)
OMNICLIENT_NOEXCEPT;
typedef void
(OMNICLIENT_ABI* OmniClientRemoveUserFromGroupCallback)(void* userData, OmniClientResult result)
OMNICLIENT_CALLBACK_NOEXCEPT;
OMNICLIENT_EXPORT(OmniClientRequestId)
omniClientRemoveUserFromGroup(char const* url, const char* user, const char* group, void* userData, OmniClientRemoveUserFromGroupCallback callback)
OMNICLIENT_NOEXCEPT;
typedef void
(OMNICLIENT_ABI* OmniClientLiveQueuedCallback)()
OMNICLIENT_CALLBACK_NOEXCEPT;
OMNICLIENT_EXPORT(void)
omniClientLiveSetQueuedCallback(OmniClientLiveQueuedCallback callback)
OMNICLIENT_NOEXCEPT;
OMNICLIENT_EXPORT(void)
omniClientLiveProcess()
OMNICLIENT_NOEXCEPT;
OMNICLIENT_EXPORT(void)
omniClientLiveProcessUpTo(const char* url, uint64_t serverTime)
OMNICLIENT_NOEXCEPT;
OMNICLIENT_EXPORT(uint64_t)
omniClientLiveGetLatestServerTime(const char* url)
OMNICLIENT_NOEXCEPT;
OMNICLIENT_EXPORT(void)
omniClientLiveWaitForPendingUpdates()
OMNICLIENT_NOEXCEPT;
OMNICLIENT_EXPORT(void)
omniClientLiveConfigureJitterReduction(uint32_t delayConstantMilliseconds, uint32_t delayMultiple, uint32_t delayMaximumMilliseconds)
OMNICLIENT_NOEXCEPT;
typedef void
(OMNICLIENT_ABI* OmniClientLiveProcessUpdatesCallback)(void* userData)
OMNICLIENT_CALLBACK_NOEXCEPT;
OMNICLIENT_EXPORT(uint32_t)
omniClientLiveRegisterProcessUpdatesCallback(void* userData, OmniClientLiveProcessUpdatesCallback callback)
OMNICLIENT_NOEXCEPT;
typedef void
(OMNICLIENT_ABI* OmniClientLiveReadCallback)(void* userData, OmniClientResult result, uint64_t objectId, uint64_t sequenceNum, struct OmniClientContent* content)
OMNICLIENT_CALLBACK_NOEXCEPT;
OMNICLIENT_EXPORT(OmniClientRequestId)
omniClientLiveRead(char const* url, uint64_t haveObjectId, uint64_t haveSequenceNum, void* userData, OmniClientLiveReadCallback callback)
OMNICLIENT_NOEXCEPT;
typedef void
(OMNICLIENT_ABI* OmniClientLiveCreateCallback)(void * userData, OmniClientResult result, uint64_t objectId, uint64_t sequenceNum)
OMNICLIENT_CALLBACK_NOEXCEPT;
OMNICLIENT_EXPORT(OmniClientRequestId)
omniClientLiveCreate(char const* url, struct OmniClientContent* content, void* userData, OmniClientLiveCreateCallback callback)
OMNICLIENT_NOEXCEPT;
typedef void
(OMNICLIENT_ABI* OmniClientLiveUpdateCallback)(void* userData, OmniClientResult result, uint64_t sequenceNum, uint64_t requestId)
OMNICLIENT_CALLBACK_NOEXCEPT;
OMNICLIENT_EXPORT(OmniClientRequestId)
omniClientLiveUpdate(char const* url, uint64_t objectId, struct OmniClientContent* content, void* userData, OmniClientLiveUpdateCallback callback)
OMNICLIENT_NOEXCEPT;
OMNICLIENT_EXPORT(OmniClientResult)
omniClientSetS3Configuration(char const* url, char const* bucket, char const* region,
char const* accessKeyId, char const* secretAccessKey, char const* cloudfrontUrl, bool cloudfrontForList, bool writeConfig)
OMNICLIENT_NOEXCEPT;