History log of /haiku/headers/private/storage/Partition.h
Revision Date Author Comments
# e065d697 30-Sep-2022 Jérôme Duval <jerome.duval@gmail.com>

Disk Device Manager: checks the raw content_name when editing a partition

also only provide a default name for partition containing a file system
fix #17958

Change-Id: Ib5a8928dc5272a400a99aa05b792201f3a6a2c7d
Reviewed-on: https://review.haiku-os.org/c/haiku/+/5705
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: waddlesplash <waddlesplash@gmail.com>


# 688acf41 15-Sep-2022 Jérôme Duval <jerome.duval@gmail.com>

add physical_block_size field where applicable

only scsi_disk checks the actual value, other drivers take the logical block size.

This change reports the physical block size from the disk rather than the block
size used by IDE/SATA/SCSI commands. On typical modern SATA disks, the SATA
commands will use 512 byte blocks, but the disk will actually read and write
4K blocks internally. This is only of importance for partition alignment for DriveSetup,
and is independant of file systems or partitioning systems. This could also influence
the recommended block size for some file systems.

Change-Id: Id0f2e22659e89fcef64c1f8d04f81cd68995e01f
Reviewed-on: https://review.haiku-os.org/c/haiku/+/5667
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: Adrien Destugues <pulkomandy@pulkomandy.tk>


# e3d59047 10-Sep-2022 PulkoMandy <pulkomandy@pulkomandy.tk>

Disk Device Manager: generate a name for nameless volumes

This will give the same result as fs_stat_dev, so the filesystems will
have the same name everywhere.

Change-Id: Ic684142efaeb2c16b393f3f3e5c9c3010a054b30
Reviewed-on: https://review.haiku-os.org/c/haiku/+/5636
Reviewed-by: Jérôme Duval <jerome.duval@gmail.com>


# fd7f53f0 14-Sep-2014 Jessica Hamilton <jessica.l.hamilton@gmail.com>

storage kit: don't expose the dev_t in BPartition::Mount()

Comments to #9672 agree that there's really no need to
expose the dev_t handle, thus simplifying the API.

The dev_t handle, if required, can be retrieved via
BPartition::GetVolume() instead.


# 8bfb30ce 22-Dec-2013 Puck Meerburg <puck@puckipedia.nl>

BPartition: Move dev_t return value to an optional parameter

Signed-off-by: Jessica Hamilton <jessica.l.hamilton@gmail.com>


# 8e407ca0 20-Jan-2011 Oliver Tappe <zooey@hirschkaefer.de>

* err, 40255 was missing the essential part, actually


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40257 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 84f05bd0 20-Jan-2011 Oliver Tappe <zooey@hirschkaefer.de>

* fix build problem on Haiku hosts caused by recent move of
ObjectList.h into public header space


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40255 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 2f3ce2bf 23-Oct-2010 Bryce Groff <bgroff@hawaii.edu>

DriveSetup:
- File system is now only displayed when the partition actually has a filesystem.
- Now checks if the DiskSystem supports initializing.
- Updated the *ParamsPanels, as well as, the Disk System add-ons to use the new storage api changes (see below).

Storage Kit:
- Simplified the parameters editor system. Now all parameter editor requests go through a single function, GetParameterEditor, and pass a B_PARAMETER_EDITOR_TYPE to request a particular parameter editor.
- Moved DiskDeviceAddOnManager.h to the headers directory, as it is now required by InitParamsPanel.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39115 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 7f96148c 20-Jul-2009 Ingo Weinhold <ingo_weinhold@gmx.de>

Patch by Bryce Groff with changes by myself:
* Added missing name parameter to the partitioning system module child creation
and child creation validation hooks. Pass the name to them.
* Added BPartitionParameterEditor interface, which is/will be used for editing
disk system specific parameters.
* Implemented partition parameter editors for BFS initialization and Intel
partition map child creation.
* Fixed the incorrect supported child partition type iteration in the Intel
partition map add-on. It does now return actual types.
* Handle the "active" flag parameter in the Intel partitioning system module.
* DriveSetup:
- Replaced the "Create" submenu by a simple menu item. The type can now by
chosen in the dialog.
- Make use of initialization and child creation parameter editors. Some
non-generic code has been moved to the respective editor implementations
(BFS, intel partitioning system).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31658 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 06ba3f0a 17-Aug-2008 Axel Dörfler <axeld@pinc-software.de>

* 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


# 25ab0d1a 29-Oct-2007 Ingo Weinhold <ingo_weinhold@gmx.de>

* Fixed typos in the disk device job constants.
* Added missing job classes (they don't do anything yet, though) and
completed the implementation of the job generator.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22767 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 9417631f 17-Oct-2007 Ingo Weinhold <ingo_weinhold@gmx.de>

* Made _CountDescendants() public.
* Added private _ChildAt() and _CountChildren(), which don't ask the
delegate, thus reflecting the hierarchy as it was before changes.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22610 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 1573b626 17-Oct-2007 Ingo Weinhold <ingo_weinhold@gmx.de>

* Removed the BDiskDeviceJob class. Jobs won't be generated and executed
in the kernel anymore. The respective functionality will be moved into
the userland. Depending on how we want the API user to interface with
it, we may want to reintroduce a similar class later.
* Cleared remaining references to shadow partitions.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22606 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 27d7c366 17-Oct-2007 Ingo Weinhold <ingo_weinhold@gmx.de>

* Reimplemented BDiskDevice::IsModified()/
{Prepare,Commit,Cancel}Modifications() using the userland add-on
backend. IsModified() and CommitModifications() are little more than
stubs ATM.
* Made BPartition::VisitEachChild()/VisitEachDescendant() const.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22602 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 46b93b2c 17-Oct-2007 Ingo Weinhold <ingo_weinhold@gmx.de>

Style cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22600 a95241bf-73f2-0310-859d-f6bbb57e9c96


# c9518b62 16-Oct-2007 Ingo Weinhold <ingo_weinhold@gmx.de>

Removed some now obsolete methods.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22593 a95241bf-73f2-0310-859d-f6bbb57e9c96


# fe6bd3b5 16-Oct-2007 Ingo Weinhold <ingo_weinhold@gmx.de>

* Moved GetNextSupportedType() and IsSubSystemFor() from
BDiskSystem to BPartition and reimplemented them using the userland
add-on backend instead of syscalls. As a side effect this solves the
TODO I recently added in GetNextSupportedType().
* Reimplemented BDiskSystem::GetTypeForContentType() using the userland
add-on backend instead of a syscall.
* Moved GetTypeForContentType() and IsSubSystemFor() from
BPartitionHandle to BDiskSystemAddOn. They were misplaced.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22592 a95241bf-73f2-0310-859d-f6bbb57e9c96


# b62085b9 15-Oct-2007 Ingo Weinhold <ingo_weinhold@gmx.de>

Coding style cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22587 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 28541dea 14-Oct-2007 Ingo Weinhold <ingo_weinhold@gmx.de>

Beginning of the integration with the new userland disk system add-on
based code. Small API changes.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22561 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 08baf63a 13-Oct-2007 Ingo Weinhold <ingo_weinhold@gmx.de>

Decided that BPartition::ImmutableDelegate would basically be a big
collection of no-op methods, which could as well be implemented in
BPartition itself. This makes the Delegate hierarchy unnecessary:
MutableDelegate becomes Delegate, and we save a few casts as a side
effect.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22547 a95241bf-73f2-0310-859d-f6bbb57e9c96


# b3e7c4a4 13-Oct-2007 Ingo Weinhold <ingo_weinhold@gmx.de>

* Added fDelegate member.
* Removed private AutoDeleter class. The shared ArrayDeleter is used instead.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22538 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 98148bd6 12-Oct-2007 Karsten Heimrich <host.haiku@gmx.de>

* this should fix the build on gcc4

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22524 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 15ed7c71 10-Oct-2007 Ingo Weinhold <ingo_weinhold@gmx.de>

More fleshing out the disk system add-on interface and related classes.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22503 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 7ede8e44 07-Oct-2007 Ingo Weinhold <ingo_weinhold@gmx.de>

Added [Content]Parameters() getters.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22470 a95241bf-73f2-0310-859d-f6bbb57e9c96


# da6d1a70 20-Oct-2005 Axel Dörfler <axeld@pinc-software.de>

fs_mount_volume() now returns a dev_t as well - changed mount/mountvolume to take
that into account as well (they were reporting an error even though everything
went fine).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14450 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 8370cac7 01-Nov-2004 Ingo Weinhold <ingo_weinhold@gmx.de>

Changed my mind. Now BPartition has a method to get the mount point of the partition, respectively a potential mount point, for partitions not yet mounted.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9713 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 701965a6 28-Oct-2004 Ingo Weinhold <ingo_weinhold@gmx.de>

Added mountPoint parameter to Mount() and unmountFlags parameter to Unmount().


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9637 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 3f54a014 21-Sep-2003 Ingo Weinhold <ingo_weinhold@gmx.de>

Removed the resizeContents/force parameters from [Validate]Resize()/[Validate]Move() as discussed in July (grrr, I was lazy).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4782 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 4c4e5505 21-Sep-2003 Ingo Weinhold <ingo_weinhold@gmx.de>

Added BPartition::Uninitialize(). No CanUninitialize(), but
uninitialization does not affect the physical partition, anyway. The
system simply marks the partition as uninitialized for the current
session -- after rebooting it re-appears unchanged.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4777 a95241bf-73f2-0310-859d-f6bbb57e9c96


# fc45522e 29-Jul-2003 Ingo Weinhold <ingo_weinhold@gmx.de>

Added ContentSize(). Added default parameters for CanMove() and CanResize().


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4134 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 426b44c6 21-Jul-2003 Ingo Weinhold <ingo_weinhold@gmx.de>

Implemented disk device updating. Some changes due to syscall changes.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4050 a95241bf-73f2-0310-859d-f6bbb57e9c96


# d61adbe2 21-Jul-2003 Ingo Weinhold <ingo_weinhold@gmx.de>

CanMove() returns a list of partitions to be unmounted for moving, now.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4041 a95241bf-73f2-0310-859d-f6bbb57e9c96


# de8cdced 19-Jul-2003 Ingo Weinhold <ingo_weinhold@gmx.de>

Implemented all Can*() and Validate*() methods. Signature changes to the methods for resizing and moving.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4021 a95241bf-73f2-0310-859d-f6bbb57e9c96


# e1570b66 16-Jul-2003 Ingo Weinhold <ingo_weinhold@gmx.de>

Added mostly empty implementations for the missing methods; implemented some of them. Cleanup.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4002 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 910d9939 15-Jul-2003 Ingo Weinhold <ingo_weinhold@gmx.de>

Implemented the BDiskSystem::Supports*() methods. Added required private helper methods to BPartition.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3989 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 442e574d 14-Jul-2003 Ingo Weinhold <ingo_weinhold@gmx.de>

Added FindDescendant() and _IsShadow().


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3978 a95241bf-73f2-0310-859d-f6bbb57e9c96


# bf5ffb02 08-Jul-2003 Ingo Weinhold <ingo_weinhold@gmx.de>

Added missing manipulation methods (though no implementation). Some cleanup. Renamed UniqueID() to ID().


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3906 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 671a7455 08-Jul-2003 Ingo Weinhold <ingo_weinhold@gmx.de>

Modified the visitor implementation a bit. The Visit() with the BPartition* argument now also gets the level of the partition in the hierarchy.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3900 a95241bf-73f2-0310-859d-f6bbb57e9c96


# c54d68a8 08-Jul-2003 Ingo Weinhold <ingo_weinhold@gmx.de>

Should have waited a few more minutes... Renamed the methods {B,K}Partition::Is{Mountable,Partitionable}() to Contains{File,Partitioning}System(). Similar change for the respective flags (B_PARTITION_{MOUNTABLE,PARTITIONABLE}).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3899 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 55bf93d8 08-Jul-2003 Ingo Weinhold <ingo_weinhold@gmx.de>

Fixed handling of partition and device flags and statuses.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3898 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 5c7270ef 06-Jul-2003 Ingo Weinhold <ingo_weinhold@gmx.de>

Beginning of Disk Device API:
* Made all headers parsable. Also some smaller changes.
* Added empty source files for new classes.
* Changed obsolete implementations of existing classes, so that we
now have basic functionality for BDiskDevice[Roster] and BPartition.
Iterating through disk devices works and the data we get doesn't look
too bad for the beginning.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3883 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 03185864 22-Jun-2003 Ingo Weinhold <ingo_weinhold@gmx.de>

Some changes regarding partition creation and initialization.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3615 a95241bf-73f2-0310-859d-f6bbb57e9c96


# bef8916e 09-Jun-2003 Ingo Weinhold <ingo_weinhold@gmx.de>

* Used partition_id, disk_job_id and disk_system_id instead of uint32.
* Replaced uint32 for indices and counts with int32.
* Some additions to BDiskDeviceRoster and BDiskDeviceJob.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3453 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 5b3f1d0c 28-May-2003 Tyler Dauwalder <tylerdauwalder@nowhere.fake>

DiskDevice API v2.4


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3378 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 9f4ec303 28-May-2003 Tyler Dauwalder <tylerdauwalder@nowhere.fake>

DiskDevice API v2.3.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3376 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 17dc6e0c 28-May-2003 Tyler Dauwalder <tylerdauwalder@nowhere.fake>

DiskDevice API v2.2.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3375 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 40f38240 28-May-2003 Tyler Dauwalder <tylerdauwalder@nowhere.fake>

DiskDevice API v2.0


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3374 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 1a10cbe0 22-Feb-2003 Ingo Weinhold <ingo_weinhold@gmx.de>

Removed the method for getting a FS add-on list. Changed the dialogCenter parameter for the partition methods from BPoint to BRect.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2800 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 76850557 19-Feb-2003 Ingo Weinhold <ingo_weinhold@gmx.de>

Added BDiskDeviceList as friend.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2764 a95241bf-73f2-0310-859d-f6bbb57e9c96


# bdc2eaf5 07-Feb-2003 Ingo Weinhold <ingo_weinhold@gmx.de>

Started implementing the API. Necessary changes to the headers.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2657 a95241bf-73f2-0310-859d-f6bbb57e9c96


# d8c074b2 01-Feb-2003 Ingo Weinhold <ingo_weinhold@gmx.de>

Small changes.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2615 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 42b7adc3 31-Jan-2003 Ingo Weinhold <ingo_weinhold@gmx.de>

Added file header. Minor changes.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2613 a95241bf-73f2-0310-859d-f6bbb57e9c96


# d713d1d9 31-Jan-2003 Ingo Weinhold <ingo_weinhold@gmx.de>

The beginning of the DiskDevice API.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2609 a95241bf-73f2-0310-859d-f6bbb57e9c96


# fd7f53f0492527496965dac3666cdddd92534179 14-Sep-2014 Jessica Hamilton <jessica.l.hamilton@gmail.com>

storage kit: don't expose the dev_t in BPartition::Mount()

Comments to #9672 agree that there's really no need to
expose the dev_t handle, thus simplifying the API.

The dev_t handle, if required, can be retrieved via
BPartition::GetVolume() instead.


# 8bfb30ceb34798ab2d51a700ffe56b9a26528421 22-Dec-2013 Puck Meerburg <puck@puckipedia.nl>

BPartition: Move dev_t return value to an optional parameter

Signed-off-by: Jessica Hamilton <jessica.l.hamilton@gmail.com>


# 8e407ca0e81534f0b324b0198ffd08d7616894e4 20-Jan-2011 Oliver Tappe <zooey@hirschkaefer.de>

* err, 40255 was missing the essential part, actually


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40257 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 84f05bd08b4730850d1ce4017575897b6d9becb8 20-Jan-2011 Oliver Tappe <zooey@hirschkaefer.de>

* fix build problem on Haiku hosts caused by recent move of
ObjectList.h into public header space


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40255 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 2f3ce2bf7ee30d5039ca706f86b51e3145a663f5 23-Oct-2010 Bryce Groff <bgroff@hawaii.edu>

DriveSetup:
- File system is now only displayed when the partition actually has a filesystem.
- Now checks if the DiskSystem supports initializing.
- Updated the *ParamsPanels, as well as, the Disk System add-ons to use the new storage api changes (see below).

Storage Kit:
- Simplified the parameters editor system. Now all parameter editor requests go through a single function, GetParameterEditor, and pass a B_PARAMETER_EDITOR_TYPE to request a particular parameter editor.
- Moved DiskDeviceAddOnManager.h to the headers directory, as it is now required by InitParamsPanel.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39115 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 7f96148cacdbf4ed476c22e6e8148b7f44a91d9e 20-Jul-2009 Ingo Weinhold <ingo_weinhold@gmx.de>

Patch by Bryce Groff with changes by myself:
* Added missing name parameter to the partitioning system module child creation
and child creation validation hooks. Pass the name to them.
* Added BPartitionParameterEditor interface, which is/will be used for editing
disk system specific parameters.
* Implemented partition parameter editors for BFS initialization and Intel
partition map child creation.
* Fixed the incorrect supported child partition type iteration in the Intel
partition map add-on. It does now return actual types.
* Handle the "active" flag parameter in the Intel partitioning system module.
* DriveSetup:
- Replaced the "Create" submenu by a simple menu item. The type can now by
chosen in the dialog.
- Make use of initialization and child creation parameter editors. Some
non-generic code has been moved to the respective editor implementations
(BFS, intel partitioning system).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31658 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 06ba3f0acb06fd0a5818f2609886fe1d35fbfbd3 17-Aug-2008 Axel Dörfler <axeld@pinc-software.de>

* 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


# 25ab0d1a4aef1c271845e86a50fa2ff6eb759f75 29-Oct-2007 Ingo Weinhold <ingo_weinhold@gmx.de>

* Fixed typos in the disk device job constants.
* Added missing job classes (they don't do anything yet, though) and
completed the implementation of the job generator.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22767 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 9417631f64ddbaa208d510d70a4a02c33806fc6b 17-Oct-2007 Ingo Weinhold <ingo_weinhold@gmx.de>

* Made _CountDescendants() public.
* Added private _ChildAt() and _CountChildren(), which don't ask the
delegate, thus reflecting the hierarchy as it was before changes.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22610 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 1573b62671c47e8b30966e97d830cece957e0ee3 17-Oct-2007 Ingo Weinhold <ingo_weinhold@gmx.de>

* Removed the BDiskDeviceJob class. Jobs won't be generated and executed
in the kernel anymore. The respective functionality will be moved into
the userland. Depending on how we want the API user to interface with
it, we may want to reintroduce a similar class later.
* Cleared remaining references to shadow partitions.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22606 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 27d7c366591ba5233181e7485759ed38f037a4ae 17-Oct-2007 Ingo Weinhold <ingo_weinhold@gmx.de>

* Reimplemented BDiskDevice::IsModified()/
{Prepare,Commit,Cancel}Modifications() using the userland add-on
backend. IsModified() and CommitModifications() are little more than
stubs ATM.
* Made BPartition::VisitEachChild()/VisitEachDescendant() const.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22602 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 46b93b2cfdf42468b51fcb086c3d03748cc0453d 17-Oct-2007 Ingo Weinhold <ingo_weinhold@gmx.de>

Style cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22600 a95241bf-73f2-0310-859d-f6bbb57e9c96


# c9518b6240b43820a1e9d286713bc52bab4e819d 16-Oct-2007 Ingo Weinhold <ingo_weinhold@gmx.de>

Removed some now obsolete methods.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22593 a95241bf-73f2-0310-859d-f6bbb57e9c96


# fe6bd3b5b769948cc65119d0e7b285d2a26325df 16-Oct-2007 Ingo Weinhold <ingo_weinhold@gmx.de>

* Moved GetNextSupportedType() and IsSubSystemFor() from
BDiskSystem to BPartition and reimplemented them using the userland
add-on backend instead of syscalls. As a side effect this solves the
TODO I recently added in GetNextSupportedType().
* Reimplemented BDiskSystem::GetTypeForContentType() using the userland
add-on backend instead of a syscall.
* Moved GetTypeForContentType() and IsSubSystemFor() from
BPartitionHandle to BDiskSystemAddOn. They were misplaced.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22592 a95241bf-73f2-0310-859d-f6bbb57e9c96


# b62085b9757a9197307cf1bf9e3614d607a32daa 15-Oct-2007 Ingo Weinhold <ingo_weinhold@gmx.de>

Coding style cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22587 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 28541deac2a6e36fdf5c83d1de2691ab69cded13 14-Oct-2007 Ingo Weinhold <ingo_weinhold@gmx.de>

Beginning of the integration with the new userland disk system add-on
based code. Small API changes.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22561 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 08baf63a9f897061a8ebf0ef2414323369327a00 13-Oct-2007 Ingo Weinhold <ingo_weinhold@gmx.de>

Decided that BPartition::ImmutableDelegate would basically be a big
collection of no-op methods, which could as well be implemented in
BPartition itself. This makes the Delegate hierarchy unnecessary:
MutableDelegate becomes Delegate, and we save a few casts as a side
effect.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22547 a95241bf-73f2-0310-859d-f6bbb57e9c96


# b3e7c4a4b91c2dab45bcc2611db7bb0058456c8a 13-Oct-2007 Ingo Weinhold <ingo_weinhold@gmx.de>

* Added fDelegate member.
* Removed private AutoDeleter class. The shared ArrayDeleter is used instead.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22538 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 98148bd6c57517bd10d7dac5f89a3d0ea9cc3a0b 12-Oct-2007 Karsten Heimrich <host.haiku@gmx.de>

* this should fix the build on gcc4

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22524 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 15ed7c71d66f6332b715ea474df72054d155611a 10-Oct-2007 Ingo Weinhold <ingo_weinhold@gmx.de>

More fleshing out the disk system add-on interface and related classes.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22503 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 7ede8e44942aaf73475576ebc68c24d3e86b9423 07-Oct-2007 Ingo Weinhold <ingo_weinhold@gmx.de>

Added [Content]Parameters() getters.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22470 a95241bf-73f2-0310-859d-f6bbb57e9c96


# da6d1a7022b1c7a4f0f6fba0dc60ffe0a57958da 20-Oct-2005 Axel Dörfler <axeld@pinc-software.de>

fs_mount_volume() now returns a dev_t as well - changed mount/mountvolume to take
that into account as well (they were reporting an error even though everything
went fine).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14450 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 8370cac7f6d03d3a85d00b498bf095a8338810bc 01-Nov-2004 Ingo Weinhold <ingo_weinhold@gmx.de>

Changed my mind. Now BPartition has a method to get the mount point of the partition, respectively a potential mount point, for partitions not yet mounted.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9713 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 701965a64cdea39c3f8bbc031b76000b65509f5f 28-Oct-2004 Ingo Weinhold <ingo_weinhold@gmx.de>

Added mountPoint parameter to Mount() and unmountFlags parameter to Unmount().


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9637 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 3f54a014e5ab7397a146b7062128bc755af08d19 21-Sep-2003 Ingo Weinhold <ingo_weinhold@gmx.de>

Removed the resizeContents/force parameters from [Validate]Resize()/[Validate]Move() as discussed in July (grrr, I was lazy).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4782 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 4c4e5505b0f2618d1b69236441dae0cdebc5166f 21-Sep-2003 Ingo Weinhold <ingo_weinhold@gmx.de>

Added BPartition::Uninitialize(). No CanUninitialize(), but
uninitialization does not affect the physical partition, anyway. The
system simply marks the partition as uninitialized for the current
session -- after rebooting it re-appears unchanged.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4777 a95241bf-73f2-0310-859d-f6bbb57e9c96


# fc45522e03e16643b5c7e127744cbf4f552803e0 29-Jul-2003 Ingo Weinhold <ingo_weinhold@gmx.de>

Added ContentSize(). Added default parameters for CanMove() and CanResize().


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4134 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 426b44c60bbd6df6b6bbf362cf457cc7b5b1fabe 21-Jul-2003 Ingo Weinhold <ingo_weinhold@gmx.de>

Implemented disk device updating. Some changes due to syscall changes.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4050 a95241bf-73f2-0310-859d-f6bbb57e9c96


# d61adbe2444676df399f25b762a07aeb72e1f7e9 21-Jul-2003 Ingo Weinhold <ingo_weinhold@gmx.de>

CanMove() returns a list of partitions to be unmounted for moving, now.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4041 a95241bf-73f2-0310-859d-f6bbb57e9c96


# de8cdceda5b45b4ac304e6e6bf020855105043b5 19-Jul-2003 Ingo Weinhold <ingo_weinhold@gmx.de>

Implemented all Can*() and Validate*() methods. Signature changes to the methods for resizing and moving.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4021 a95241bf-73f2-0310-859d-f6bbb57e9c96


# e1570b66f8d8e990c49733d831726e7ddd03b9d2 16-Jul-2003 Ingo Weinhold <ingo_weinhold@gmx.de>

Added mostly empty implementations for the missing methods; implemented some of them. Cleanup.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4002 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 910d9939210b75fbf4f7dfba0b1e852d32e53890 15-Jul-2003 Ingo Weinhold <ingo_weinhold@gmx.de>

Implemented the BDiskSystem::Supports*() methods. Added required private helper methods to BPartition.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3989 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 442e574d8859f867d1d06936ec4487c275e4dc9f 14-Jul-2003 Ingo Weinhold <ingo_weinhold@gmx.de>

Added FindDescendant() and _IsShadow().


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3978 a95241bf-73f2-0310-859d-f6bbb57e9c96


# bf5ffb0203e30203ac27944fe3ca76e65b315bb0 08-Jul-2003 Ingo Weinhold <ingo_weinhold@gmx.de>

Added missing manipulation methods (though no implementation). Some cleanup. Renamed UniqueID() to ID().


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3906 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 671a745561ca173ffd87a0213672151344d6555c 08-Jul-2003 Ingo Weinhold <ingo_weinhold@gmx.de>

Modified the visitor implementation a bit. The Visit() with the BPartition* argument now also gets the level of the partition in the hierarchy.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3900 a95241bf-73f2-0310-859d-f6bbb57e9c96


# c54d68a84e80123ad2d4bad33fb60d59dfa4ed06 08-Jul-2003 Ingo Weinhold <ingo_weinhold@gmx.de>

Should have waited a few more minutes... Renamed the methods {B,K}Partition::Is{Mountable,Partitionable}() to Contains{File,Partitioning}System(). Similar change for the respective flags (B_PARTITION_{MOUNTABLE,PARTITIONABLE}).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3899 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 55bf93d80d856554438d0306e208e26c7c338f48 08-Jul-2003 Ingo Weinhold <ingo_weinhold@gmx.de>

Fixed handling of partition and device flags and statuses.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3898 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 5c7270efd72e783bce1b56267e4ef0564ec7626d 06-Jul-2003 Ingo Weinhold <ingo_weinhold@gmx.de>

Beginning of Disk Device API:
* Made all headers parsable. Also some smaller changes.
* Added empty source files for new classes.
* Changed obsolete implementations of existing classes, so that we
now have basic functionality for BDiskDevice[Roster] and BPartition.
Iterating through disk devices works and the data we get doesn't look
too bad for the beginning.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3883 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 031858645fa1607c91fa4006c93f397fd6f7b3bb 22-Jun-2003 Ingo Weinhold <ingo_weinhold@gmx.de>

Some changes regarding partition creation and initialization.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3615 a95241bf-73f2-0310-859d-f6bbb57e9c96


# bef8916ea6c2379f9a4a776f2d78ec93551c9de2 09-Jun-2003 Ingo Weinhold <ingo_weinhold@gmx.de>

* Used partition_id, disk_job_id and disk_system_id instead of uint32.
* Replaced uint32 for indices and counts with int32.
* Some additions to BDiskDeviceRoster and BDiskDeviceJob.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3453 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 5b3f1d0cda7d0ad73a0e01fbc8432e14fb79be22 28-May-2003 Tyler Dauwalder <tylerdauwalder@nowhere.fake>

DiskDevice API v2.4


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3378 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 9f4ec30369c37e550d02e63df8d39090418b5745 28-May-2003 Tyler Dauwalder <tylerdauwalder@nowhere.fake>

DiskDevice API v2.3.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3376 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 17dc6e0c849f1abb67fc983c84c838846a3b4181 28-May-2003 Tyler Dauwalder <tylerdauwalder@nowhere.fake>

DiskDevice API v2.2.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3375 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 40f3824020badce3f0ff0adf5eec692ae9292e9c 28-May-2003 Tyler Dauwalder <tylerdauwalder@nowhere.fake>

DiskDevice API v2.0


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3374 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 1a10cbe0336b07ef89aee146a75687244626d13d 22-Feb-2003 Ingo Weinhold <ingo_weinhold@gmx.de>

Removed the method for getting a FS add-on list. Changed the dialogCenter parameter for the partition methods from BPoint to BRect.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2800 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 7685055798cbc1d1e65eac83bb2357c05d2cda1d 19-Feb-2003 Ingo Weinhold <ingo_weinhold@gmx.de>

Added BDiskDeviceList as friend.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2764 a95241bf-73f2-0310-859d-f6bbb57e9c96


# bdc2eaf5d8764d7d5046f3cfba63acc0e71174f3 07-Feb-2003 Ingo Weinhold <ingo_weinhold@gmx.de>

Started implementing the API. Necessary changes to the headers.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2657 a95241bf-73f2-0310-859d-f6bbb57e9c96


# d8c074b218e1e68b2fc39954b8b0ed7fb8fae4de 01-Feb-2003 Ingo Weinhold <ingo_weinhold@gmx.de>

Small changes.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2615 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 42b7adc3a451177f38795e2e2f8bfc0c45103268 31-Jan-2003 Ingo Weinhold <ingo_weinhold@gmx.de>

Added file header. Minor changes.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2613 a95241bf-73f2-0310-859d-f6bbb57e9c96


# d713d1d9739f28e8e4bb0e015c85173f33f59b14 31-Jan-2003 Ingo Weinhold <ingo_weinhold@gmx.de>

The beginning of the DiskDevice API.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2609 a95241bf-73f2-0310-859d-f6bbb57e9c96