Files
haiku-beta6/src/add-ons/kernel/file_systems/userlandfs/server/BeOSKernelFileSystem.cpp
T

46 lines
803 B
C++
Raw Normal View History

2007-02-26 16:26:02 +00:00
// BeOSKernelFileSystem.cpp
#include "BeOSKernelFileSystem.h"
2007-02-26 16:26:02 +00:00
#include <new>
#include "BeOSKernelVolume.h"
// constructor
BeOSKernelFileSystem::BeOSKernelFileSystem(beos_vnode_ops* fsOps)
2007-02-26 16:26:02 +00:00
: FileSystem(),
fFSOps(fsOps)
{
}
// destructor
BeOSKernelFileSystem::~BeOSKernelFileSystem()
{
}
// CreateVolume
status_t
BeOSKernelFileSystem::CreateVolume(Volume** volume, mount_id id)
2007-02-26 16:26:02 +00:00
{
// check initialization and parameters
if (!fFSOps || !volume)
2007-02-26 16:26:02 +00:00
return B_BAD_VALUE;
2007-02-26 16:26:02 +00:00
// create the volume
*volume = new(nothrow) BeOSKernelVolume(this, id, fFSOps);
if (!*volume)
return B_NO_MEMORY;
return B_OK;
}
// DeleteVolume
status_t
BeOSKernelFileSystem::DeleteVolume(Volume* volume)
{
if (!volume || !dynamic_cast<BeOSKernelVolume*>(volume))
return B_BAD_VALUE;
delete volume;
return B_OK;
}