X-Git-Url: https://git.ucc.asn.au/?a=blobdiff_plain;f=KernelLand%2FModules%2FStorage%2FLVM%2Finclude%2Flvm.h;h=804843b54e8841cbac2f6ec6190f74f00c7e6891;hb=6aeca47f9311da25dfd9308c99cba9950b178d55;hp=904a735b79c149ce4d0db9b5a02cfb48189b3cc1;hpb=2188ee53c02fc249c3f6ee8a08758e940024d754;p=tpg%2Facess2.git diff --git a/KernelLand/Modules/Storage/LVM/include/lvm.h b/KernelLand/Modules/Storage/LVM/include/lvm.h index 904a735b..804843b5 100644 --- a/KernelLand/Modules/Storage/LVM/include/lvm.h +++ b/KernelLand/Modules/Storage/LVM/include/lvm.h @@ -10,10 +10,20 @@ #include -typedef int (*tLVM_ReadFcn)(void *, Uint64, size_t, void *); -typedef int (*tLVM_WriteFcn)(void *, Uint64, size_t, const void *); +typedef struct sLVM_VolType tLVM_VolType; -extern int LVM_AddVolume(const char *Name, void *Ptr, size_t BlockSize, tLVM_ReadFcn Read, tLVM_WriteFcn Write); +struct sLVM_VolType +{ + const char *Name; + + int (*Read)(void *, Uint64, size_t, void *); + int (*Write)(void *, Uint64, size_t, const void *); + void (*Cleanup)(void *); +}; + + +extern void *LVM_AddVolume(const tLVM_VolType *Type, const char *Name, void *Ptr, size_t BlockSize, size_t BlockCount); +extern void LVM_DelVolume(void *Handle); #endif