1// KernelUserFileSystem.cpp 2 3#include <new> 4 5#include "KernelUserFileSystem.h" 6#include "KernelUserVolume.h" 7 8// constructor 9KernelUserFileSystem::KernelUserFileSystem(vnode_ops* fsOps) 10 : UserFileSystem(), 11 fFSOps(fsOps) 12{ 13} 14 15// destructor 16KernelUserFileSystem::~KernelUserFileSystem() 17{ 18} 19 20// CreateVolume 21status_t 22KernelUserFileSystem::CreateVolume(UserVolume** volume, nspace_id id) 23{ 24 // check initialization and parameters 25 if (!fFSOps) 26 return B_BAD_VALUE; 27 if (!volume) 28 return B_BAD_VALUE; 29 // create the volume 30 *volume = new(nothrow) KernelUserVolume(this, id, fFSOps); 31 if (!*volume) 32 return B_NO_MEMORY; 33 return B_OK; 34} 35 36// DeleteVolume 37status_t 38KernelUserFileSystem::DeleteVolume(UserVolume* volume) 39{ 40 if (!volume || !dynamic_cast<KernelUserVolume*>(volume)) 41 return B_BAD_VALUE; 42 delete volume; 43 return B_OK; 44} 45 46