* Added disk system flags for whether a partition name and partition
content name are supported. * Added file_system_module_info::flags (analogously to partition_module_info::flags) which indicate which disk device features the FS supports. * Replaced the file_system_module_info/partition_module_info::supports_*() hooks by a get_supported_operations() hook and for partitioning systems additionally a get_supported_child_operations() hook. * Updated file and partitioning systems accordingly. * Updated fs_shell accordingly. * Updated the DDM accordingly. The syscall interface remains unchanged, though. * _user_supports_initializing_partition() also checks whether the parent partitioning system is content now. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22043 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
@@ -54,26 +54,19 @@ public:
|
||||
// Querying
|
||||
// Device must be read locked.
|
||||
|
||||
virtual bool SupportsDefragmenting(KPartition *partition,
|
||||
bool *whileMounted);
|
||||
virtual bool SupportsRepairing(KPartition *partition, bool checkOnly,
|
||||
bool *whileMounted);
|
||||
virtual bool SupportsResizing(KPartition *partition, bool *whileMounted);
|
||||
virtual bool SupportsResizingChild(KPartition *child);
|
||||
virtual bool SupportsMoving(KPartition *partition, bool *isNoOp);
|
||||
virtual bool SupportsMovingChild(KPartition *child);
|
||||
virtual bool SupportsSettingName(KPartition *partition);
|
||||
virtual bool SupportsSettingContentName(KPartition *partition,
|
||||
bool *whileMounted);
|
||||
virtual bool SupportsSettingType(KPartition *partition);
|
||||
virtual bool SupportsSettingParameters(KPartition *partition);
|
||||
virtual bool SupportsSettingContentParameters(KPartition *partition,
|
||||
bool *whileMounted);
|
||||
virtual bool SupportsInitializing(KPartition *partition);
|
||||
virtual uint32 GetSupportedOperations(KPartition* partition, uint32 mask);
|
||||
virtual uint32 GetSupportedChildOperations(KPartition* child, uint32 mask);
|
||||
|
||||
// for convenience
|
||||
bool SupportsOperations(KPartition* partition, uint32 operations)
|
||||
{ return (GetSupportedOperations(partition, operations) & operations)
|
||||
== operations; }
|
||||
bool SupportsChildOperations(KPartition* child, uint32 operations)
|
||||
{ return (GetSupportedChildOperations(child, operations) & operations)
|
||||
== operations; }
|
||||
|
||||
virtual bool SupportsInitializingChild(KPartition *child,
|
||||
const char *diskSystem);
|
||||
virtual bool SupportsCreatingChild(KPartition *partition);
|
||||
virtual bool SupportsDeletingChild(KPartition *child);
|
||||
const char *diskSystem);
|
||||
virtual bool IsSubSystemFor(KPartition *partition);
|
||||
|
||||
virtual bool ValidateResize(KPartition *partition, off_t *size);
|
||||
|
||||
Reference in New Issue
Block a user