aboutsummaryrefslogtreecommitdiffstats
path: root/contrib/lua-torch/torch7/lib/TH/THAllocator.h
diff options
context:
space:
mode:
Diffstat (limited to 'contrib/lua-torch/torch7/lib/TH/THAllocator.h')
-rw-r--r--contrib/lua-torch/torch7/lib/TH/THAllocator.h43
1 files changed, 43 insertions, 0 deletions
diff --git a/contrib/lua-torch/torch7/lib/TH/THAllocator.h b/contrib/lua-torch/torch7/lib/TH/THAllocator.h
new file mode 100644
index 000000000..18fc9ec0a
--- /dev/null
+++ b/contrib/lua-torch/torch7/lib/TH/THAllocator.h
@@ -0,0 +1,43 @@
+#ifndef TH_ALLOCATOR_INC
+#define TH_ALLOCATOR_INC
+
+#include "THGeneral.h"
+
+#define TH_ALLOCATOR_MAPPED_SHARED 1
+#define TH_ALLOCATOR_MAPPED_SHAREDMEM 2
+#define TH_ALLOCATOR_MAPPED_EXCLUSIVE 4
+#define TH_ALLOCATOR_MAPPED_NOCREATE 8
+#define TH_ALLOCATOR_MAPPED_KEEPFD 16
+#define TH_ALLOCATOR_MAPPED_FROMFD 32
+#define TH_ALLOCATOR_MAPPED_UNLINK 64
+
+/* Custom allocator
+ */
+typedef struct THAllocator {
+ void* (*malloc)(void*, ptrdiff_t);
+ void* (*realloc)(void*, void*, ptrdiff_t);
+ void (*free)(void*, void*);
+} THAllocator;
+
+/* default malloc/free allocator. malloc and realloc raise an error (using
+ * THError) on allocation failure.
+ */
+extern THAllocator THDefaultAllocator;
+
+/* file map allocator
+ */
+typedef struct THMapAllocatorContext_ THMapAllocatorContext;
+TH_API THMapAllocatorContext *THMapAllocatorContext_new(const char *filename, int flags);
+TH_API THMapAllocatorContext *THMapAllocatorContext_newWithFd(const char *filename,
+ int fd, int flags);
+TH_API char * THMapAllocatorContext_filename(THMapAllocatorContext *ctx);
+TH_API int THMapAllocatorContext_fd(THMapAllocatorContext *ctx);
+TH_API ptrdiff_t THMapAllocatorContext_size(THMapAllocatorContext *ctx);
+TH_API void THMapAllocatorContext_free(THMapAllocatorContext *ctx);
+TH_API void THRefcountedMapAllocator_incref(THMapAllocatorContext *ctx, void *data);
+TH_API int THRefcountedMapAllocator_decref(THMapAllocatorContext *ctx, void *data);
+
+extern THAllocator THMapAllocator;
+extern THAllocator THRefcountedMapAllocator;
+
+#endif