31 #ifndef CPL_VIRTUAL_MEM_INCLUDED 32 #define CPL_VIRTUAL_MEM_INCLUDED 90 const void* pPageToBeEvicted,
168 size_t nPageSizeHint,
169 int bSingleThreadUsage,
211 vsi_l_offset nOffset,
212 vsi_l_offset nLength,
215 void *pCbkUserData );
237 vsi_l_offset nOffset,
376 void* pAddr,
size_t nSize,
int bWriteOp);
size_t CPLVirtualMemGetPageSize(CPLVirtualMem *ctxt)
Definition: cpl_virtualmem.cpp:2164
void CPLVirtualMemUnDeclareThread(CPLVirtualMem *ctxt)
Definition: cpl_virtualmem.cpp:1922
void(* CPLVirtualMemUnCachePageCbk)(CPLVirtualMem *ctxt, size_t nOffset, const void *pPageToBeEvicted, size_t nToBeEvicted, void *pUserData)
Definition: cpl_virtualmem.h:88
void CPLVirtualMemManagerTerminate(void)
Definition: cpl_virtualmem.cpp:1930
int CPLVirtualMemIsFileMapping(CPLVirtualMem *ctxt)
Definition: cpl_virtualmem.cpp:2146
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(* CPLVirtualMemFreeUserData)(void *pUserData)
Definition: cpl_virtualmem.h:97
CPLVirtualMem * CPLVirtualMemDerivedNew(CPLVirtualMem *pVMemBase, vsi_l_offset nOffset, vsi_l_offset nSize, CPLVirtualMemFreeUserData pfnFreeUserData, void *pCbkUserData)
Definition: cpl_virtualmem.cpp:2191
Definition: cpl_virtualmem.cpp:71
int CPLIsVirtualMemFileMapAvailable(void)
Definition: cpl_virtualmem.cpp:2091
size_t CPLVirtualMemGetSize(CPLVirtualMem *ctxt)
Definition: cpl_virtualmem.cpp:2173
size_t CPLGetPageSize(void)
Definition: cpl_virtualmem.cpp:2078
CPLVirtualMemAccessMode
Definition: cpl_virtualmem.h:100
void CPLVirtualMemFree(CPLVirtualMem *ctxt)
Definition: cpl_virtualmem.cpp:2104
int CPLVirtualMemIsAccessThreadSafe(CPLVirtualMem *ctxt)
Definition: cpl_virtualmem.cpp:2182
CPLVirtualMemAccessMode CPLVirtualMemGetAccessMode(CPLVirtualMem *ctxt)
Definition: cpl_virtualmem.cpp:2155
void CPLVirtualMemPin(CPLVirtualMem *ctxt, void *pAddr, size_t nSize, int bWriteOp)
Definition: cpl_virtualmem.cpp:1924
void * CPLVirtualMemGetAddr(CPLVirtualMem *ctxt)
Definition: cpl_virtualmem.cpp:2137
Definition: cpl_virtualmem.h:110
Definition: cpl_virtualmem.h:107
CPLVirtualMem * CPLVirtualMemNew(size_t nSize, size_t nCacheSize, size_t nPageSizeHint, int bSingleThreadUsage, CPLVirtualMemAccessMode eAccessMode, CPLVirtualMemCachePageCbk pfnCachePage, CPLVirtualMemUnCachePageCbk pfnUnCachePage, CPLVirtualMemFreeUserData pfnFreeUserData, void *pCbkUserData)
Definition: cpl_virtualmem.cpp:1904
CPLVirtualMem * CPLVirtualMemFileMapNew(VSILFILE *fp, vsi_l_offset nOffset, vsi_l_offset nLength, CPLVirtualMemAccessMode eAccessMode, CPLVirtualMemFreeUserData pfnFreeUserData, void *pCbkUserData)
Definition: cpl_virtualmem.cpp:1953
void CPLVirtualMemDeclareThread(CPLVirtualMem *ctxt)
Definition: cpl_virtualmem.cpp:1920