Files
haiku-beta6/headers/private/storage/DiskDevice.h
T
Ingo Weinhold 0cb59d9c8c Added IsReadOnlyMedia(), IsWriteOnceMedia(), and renamed IsRemovable() to IsRemovableMedia() for consistency.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3904 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-08 23:28:32 +00:00

50 lines
1.2 KiB
C++

//----------------------------------------------------------------------
// This software is part of the OpenBeOS distribution and is covered
// by the OpenBeOS license.
//---------------------------------------------------------------------
#ifndef _DISK_DEVICE_H
#define _DISK_DEVICE_H
#include <Partition.h>
struct user_disk_device_data;
class BDiskDevice : public BPartition {
public:
BDiskDevice();
virtual ~BDiskDevice();
bool HasMedia() const;
bool IsRemovableMedia() const;
bool IsReadOnlyMedia() const;
bool IsWriteOnceMedia() const;
status_t Eject(bool update = false);
status_t Update(bool *updated = NULL);
void Unset();
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();
private:
friend class BDiskDeviceList;
friend class BDiskDeviceRoster;
status_t _SetTo(partition_id id, size_t neededSize = 0);
status_t _SetTo(user_disk_device_data *data);
virtual bool _AcceptVisitor(BDiskDeviceVisitor *visitor, int32 level);
user_disk_device_data *fDeviceData;
};
#endif // _DISK_DEVICE_H