diff --git a/headers/private/kernel/disk_device_manager/KDiskDeviceUtils.h b/headers/private/kernel/disk_device_manager/KDiskDeviceUtils.h index a8b65a5523..e59226609c 100644 --- a/headers/private/kernel/disk_device_manager/KDiskDeviceUtils.h +++ b/headers/private/kernel/disk_device_manager/KDiskDeviceUtils.h @@ -169,6 +169,11 @@ public: SetTo(&lockable, alreadyLocked); } + inline void Unset() + { + _Unlock(); + } + inline AutoLocker &operator=(Lockable *lockable) { SetTo(lockable); @@ -211,6 +216,7 @@ class KDiskDevice; class KDiskDeviceManager; class KDiskSystem; class KPartition; +//typedef struct disk_device_data disk_device_data; typedef AutoLocker > DeviceReadLocker; @@ -255,6 +261,44 @@ public: typedef AutoLocker > DiskSystemLoader; +/* +// AutoLockerDeviceStructReadLocker +template +class AutoLockerDeviceStructReadLocker { +public: + inline bool Lock(disk_device_data *device) + { + return read_lock_disk_device(device->id); + } + + inline void Unlock(disk_device_data *device) + { + read_unlock_disk_device(device->id); + } +}; + +typedef AutoLocker > + DeviceStructReadLocker; + +// AutoLockerDeviceStructWriteLocker +template +class AutoLockerDeviceStructWriteLocker { +public: + inline bool Lock(disk_device_data *device) + { + return write_lock_disk_device(device->id); + } + + inline void Unlock(disk_device_data *device) + { + write_unlock_disk_device(device->id); + } +}; + +typedef AutoLocker > + DeviceStructWriteLocker; +*/ + } // namespace DiskDevice } // namespace BPrivate @@ -265,5 +309,7 @@ using BPrivate::DiskDevice::DeviceWriteLocker; using BPrivate::DiskDevice::ManagerLocker; using BPrivate::DiskDevice::PartitionRegistrar; using BPrivate::DiskDevice::DiskSystemLoader; +//using BPrivate::DiskDevice::DeviceStructReadLocker; +//using BPrivate::DiskDevice::DeviceStructReadLocker; #endif // _K_DISK_DEVICE_H