#pragma once #ifdef _WIN32 #ifdef ROCKSDB_DLL #ifdef ROCKSDB_LIBRARY_EXPORTS #define ROCKSDB_LIBRARY_API __declspec(dllexport) #else #define ROCKSDB_LIBRARY_API __declspec(dllimport) #endif #else #define ROCKSDB_LIBRARY_API #endif #else #define ROCKSDB_LIBRARY_API #endif #ifdef __cplusplus extern "C" { #endif #include #include #include typedef struct rocksdb_env_t rocksdb_env_t; extern ROCKSDB_LIBRARY_API rocksdb_env_t *rocksdb_create_encrypted_env( void *userdata, size_t metadataSize, size_t blockSize, bool (*encryptBlock)(void *userdata, uint64_t blockIndex, char *data, char *metadata), bool (*decryptBlock)(void *userdata, uint64_t blockIndex, char *data, const char *metadata), void (*destroy)(void *userdata)); #ifdef __cplusplus } #endif