From 46b93b2cfdf42468b51fcb086c3d03748cc0453d Mon Sep 17 00:00:00 2001 From: Ingo Weinhold Date: Wed, 17 Oct 2007 20:51:10 +0000 Subject: [PATCH] Style cleanup. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22600 a95241bf-73f2-0310-859d-f6bbb57e9c96 --- headers/private/storage/DiskDevice.h | 78 ++++++++++---------- headers/private/storage/Partition.h | 3 +- src/kits/storage/DiskDevice.cpp | 102 ++++++++++++++++++++------- src/kits/storage/Partition.cpp | 2 +- 4 files changed, 119 insertions(+), 66 deletions(-) diff --git a/headers/private/storage/DiskDevice.h b/headers/private/storage/DiskDevice.h index 5879c30928..b7ba1877c1 100644 --- a/headers/private/storage/DiskDevice.h +++ b/headers/private/storage/DiskDevice.h @@ -1,62 +1,66 @@ -//---------------------------------------------------------------------- -// This software is part of the OpenBeOS distribution and is covered -// by the OpenBeOS license. -//--------------------------------------------------------------------- - +/* + * Copyright 2003-2007, Ingo Weinhold, ingo_weinhold@gmx.de. + * Copyright 2003, Tyler Akidau, haiku@akidau.net. + * Distributed under the terms of the MIT License. + */ #ifndef _DISK_DEVICE_H #define _DISK_DEVICE_H #include + struct user_disk_device_data; class BDiskDevice : public BPartition { public: - BDiskDevice(); - virtual ~BDiskDevice(); + BDiskDevice(); + virtual ~BDiskDevice(); - bool HasMedia() const; - bool IsRemovableMedia() const; - bool IsReadOnlyMedia() const; - bool IsWriteOnceMedia() const; + bool HasMedia() const; + bool IsRemovableMedia() const; + bool IsReadOnlyMedia() const; + bool IsWriteOnceMedia() const; - status_t Eject(bool update = false); + status_t Eject(bool update = false); - status_t SetTo(partition_id id); - status_t Update(bool *updated = NULL); - void Unset(); - status_t InitCheck() const; + status_t SetTo(partition_id id); + status_t Update(bool* updated = NULL); + void Unset(); + status_t InitCheck() const; - virtual status_t GetPath(BPath *path) const; + virtual status_t GetPath(BPath* path) const; - bool IsModified() const; - status_t PrepareModifications(); - status_t CommitModifications(bool synchronously = true, - BMessenger progressMessenger = BMessenger(), - bool receiveCompleteProgressUpdates = true); - status_t CancelModifications(); + bool IsModified() const; + status_t PrepareModifications(); + status_t CommitModifications(bool synchronously = true, + BMessenger progressMessenger = BMessenger(), + bool receiveCompleteProgressUpdates = true); + status_t CancelModifications(); private: - friend class BDiskDeviceList; - friend class BDiskDeviceRoster; + friend class BDiskDeviceList; + friend class BDiskDeviceRoster; - BDiskDevice(const BDiskDevice &); - BDiskDevice &operator=(const BDiskDevice &); + BDiskDevice(const BDiskDevice&); + BDiskDevice& operator=(const BDiskDevice&); - static status_t _GetData(partition_id id, bool deviceOnly, bool shadow, - size_t neededSize, user_disk_device_data **data); + static status_t _GetData(partition_id id, bool deviceOnly, + bool shadow, size_t neededSize, + user_disk_device_data** data); - status_t _SetTo(partition_id id, bool deviceOnly, bool shadow, - size_t neededSize); - status_t _SetTo(user_disk_device_data *data); - status_t _Update(bool shadow, bool *updated); - status_t _Update(user_disk_device_data *data, bool *updated); + status_t _SetTo(partition_id id, bool deviceOnly, + bool shadow, size_t neededSize); + status_t _SetTo(user_disk_device_data* data); + status_t _Update(bool shadow, bool* updated); + status_t _Update(user_disk_device_data* data, + bool* updated); - static void _ClearUserData(user_partition_data* data); + static void _ClearUserData(user_partition_data* data); - virtual bool _AcceptVisitor(BDiskDeviceVisitor *visitor, int32 level); + virtual bool _AcceptVisitor(BDiskDeviceVisitor* visitor, + int32 level); - user_disk_device_data *fDeviceData; + user_disk_device_data* fDeviceData; }; #endif // _DISK_DEVICE_H diff --git a/headers/private/storage/Partition.h b/headers/private/storage/Partition.h index 0eaf51afc4..14c3b8d1a0 100644 --- a/headers/private/storage/Partition.h +++ b/headers/private/storage/Partition.h @@ -1,5 +1,6 @@ /* - * Copyright 2003-2007, Ingo Weinhold, bonefish@cs.tu-berlin.de. + * Copyright 2003-2007, Ingo Weinhold, ingo_weinhold@gmx.de. + * Copyright 2003, Tyler Akidau, haiku@akidau.net. * Distributed under the terms of the MIT License. */ #ifndef _PARTITION_H diff --git a/src/kits/storage/DiskDevice.cpp b/src/kits/storage/DiskDevice.cpp index f8cab70688..f5fe7f1634 100644 --- a/src/kits/storage/DiskDevice.cpp +++ b/src/kits/storage/DiskDevice.cpp @@ -1,7 +1,7 @@ -//---------------------------------------------------------------------- -// This software is part of the OpenBeOS distribution and is covered -// by the OpenBeOS license. -//--------------------------------------------------------------------- +/* + * Copyright 2003-2007, Ingo Weinhold, ingo_weinhold@gmx.de. + * Distributed under the terms of the MIT License. + */ #include @@ -28,6 +28,7 @@ \brief A BDiskDevice object represents a storage device. */ + // constructor /*! \brief Creates an uninitialized BDiskDevice object. */ @@ -36,6 +37,7 @@ BDiskDevice::BDiskDevice() { } + // destructor /*! \brief Frees all resources associated with this object. */ @@ -44,6 +46,7 @@ BDiskDevice::~BDiskDevice() CancelModifications(); } + // HasMedia /*! \brief Returns whether the device contains a media. \return \c true, if the device contains a media, \c false otherwise. @@ -52,9 +55,10 @@ bool BDiskDevice::HasMedia() const { return (fDeviceData - && fDeviceData->device_flags & B_DISK_DEVICE_HAS_MEDIA); + && fDeviceData->device_flags & B_DISK_DEVICE_HAS_MEDIA); } + // IsRemovableMedia /*! \brief Returns whether the device media are removable. \return \c true, if the device media are removable, \c false otherwise. @@ -63,25 +67,28 @@ bool BDiskDevice::IsRemovableMedia() const { return (fDeviceData - && fDeviceData->device_flags & B_DISK_DEVICE_REMOVABLE); + && fDeviceData->device_flags & B_DISK_DEVICE_REMOVABLE); } + // IsReadOnlyMedia bool BDiskDevice::IsReadOnlyMedia() const { return (fDeviceData - && fDeviceData->device_flags & B_DISK_DEVICE_READ_ONLY); + && fDeviceData->device_flags & B_DISK_DEVICE_READ_ONLY); } + // IsWriteOnceMedia bool BDiskDevice::IsWriteOnceMedia() const { return (fDeviceData - && fDeviceData->device_flags & B_DISK_DEVICE_WRITE_ONCE); + && fDeviceData->device_flags & B_DISK_DEVICE_WRITE_ONCE); } + // Eject /*! \brief Eject the device's media. @@ -99,7 +106,7 @@ status_t BDiskDevice::Eject(bool update) { /* // get path - const char *path = Path(); + const char* path = Path(); status_t error = (path ? B_OK : B_NO_INIT); // check whether the device media is removable if (error == B_OK && !IsRemovable()) @@ -120,6 +127,7 @@ BDiskDevice::Eject(bool update) return B_ERROR; } + // SetTo status_t BDiskDevice::SetTo(partition_id id) @@ -127,6 +135,7 @@ BDiskDevice::SetTo(partition_id id) return _SetTo(id, true, false, 0); } + // Update /*! \brief Updates the object to reflect the latest changes to the device. @@ -141,11 +150,12 @@ BDiskDevice::SetTo(partition_id id) \return \c B_OK, if the update went fine, another error code otherwise. */ status_t -BDiskDevice::Update(bool *updated) +BDiskDevice::Update(bool* updated) { return _Update(_IsShadow(), updated); } + // Unset void BDiskDevice::Unset() @@ -155,6 +165,7 @@ BDiskDevice::Unset() fDeviceData = NULL; } + // InitCheck status_t BDiskDevice::InitCheck() const @@ -162,23 +173,26 @@ BDiskDevice::InitCheck() const return (fDeviceData ? B_OK : B_NO_INIT); } + // GetPath status_t -BDiskDevice::GetPath(BPath *path) const +BDiskDevice::GetPath(BPath* path) const { if (!path || !fDeviceData) return B_BAD_VALUE; return path->SetTo(fDeviceData->path); } + // IsModified bool BDiskDevice::IsModified() const { return (InitCheck() == B_OK && _IsShadow() - && _kern_is_disk_device_modified(ID())); + && _kern_is_disk_device_modified(ID())); } + // PrepareModifications /*! \brief Initializes the partition hierarchy for modifications. * @@ -197,19 +211,23 @@ BDiskDevice::PrepareModifications() return error; if (_IsShadow()) return B_ERROR; + // ask kernel to prepare for modifications error = _kern_prepare_disk_device_modifications(ID()); if (error != B_OK) return error; + // update error = _Update(true, NULL); if (error != B_OK) { // bad -- cancelling the modifications is all we can do _kern_cancel_disk_device_modifications(ID()); } + return error; } + // CommitModifications /*! \brief Commits modifications to device. * @@ -219,14 +237,14 @@ BDiskDevice::PrepareModifications() */ status_t BDiskDevice::CommitModifications(bool synchronously, - BMessenger progressMessenger, - bool receiveCompleteProgressUpdates) + BMessenger progressMessenger, bool receiveCompleteProgressUpdates) { status_t error = InitCheck(); if (error != B_OK) return error; if (!_IsShadow()) return B_BAD_VALUE; + // TODO: Get port and token from the progressMessenger // TODO: Respect "synchronously"! port_id port = -1; @@ -235,9 +253,11 @@ BDiskDevice::CommitModifications(bool synchronously, receiveCompleteProgressUpdates); if (error == B_OK) error = _SetTo(ID(), true, false, 0); + return error; } + // CancelModifications /*! \brief Cancels all modifications performed on the device. * @@ -251,35 +271,40 @@ BDiskDevice::CancelModifications() return error; if (!_IsShadow()) return B_BAD_VALUE; + error = _kern_cancel_disk_device_modifications(ID()); if (error == B_OK) error = _SetTo(ID(), true, false, 0); + return error; } + // copy constructor /*! \brief Privatized copy constructor to avoid usage. */ -BDiskDevice::BDiskDevice(const BDiskDevice &) +BDiskDevice::BDiskDevice(const BDiskDevice&) { } + // = /*! \brief Privatized assignment operator to avoid usage. */ -BDiskDevice & -BDiskDevice::operator=(const BDiskDevice &) +BDiskDevice& +BDiskDevice::operator=(const BDiskDevice&) { return *this; } + // _GetData status_t BDiskDevice::_GetData(partition_id id, bool deviceOnly, bool shadow, - size_t neededSize, user_disk_device_data **data) + size_t neededSize, user_disk_device_data** data) { // get the device data - void *buffer = NULL; + void* buffer = NULL; size_t bufferSize = 0; if (neededSize > 0) { // allocate initial buffer @@ -288,6 +313,7 @@ BDiskDevice::_GetData(partition_id id, bool deviceOnly, bool shadow, return B_NO_MEMORY; bufferSize = neededSize; } + status_t error = B_OK; do { error = _kern_get_disk_device_data(id, deviceOnly, shadow, @@ -297,79 +323,99 @@ BDiskDevice::_GetData(partition_id id, bool deviceOnly, bool shadow, // buffer to small re-allocate it if (buffer) free(buffer); + buffer = malloc(neededSize); + if (buffer) bufferSize = neededSize; else error = B_NO_MEMORY; } } while (error == B_BUFFER_OVERFLOW); + // set result / cleanup on error if (error == B_OK) *data = (user_disk_device_data*)buffer; else if (buffer) free(buffer); + return error; } + // _SetTo status_t BDiskDevice::_SetTo(partition_id id, bool deviceOnly, bool shadow, size_t neededSize) { Unset(); + // get the device data - user_disk_device_data *data = NULL; + user_disk_device_data* data = NULL; status_t error = _GetData(id, deviceOnly, shadow, neededSize, &data); + // set the data if (error == B_OK) error = _SetTo(data); + // cleanup on error if (error != B_OK && data) free(data); + return error; } + // _SetTo status_t -BDiskDevice::_SetTo(user_disk_device_data *data) +BDiskDevice::_SetTo(user_disk_device_data* data) { Unset(); + if (!data) return B_BAD_VALUE; + fDeviceData = data; + status_t error = BPartition::_SetTo(this, NULL, - &fDeviceData->device_partition_data); + &fDeviceData->device_partition_data); if (error != B_OK) { // If _SetTo() fails, the caller retains ownership of the supplied // data. So, unset fDeviceData before calling Unset(). fDeviceData = NULL; Unset(); } + return error; } + // _Update status_t -BDiskDevice::_Update(bool shadow, bool *updated) +BDiskDevice::_Update(bool shadow, bool* updated) { if (InitCheck() != B_OK) return InitCheck(); + // get the device data - user_disk_device_data *data = NULL; + user_disk_device_data* data = NULL; status_t error = _GetData(ID(), true, shadow, 0, &data); + // set the data if (error == B_OK) error = _Update(data, updated); + // cleanup on error if (error != B_OK && data) free(data); + return error; } + // _Update status_t -BDiskDevice::_Update(user_disk_device_data *data, bool *updated) +BDiskDevice::_Update(user_disk_device_data* data, bool* updated) { if (!data || !fDeviceData || ID() != data->device_partition_data.id) return B_BAD_VALUE; @@ -390,7 +436,7 @@ BDiskDevice::_Update(user_disk_device_data *data, bool *updated) // update existing partitions and add new ones error = BPartition::_Update(&data->device_partition_data, updated); if (error == B_OK) { - user_disk_device_data *oldData = fDeviceData; + user_disk_device_data* oldData = fDeviceData; fDeviceData = data; // check for changes if (data->device_flags != oldData->device_flags @@ -399,12 +445,14 @@ BDiskDevice::_Update(user_disk_device_data *data, bool *updated) } free(oldData); } + return error; } + // _AcceptVisitor bool -BDiskDevice::_AcceptVisitor(BDiskDeviceVisitor *visitor, int32 level) +BDiskDevice::_AcceptVisitor(BDiskDeviceVisitor* visitor, int32 level) { return visitor->Visit(this); } diff --git a/src/kits/storage/Partition.cpp b/src/kits/storage/Partition.cpp index 94dfc9ecc3..e1010bc28d 100644 --- a/src/kits/storage/Partition.cpp +++ b/src/kits/storage/Partition.cpp @@ -1,5 +1,5 @@ /* - * Copyright 2003-2007, Ingo Weinhold, bonefish@cs.tu-berlin.de. + * Copyright 2003-2007, Ingo Weinhold, ingo_weinhold@gmx.de. * Distributed under the terms of the MIT License. */