* Initialization of BPartition::Delegate is now two-phased. The first phase
builds the object hierarchy, the second will (in case of MutableDelegate) let the disk systems do their initialization. This way the disk systems already find a fully functional object hierarchy they can work with. * Child creation also takes a partition name as a parameter, now. * Implemented BMutablePartition child creation/deletion. * The BDiskSystemAddOn/BPartitionHandle::Validate*() methods return a status_t instead of a bool, now. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22540 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
@@ -34,7 +34,7 @@ public:
|
||||
virtual status_t GetInitializationParameterEditor(
|
||||
const BMutablePartition* partition,
|
||||
BDiskDeviceParameterEditor** editor);
|
||||
virtual bool ValidateInitialize(
|
||||
virtual status_t ValidateInitialize(
|
||||
const BMutablePartition* partition,
|
||||
BString* name, const char* parameters);
|
||||
virtual status_t Initialize(BMutablePartition* partition,
|
||||
@@ -77,30 +77,30 @@ public:
|
||||
virtual status_t Defragment();
|
||||
virtual status_t Repair(bool checkOnly);
|
||||
|
||||
virtual bool ValidateResize(off_t* size);
|
||||
virtual bool ValidateResizeChild(
|
||||
virtual status_t ValidateResize(off_t* size);
|
||||
virtual status_t ValidateResizeChild(
|
||||
const BMutablePartition* child,
|
||||
off_t* size);
|
||||
virtual status_t Resize(off_t size);
|
||||
virtual status_t ResizeChild(BMutablePartition* child,
|
||||
off_t size);
|
||||
|
||||
virtual bool ValidateMove(off_t* offset);
|
||||
virtual bool ValidateMoveChild(
|
||||
virtual status_t ValidateMove(off_t* offset);
|
||||
virtual status_t ValidateMoveChild(
|
||||
const BMutablePartition* child,
|
||||
off_t* offset);
|
||||
virtual status_t Move(off_t offset);
|
||||
virtual status_t MoveChild(BMutablePartition* child,
|
||||
off_t offset);
|
||||
|
||||
virtual bool ValidateSetContentName(BString* name);
|
||||
virtual bool ValidateSetName(const BMutablePartition* child,
|
||||
virtual status_t ValidateSetContentName(BString* name);
|
||||
virtual status_t ValidateSetName(const BMutablePartition* child,
|
||||
BString* name);
|
||||
virtual status_t SetContentName(const char* name);
|
||||
virtual status_t SetName(BMutablePartition* child,
|
||||
const char* name);
|
||||
|
||||
virtual bool ValidateSetType(const BMutablePartition* child,
|
||||
virtual status_t ValidateSetType(const BMutablePartition* child,
|
||||
const char* type);
|
||||
virtual status_t SetType(BMutablePartition* child,
|
||||
const char* type);
|
||||
@@ -110,9 +110,9 @@ public:
|
||||
virtual status_t GetParameterEditor(
|
||||
const BMutablePartition* child,
|
||||
BDiskDeviceParameterEditor** editor);
|
||||
virtual bool ValidateSetContentParameters(
|
||||
virtual status_t ValidateSetContentParameters(
|
||||
const char* parameters);
|
||||
virtual bool ValidateSetParameters(
|
||||
virtual status_t ValidateSetParameters(
|
||||
const BMutablePartition* child,
|
||||
const char* parameters);
|
||||
virtual status_t SetContentParameters(const char* parameters);
|
||||
@@ -122,11 +122,12 @@ public:
|
||||
virtual status_t GetChildCreationParameterEditor(
|
||||
const char* type,
|
||||
BDiskDeviceParameterEditor** editor);
|
||||
virtual bool ValidateCreateChild(off_t* offset,
|
||||
virtual status_t ValidateCreateChild(off_t* offset,
|
||||
off_t* size, const char* type,
|
||||
const char* parameters);
|
||||
BString* name, const char* parameters);
|
||||
virtual status_t CreateChild(off_t offset, off_t size,
|
||||
const char* type, const char* parameters,
|
||||
const char* type, const char* name,
|
||||
const char* parameters,
|
||||
BMutablePartition** child);
|
||||
|
||||
virtual status_t DeleteChild(BMutablePartition* child);
|
||||
|
||||
@@ -55,10 +55,16 @@ public:
|
||||
|
||||
status_t CreateChild(int32 index,
|
||||
BMutablePartition** child);
|
||||
status_t CreateChild(int32 index, const char* type,
|
||||
const char* name, const char* parameters,
|
||||
BMutablePartition** child);
|
||||
status_t DeleteChild(int32 index);
|
||||
status_t DeleteChild(BMutablePartition* child);
|
||||
|
||||
BMutablePartition* Parent() const;
|
||||
BMutablePartition* ChildAt(int32 index) const;
|
||||
int32 CountChildren() const;
|
||||
int32 IndexOfChild(BMutablePartition* child) const;
|
||||
|
||||
// for the partitioning system managing the parent
|
||||
void* ChildCookie() const;
|
||||
@@ -69,7 +75,8 @@ private:
|
||||
BPartition::MutableDelegate* delegate);
|
||||
~BMutablePartition();
|
||||
|
||||
status_t Init(const user_partition_data* partitionData);
|
||||
status_t Init(const user_partition_data* partitionData,
|
||||
BMutablePartition* parent);
|
||||
|
||||
const user_partition_data* PartitionData() const;
|
||||
|
||||
@@ -80,6 +87,7 @@ private:
|
||||
|
||||
BPartition::MutableDelegate* fDelegate;
|
||||
user_partition_data* fData;
|
||||
BMutablePartition* fParent;
|
||||
BList fChildren;
|
||||
void* fChildCookie;
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user