31 #ifndef _CPL_VIRTUAL_MEM_INCLUDED
32 #define _CPL_VIRTUAL_MEM_INCLUDED
90 const void* pPageToBeEvicted,
168 size_t nPageSizeHint,
169 int bSingleThreadUsage,
210 vsi_l_offset nOffset,
211 vsi_l_offset nLength,
214 void *pCbkUserData );
236 vsi_l_offset nOffset,
375 void* pAddr,
size_t nSize,
int bWriteOp);
int CPL_DLL CPLIsVirtualMemFileMapAvailable(void)
Definition: cpl_virtualmem.cpp:1980
CPLVirtualMemAccessMode CPL_DLL CPLVirtualMemGetAccessMode(CPLVirtualMem *ctxt)
void CPL_DLL CPLVirtualMemManagerTerminate(void)
Definition: cpl_virtualmem.cpp:2055
size_t CPL_DLL CPLVirtualMemGetSize(CPLVirtualMem *ctxt)
CPLVirtualMem CPL_DLL * CPLVirtualMemNew(size_t nSize, size_t nCacheSize, size_t nPageSizeHint, int bSingleThreadUsage, CPLVirtualMemAccessMode eAccessMode, CPLVirtualMemCachePageCbk pfnCachePage, CPLVirtualMemUnCachePageCbk pfnUnCachePage, CPLVirtualMemFreeUserData pfnFreeUserData, void *pCbkUserData)
void(* CPLVirtualMemUnCachePageCbk)(CPLVirtualMem *ctxt, size_t nOffset, const void *pPageToBeEvicted, size_t nToBeEvicted, void *pUserData)
Definition: cpl_virtualmem.h:88
struct CPLVirtualMem CPLVirtualMem
Definition: cpl_virtualmem.h:60
Definition: cpl_virtualmem.h:104
void(* CPLVirtualMemCachePageCbk)(CPLVirtualMem *ctxt, size_t nOffset, void *pPageToFill, size_t nToFill, void *pUserData)
Definition: cpl_virtualmem.h:72
void CPL_DLL CPLVirtualMemUnDeclareThread(CPLVirtualMem *ctxt)
void(* CPLVirtualMemFreeUserData)(void *pUserData)
Definition: cpl_virtualmem.h:97
void CPL_DLL CPLVirtualMemFree(CPLVirtualMem *ctxt)
void CPL_DLL CPLVirtualMemDeclareThread(CPLVirtualMem *ctxt)
CPLVirtualMem CPL_DLL * CPLVirtualMemFileMapNew(VSILFILE *fp, vsi_l_offset nOffset, vsi_l_offset nLength, CPLVirtualMemAccessMode eAccessMode, CPLVirtualMemFreeUserData pfnFreeUserData, void *pCbkUserData)
int CPL_DLL CPLVirtualMemIsAccessThreadSafe(CPLVirtualMem *ctxt)
size_t CPL_DLL CPLVirtualMemGetPageSize(CPLVirtualMem *ctxt)
void CPL_DLL * CPLVirtualMemGetAddr(CPLVirtualMem *ctxt)
CPLVirtualMem CPL_DLL * CPLVirtualMemDerivedNew(CPLVirtualMem *pVMemBase, vsi_l_offset nOffset, vsi_l_offset nSize, CPLVirtualMemFreeUserData pfnFreeUserData, void *pCbkUserData)
int CPL_DLL CPLVirtualMemIsFileMapping(CPLVirtualMem *ctxt)
CPLVirtualMemAccessMode
Definition: cpl_virtualmem.h:100
void CPL_DLL CPLVirtualMemPin(CPLVirtualMem *ctxt, void *pAddr, size_t nSize, int bWriteOp)
Definition: cpl_virtualmem.h:110
Definition: cpl_virtualmem.h:107
size_t CPL_DLL CPLGetPageSize(void)
Definition: cpl_virtualmem.cpp:1960