blob: 2bc09dc8e05f330f4d3d8cddef5acb286ba8c420 [file] [log] [blame]
#pragma once
#include <TH/TH.h>
#ifdef __cplusplus
#ifdef SHM_EXPORTS
# define SHM_API __declspec(dllexport)
#else
# define SHM_API __declspec(dllimport)
#endif
SHM_API void libshm_init(const char *manager_exec_path);
class SHM_API THManagedMapAllocator : public THRefcountedMapAllocator {
public:
THManagedMapAllocator(const char* manager_handle, const char* filename, int flags, ptrdiff_t size)
: THRefcountedMapAllocator(filename, flags, size) {}
static at::DataPtr makeDataPtr(const char* manager_handle, const char* filename, int flags, ptrdiff_t size);
static THManagedMapAllocator* fromDataPtr(const at::DataPtr&);
const char* manager_handle() const { return "no_manager"; }
};
#endif