home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Club Amiga de Montreal - CAM
/
CAM_CD_1.iso
/
files
/
534.lha
/
vmalloc_v1.2
/
vm.h
< prev
next >
Wrap
C/C++ Source or Header
|
1991-08-08
|
1KB
|
44 lines
/*
*/
struct VM_FreeList {
struct VM_FreeList *VM_Next ;
ULONG VM_Offset ;
ULONG VM_Length ;
} ;
#define VM_INUSE (1 << 0)
#define VM_RESERVED (1 << 1)
#define VM_READONLY (1 << 2)
struct VM_Lock {
struct MinNode VM_Node ;
struct VM_Construct *VM_C ;
struct VM_FreeList *VM_FL ;
ULONG VM_Flags ;
void *VM_Addr ;
} ;
struct VM_Construct {
BPTR VM_File ;
char *VM_FileName ;
ULONG VM_Length ;
ULONG VM_NumLocks ;
struct MinList VM_LockList ;
struct VM_FreeList *VM_FreeList ;
} ;
extern struct VM_Construct *VM_Open(char *VM_Filename) ;
extern ULONG VM_Close(struct VM_Construct *VM_C) ;
extern struct VM_FreeList *VM_Allocate(struct VM_FreeList **VM_F, long Size) ;
extern void VM_Free(struct VM_FreeList **VM_F, struct VM_FreeList *VM_A) ;
extern void *VM_Lock(struct VM_Lock *VM_L) ;
extern ULONG VM_FlushLockList (struct VM_Construct *VM_C) ;
extern ULONG VM_FlushLock (struct VM_Lock *VM_L) ;
extern ULONG VM_UnLock(struct VM_Lock *VM_L) ;
extern struct VM_Lock *VM_AllocMem(struct VM_Construct *VM_C, LONG Size) ;
extern ULONG VM_FreeMem(struct VM_Lock *VM_L) ;
extern ULONG VM_ReadLock(struct VM_Lock *VM_L) ;
extern void VM_ReadOnly(struct VM_Lock *VM_L) ;
extern void VM_FlushFreeList(struct VM_FreeList **VM_F) ;