2007-10-16 04:32:41 +04:00
|
|
|
/*
|
2007-10-18 00:51:10 +04:00
|
|
|
* Copyright 2003-2007, Ingo Weinhold, ingo_weinhold@gmx.de.
|
|
|
|
* Copyright 2003, Tyler Akidau, haiku@akidau.net.
|
2007-10-16 04:32:41 +04:00
|
|
|
* Distributed under the terms of the MIT License.
|
|
|
|
*/
|
2010-10-24 07:39:19 +04:00
|
|
|
|
2003-02-01 00:17:20 +03:00
|
|
|
#ifndef _PARTITION_H
|
|
|
|
#define _PARTITION_H
|
|
|
|
|
2009-07-21 00:29:16 +04:00
|
|
|
|
2003-07-07 03:11:10 +04:00
|
|
|
#include <DiskDeviceDefs.h>
|
|
|
|
#include <Messenger.h>
|
|
|
|
#include <Mime.h>
|
2003-02-01 00:17:20 +03:00
|
|
|
|
2007-10-16 04:32:41 +04:00
|
|
|
|
2003-07-07 03:11:10 +04:00
|
|
|
class BBitmap;
|
2003-05-29 01:46:11 +04:00
|
|
|
class BDiskDevice;
|
2009-07-21 00:29:16 +04:00
|
|
|
class BPartitionParameterEditor;
|
2003-07-07 03:11:10 +04:00
|
|
|
class BDiskDeviceVisitor;
|
|
|
|
class BDiskSystem;
|
2007-10-13 02:47:42 +04:00
|
|
|
class BMutablePartition;
|
2011-01-20 21:52:21 +03:00
|
|
|
template <class T> class BObjectList;
|
2003-07-17 04:06:58 +04:00
|
|
|
class BPartitioningInfo;
|
2004-11-01 22:38:47 +03:00
|
|
|
class BPath;
|
2003-07-07 03:11:10 +04:00
|
|
|
class BVolume;
|
|
|
|
struct user_partition_data;
|
2003-05-29 01:46:11 +04:00
|
|
|
|
2007-10-16 04:32:41 +04:00
|
|
|
|
2007-10-18 07:42:30 +04:00
|
|
|
namespace BPrivate {
|
|
|
|
class DiskDeviceJobGenerator;
|
|
|
|
}
|
|
|
|
|
2003-02-01 00:17:20 +03:00
|
|
|
class BPartition {
|
|
|
|
public:
|
2003-05-29 01:46:11 +04:00
|
|
|
// Partition Info
|
2007-10-15 04:41:18 +04:00
|
|
|
|
2007-10-16 04:32:41 +04:00
|
|
|
off_t Offset() const; // 0 for devices
|
|
|
|
off_t Size() const;
|
|
|
|
off_t ContentSize() const; // 0 if uninitialized
|
|
|
|
uint32 BlockSize() const;
|
2022-09-15 19:04:53 +03:00
|
|
|
uint32 PhysicalBlockSize() const;
|
2007-10-16 04:32:41 +04:00
|
|
|
int32 Index() const; // 0 for devices
|
|
|
|
uint32 Status() const;
|
* Added two new ways to retrieve an icon from a device:
- B_GET_ICON_NAME: returns the name of an icon. This will then be read from
a predefined location on disk (not yet implemented). This would also allow
to add specifiers like "-boot", or "-fat|bfs|ntfs|...", and have special
icons for those.
- B_GET_VECTOR_ICON: retrieves the vector icon of a device, if any.
* get_device_icon(BBitmap*, ...) now supports other color spaces than B_CMAP8.
* Added get_device_icon(), BPartition::GetIcon(), and BVolume::GetIcon()
variants that can also retrieve the icon data directly (like
BNodeInfo::GetIcon()).
* Reenabled the previous BPartition::GetIcon(), based on a patch by
Justin O'Dell - this fixes #1391.
* Tracker's MountMenu class now uses B_RGBA32 icons, instead of B_CMAP8.
* Added vector icon to scsi_disk, and scsi_cd. The former doesn't have any
special removable icon, though.
* Header cleanup, added/updated license, whitespace cleanup.
* Marked deprecated/obsolete driver ioctls in Drivers.h.
* Removed OpenBeOS namespace in the headers I touched that still had them.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27001 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-17 15:27:07 +04:00
|
|
|
|
2007-10-16 04:32:41 +04:00
|
|
|
bool ContainsFileSystem() const;
|
|
|
|
bool ContainsPartitioningSystem() const;
|
2003-05-29 01:46:11 +04:00
|
|
|
|
2007-10-16 04:32:41 +04:00
|
|
|
bool IsDevice() const;
|
|
|
|
bool IsReadOnly() const;
|
|
|
|
bool IsMounted() const;
|
|
|
|
bool IsBusy() const;
|
2003-07-07 03:11:10 +04:00
|
|
|
|
* Added two new ways to retrieve an icon from a device:
- B_GET_ICON_NAME: returns the name of an icon. This will then be read from
a predefined location on disk (not yet implemented). This would also allow
to add specifiers like "-boot", or "-fat|bfs|ntfs|...", and have special
icons for those.
- B_GET_VECTOR_ICON: retrieves the vector icon of a device, if any.
* get_device_icon(BBitmap*, ...) now supports other color spaces than B_CMAP8.
* Added get_device_icon(), BPartition::GetIcon(), and BVolume::GetIcon()
variants that can also retrieve the icon data directly (like
BNodeInfo::GetIcon()).
* Reenabled the previous BPartition::GetIcon(), based on a patch by
Justin O'Dell - this fixes #1391.
* Tracker's MountMenu class now uses B_RGBA32 icons, instead of B_CMAP8.
* Added vector icon to scsi_disk, and scsi_cd. The former doesn't have any
special removable icon, though.
* Header cleanup, added/updated license, whitespace cleanup.
* Marked deprecated/obsolete driver ioctls in Drivers.h.
* Removed OpenBeOS namespace in the headers I touched that still had them.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27001 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-17 15:27:07 +04:00
|
|
|
uint32 Flags() const;
|
|
|
|
|
2007-10-16 04:32:41 +04:00
|
|
|
const char* Name() const;
|
2022-09-10 12:51:35 +03:00
|
|
|
BString ContentName() const;
|
2022-09-30 11:36:50 +03:00
|
|
|
const char* RawContentName() const;
|
2007-10-16 04:32:41 +04:00
|
|
|
const char* Type() const; // See DiskDeviceTypes.h
|
|
|
|
const char* ContentType() const; // See DiskDeviceTypes.h
|
|
|
|
partition_id ID() const;
|
|
|
|
const char* Parameters() const;
|
|
|
|
const char* ContentParameters() const;
|
|
|
|
|
|
|
|
status_t GetDiskSystem(BDiskSystem* diskSystem) const;
|
* Added two new ways to retrieve an icon from a device:
- B_GET_ICON_NAME: returns the name of an icon. This will then be read from
a predefined location on disk (not yet implemented). This would also allow
to add specifiers like "-boot", or "-fat|bfs|ntfs|...", and have special
icons for those.
- B_GET_VECTOR_ICON: retrieves the vector icon of a device, if any.
* get_device_icon(BBitmap*, ...) now supports other color spaces than B_CMAP8.
* Added get_device_icon(), BPartition::GetIcon(), and BVolume::GetIcon()
variants that can also retrieve the icon data directly (like
BNodeInfo::GetIcon()).
* Reenabled the previous BPartition::GetIcon(), based on a patch by
Justin O'Dell - this fixes #1391.
* Tracker's MountMenu class now uses B_RGBA32 icons, instead of B_CMAP8.
* Added vector icon to scsi_disk, and scsi_cd. The former doesn't have any
special removable icon, though.
* Header cleanup, added/updated license, whitespace cleanup.
* Marked deprecated/obsolete driver ioctls in Drivers.h.
* Removed OpenBeOS namespace in the headers I touched that still had them.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27001 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-17 15:27:07 +04:00
|
|
|
|
2007-10-16 04:32:41 +04:00
|
|
|
virtual status_t GetPath(BPath* path) const;
|
|
|
|
status_t GetVolume(BVolume* volume) const;
|
|
|
|
status_t GetIcon(BBitmap* icon, icon_size which) const;
|
* Added two new ways to retrieve an icon from a device:
- B_GET_ICON_NAME: returns the name of an icon. This will then be read from
a predefined location on disk (not yet implemented). This would also allow
to add specifiers like "-boot", or "-fat|bfs|ntfs|...", and have special
icons for those.
- B_GET_VECTOR_ICON: retrieves the vector icon of a device, if any.
* get_device_icon(BBitmap*, ...) now supports other color spaces than B_CMAP8.
* Added get_device_icon(), BPartition::GetIcon(), and BVolume::GetIcon()
variants that can also retrieve the icon data directly (like
BNodeInfo::GetIcon()).
* Reenabled the previous BPartition::GetIcon(), based on a patch by
Justin O'Dell - this fixes #1391.
* Tracker's MountMenu class now uses B_RGBA32 icons, instead of B_CMAP8.
* Added vector icon to scsi_disk, and scsi_cd. The former doesn't have any
special removable icon, though.
* Header cleanup, added/updated license, whitespace cleanup.
* Marked deprecated/obsolete driver ioctls in Drivers.h.
* Removed OpenBeOS namespace in the headers I touched that still had them.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27001 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-17 15:27:07 +04:00
|
|
|
status_t GetIcon(uint8** _data, size_t* _size,
|
|
|
|
type_code* _type) const;
|
2007-10-16 04:32:41 +04:00
|
|
|
status_t GetMountPoint(BPath* mountPoint) const;
|
2003-05-29 01:43:58 +04:00
|
|
|
|
2013-12-23 02:41:42 +04:00
|
|
|
status_t Mount(const char* mountPoint = NULL,
|
2007-10-16 04:32:41 +04:00
|
|
|
uint32 mountFlags = 0,
|
2014-09-15 08:28:41 +04:00
|
|
|
const char* parameters = NULL);
|
2007-10-16 04:32:41 +04:00
|
|
|
status_t Unmount(uint32 unmountFlags = 0);
|
2005-10-20 17:03:50 +04:00
|
|
|
|
2003-05-29 01:43:58 +04:00
|
|
|
// Hierarchy Info
|
|
|
|
|
2007-10-16 04:32:41 +04:00
|
|
|
BDiskDevice* Device() const;
|
|
|
|
BPartition* Parent() const;
|
|
|
|
BPartition* ChildAt(int32 index) const;
|
|
|
|
int32 CountChildren() const;
|
2007-10-18 07:42:30 +04:00
|
|
|
int32 CountDescendants() const;
|
2007-10-16 04:32:41 +04:00
|
|
|
BPartition* FindDescendant(partition_id id) const;
|
2003-05-29 01:43:58 +04:00
|
|
|
|
2007-10-16 04:32:41 +04:00
|
|
|
status_t GetPartitioningInfo(
|
|
|
|
BPartitioningInfo* info) const;
|
* Added two new ways to retrieve an icon from a device:
- B_GET_ICON_NAME: returns the name of an icon. This will then be read from
a predefined location on disk (not yet implemented). This would also allow
to add specifiers like "-boot", or "-fat|bfs|ntfs|...", and have special
icons for those.
- B_GET_VECTOR_ICON: retrieves the vector icon of a device, if any.
* get_device_icon(BBitmap*, ...) now supports other color spaces than B_CMAP8.
* Added get_device_icon(), BPartition::GetIcon(), and BVolume::GetIcon()
variants that can also retrieve the icon data directly (like
BNodeInfo::GetIcon()).
* Reenabled the previous BPartition::GetIcon(), based on a patch by
Justin O'Dell - this fixes #1391.
* Tracker's MountMenu class now uses B_RGBA32 icons, instead of B_CMAP8.
* Added vector icon to scsi_disk, and scsi_cd. The former doesn't have any
special removable icon, though.
* Header cleanup, added/updated license, whitespace cleanup.
* Marked deprecated/obsolete driver ioctls in Drivers.h.
* Removed OpenBeOS namespace in the headers I touched that still had them.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27001 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-17 15:27:07 +04:00
|
|
|
|
2007-10-18 01:50:20 +04:00
|
|
|
BPartition* VisitEachChild(BDiskDeviceVisitor* visitor)
|
|
|
|
const;
|
2007-10-16 04:32:41 +04:00
|
|
|
virtual BPartition* VisitEachDescendant(
|
2007-10-18 01:50:20 +04:00
|
|
|
BDiskDeviceVisitor* visitor) const;
|
2003-05-29 01:43:58 +04:00
|
|
|
|
2003-05-29 01:46:11 +04:00
|
|
|
// Self Modification
|
2003-05-29 01:43:58 +04:00
|
|
|
|
2007-10-16 04:32:41 +04:00
|
|
|
bool CanDefragment(bool* whileMounted = NULL) const;
|
|
|
|
status_t Defragment() const;
|
* Added two new ways to retrieve an icon from a device:
- B_GET_ICON_NAME: returns the name of an icon. This will then be read from
a predefined location on disk (not yet implemented). This would also allow
to add specifiers like "-boot", or "-fat|bfs|ntfs|...", and have special
icons for those.
- B_GET_VECTOR_ICON: retrieves the vector icon of a device, if any.
* get_device_icon(BBitmap*, ...) now supports other color spaces than B_CMAP8.
* Added get_device_icon(), BPartition::GetIcon(), and BVolume::GetIcon()
variants that can also retrieve the icon data directly (like
BNodeInfo::GetIcon()).
* Reenabled the previous BPartition::GetIcon(), based on a patch by
Justin O'Dell - this fixes #1391.
* Tracker's MountMenu class now uses B_RGBA32 icons, instead of B_CMAP8.
* Added vector icon to scsi_disk, and scsi_cd. The former doesn't have any
special removable icon, though.
* Header cleanup, added/updated license, whitespace cleanup.
* Marked deprecated/obsolete driver ioctls in Drivers.h.
* Removed OpenBeOS namespace in the headers I touched that still had them.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27001 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-17 15:27:07 +04:00
|
|
|
|
2007-10-16 04:32:41 +04:00
|
|
|
bool CanRepair(bool checkOnly,
|
|
|
|
bool* whileMounted = NULL) const;
|
|
|
|
status_t Repair(bool checkOnly) const;
|
|
|
|
|
|
|
|
bool CanResize(bool* canResizeContents = NULL,
|
|
|
|
bool* whileMounted = NULL) const;
|
|
|
|
status_t ValidateResize(off_t* size) const;
|
|
|
|
status_t Resize(off_t size);
|
|
|
|
|
|
|
|
bool CanMove(BObjectList<BPartition>*
|
|
|
|
unmovableDescendants = NULL,
|
|
|
|
BObjectList<BPartition>*
|
|
|
|
movableOnlyIfUnmounted = NULL) const;
|
|
|
|
status_t ValidateMove(off_t* newOffset) const;
|
|
|
|
status_t Move(off_t newOffset);
|
|
|
|
|
|
|
|
bool CanSetName() const;
|
|
|
|
status_t ValidateSetName(BString* name) const;
|
|
|
|
// adjusts name to be suitable
|
|
|
|
status_t SetName(const char* name);
|
|
|
|
|
|
|
|
bool CanSetContentName(
|
|
|
|
bool* whileMounted = NULL) const;
|
|
|
|
status_t ValidateSetContentName(BString* name) const;
|
|
|
|
// adjusts name to be suitable
|
|
|
|
status_t SetContentName(const char* name);
|
|
|
|
|
|
|
|
bool CanSetType() const;
|
|
|
|
status_t ValidateSetType(const char* type) const;
|
|
|
|
// type must be one the parent disk system's
|
|
|
|
// GetNextSupportedType() returns.
|
|
|
|
status_t SetType(const char* type);
|
|
|
|
|
|
|
|
bool CanEditParameters() const;
|
|
|
|
status_t GetParameterEditor(
|
2010-10-24 07:39:19 +04:00
|
|
|
B_PARAMETER_EDITOR_TYPE type,
|
2009-07-21 00:29:16 +04:00
|
|
|
BPartitionParameterEditor** editor);
|
2007-10-16 04:32:41 +04:00
|
|
|
status_t SetParameters(const char* parameters);
|
|
|
|
|
|
|
|
bool CanEditContentParameters(
|
|
|
|
bool* whileMounted = NULL) const;
|
|
|
|
status_t SetContentParameters(const char* parameters);
|
|
|
|
|
2007-10-17 05:01:49 +04:00
|
|
|
status_t GetNextSupportedType(int32 *cookie,
|
|
|
|
BString* type) const;
|
|
|
|
// Returns all partition types for this
|
|
|
|
// partition supported by the parent disk
|
|
|
|
// system.
|
|
|
|
status_t GetNextSupportedChildType(int32 *cookie,
|
|
|
|
BString* type) const;
|
|
|
|
// Returns all partition types for a child
|
|
|
|
// of this partition supported by its disk
|
|
|
|
// system.
|
|
|
|
bool IsSubSystem(const char* diskSystem) const;
|
|
|
|
|
2007-10-16 04:32:41 +04:00
|
|
|
bool CanInitialize(const char* diskSystem) const;
|
|
|
|
status_t ValidateInitialize(const char* diskSystem,
|
|
|
|
BString* name, const char* parameters);
|
|
|
|
status_t Initialize(const char* diskSystem,
|
|
|
|
const char* name, const char* parameters);
|
|
|
|
status_t Uninitialize();
|
* Added two new ways to retrieve an icon from a device:
- B_GET_ICON_NAME: returns the name of an icon. This will then be read from
a predefined location on disk (not yet implemented). This would also allow
to add specifiers like "-boot", or "-fat|bfs|ntfs|...", and have special
icons for those.
- B_GET_VECTOR_ICON: retrieves the vector icon of a device, if any.
* get_device_icon(BBitmap*, ...) now supports other color spaces than B_CMAP8.
* Added get_device_icon(), BPartition::GetIcon(), and BVolume::GetIcon()
variants that can also retrieve the icon data directly (like
BNodeInfo::GetIcon()).
* Reenabled the previous BPartition::GetIcon(), based on a patch by
Justin O'Dell - this fixes #1391.
* Tracker's MountMenu class now uses B_RGBA32 icons, instead of B_CMAP8.
* Added vector icon to scsi_disk, and scsi_cd. The former doesn't have any
special removable icon, though.
* Header cleanup, added/updated license, whitespace cleanup.
* Marked deprecated/obsolete driver ioctls in Drivers.h.
* Removed OpenBeOS namespace in the headers I touched that still had them.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27001 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-17 15:27:07 +04:00
|
|
|
|
2003-05-29 01:46:11 +04:00
|
|
|
// Modification of child partitions
|
2003-05-29 01:43:58 +04:00
|
|
|
|
2007-10-16 04:32:41 +04:00
|
|
|
bool CanCreateChild() const;
|
|
|
|
status_t ValidateCreateChild(off_t* start, off_t* size,
|
|
|
|
const char* type, BString* name,
|
|
|
|
const char* parameters) const;
|
|
|
|
status_t CreateChild(off_t start, off_t size,
|
|
|
|
const char* type, const char* name,
|
|
|
|
const char* parameters,
|
|
|
|
BPartition** child = NULL);
|
* Added two new ways to retrieve an icon from a device:
- B_GET_ICON_NAME: returns the name of an icon. This will then be read from
a predefined location on disk (not yet implemented). This would also allow
to add specifiers like "-boot", or "-fat|bfs|ntfs|...", and have special
icons for those.
- B_GET_VECTOR_ICON: retrieves the vector icon of a device, if any.
* get_device_icon(BBitmap*, ...) now supports other color spaces than B_CMAP8.
* Added get_device_icon(), BPartition::GetIcon(), and BVolume::GetIcon()
variants that can also retrieve the icon data directly (like
BNodeInfo::GetIcon()).
* Reenabled the previous BPartition::GetIcon(), based on a patch by
Justin O'Dell - this fixes #1391.
* Tracker's MountMenu class now uses B_RGBA32 icons, instead of B_CMAP8.
* Added vector icon to scsi_disk, and scsi_cd. The former doesn't have any
special removable icon, though.
* Header cleanup, added/updated license, whitespace cleanup.
* Marked deprecated/obsolete driver ioctls in Drivers.h.
* Removed OpenBeOS namespace in the headers I touched that still had them.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27001 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-17 15:27:07 +04:00
|
|
|
|
2007-10-16 04:32:41 +04:00
|
|
|
bool CanDeleteChild(int32 index) const;
|
|
|
|
status_t DeleteChild(int32 index);
|
* Added two new ways to retrieve an icon from a device:
- B_GET_ICON_NAME: returns the name of an icon. This will then be read from
a predefined location on disk (not yet implemented). This would also allow
to add specifiers like "-boot", or "-fat|bfs|ntfs|...", and have special
icons for those.
- B_GET_VECTOR_ICON: retrieves the vector icon of a device, if any.
* get_device_icon(BBitmap*, ...) now supports other color spaces than B_CMAP8.
* Added get_device_icon(), BPartition::GetIcon(), and BVolume::GetIcon()
variants that can also retrieve the icon data directly (like
BNodeInfo::GetIcon()).
* Reenabled the previous BPartition::GetIcon(), based on a patch by
Justin O'Dell - this fixes #1391.
* Tracker's MountMenu class now uses B_RGBA32 icons, instead of B_CMAP8.
* Added vector icon to scsi_disk, and scsi_cd. The former doesn't have any
special removable icon, though.
* Header cleanup, added/updated license, whitespace cleanup.
* Marked deprecated/obsolete driver ioctls in Drivers.h.
* Removed OpenBeOS namespace in the headers I touched that still had them.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27001 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-17 15:27:07 +04:00
|
|
|
|
2009-07-21 00:29:16 +04:00
|
|
|
bool SupportsChildName() const;
|
|
|
|
|
2003-07-07 03:11:10 +04:00
|
|
|
private:
|
2007-10-16 04:32:41 +04:00
|
|
|
class Delegate;
|
|
|
|
|
|
|
|
BPartition();
|
|
|
|
BPartition(const BPartition&);
|
|
|
|
virtual ~BPartition();
|
|
|
|
|
|
|
|
BPartition& operator=(const BPartition&);
|
|
|
|
|
|
|
|
status_t _SetTo(BDiskDevice* device, BPartition* parent,
|
|
|
|
user_partition_data* data);
|
|
|
|
void _Unset();
|
|
|
|
status_t _RemoveObsoleteDescendants(
|
|
|
|
user_partition_data* data, bool* updated);
|
|
|
|
status_t _Update(user_partition_data* data,
|
|
|
|
bool* updated);
|
|
|
|
void _RemoveChild(int32 index);
|
|
|
|
|
2007-10-18 07:42:30 +04:00
|
|
|
BPartition* _ChildAt(int32 index) const;
|
|
|
|
int32 _CountChildren() const;
|
2007-10-30 02:51:02 +03:00
|
|
|
int32 _CountDescendants() const;
|
2007-10-18 07:42:30 +04:00
|
|
|
|
2007-10-16 04:32:41 +04:00
|
|
|
int32 _Level() const;
|
|
|
|
virtual bool _AcceptVisitor(BDiskDeviceVisitor* visitor,
|
|
|
|
int32 level);
|
|
|
|
BPartition* _VisitEachDescendant(
|
|
|
|
BDiskDeviceVisitor* visitor,
|
|
|
|
int32 level = -1);
|
|
|
|
|
|
|
|
const user_partition_data* _PartitionData() const;
|
|
|
|
|
|
|
|
bool _HasContent() const;
|
|
|
|
bool _SupportsOperation(uint32 flag,
|
|
|
|
uint32 whileMountedFlag,
|
|
|
|
bool* whileMounted) const;
|
|
|
|
bool _SupportsChildOperation(const BPartition* child,
|
|
|
|
uint32 flag) const;
|
|
|
|
|
2007-10-18 01:50:20 +04:00
|
|
|
status_t _CreateDelegates();
|
|
|
|
status_t _InitDelegates();
|
|
|
|
void _DeleteDelegates();
|
|
|
|
bool _IsModified() const;
|
|
|
|
|
2007-10-16 04:32:41 +04:00
|
|
|
friend class BDiskDevice;
|
|
|
|
friend class BDiskSystem;
|
|
|
|
friend class BMutablePartition;
|
2007-10-18 07:42:30 +04:00
|
|
|
friend class BPrivate::DiskDeviceJobGenerator;
|
2007-10-16 04:32:41 +04:00
|
|
|
|
|
|
|
BDiskDevice* fDevice;
|
|
|
|
BPartition* fParent;
|
|
|
|
user_partition_data* fPartitionData;
|
|
|
|
Delegate* fDelegate;
|
2003-07-07 03:11:10 +04:00
|
|
|
};
|
2003-02-01 00:17:20 +03:00
|
|
|
|
2009-07-21 00:29:16 +04:00
|
|
|
|
2003-02-01 00:17:20 +03:00
|
|
|
#endif // _PARTITION_H
|