Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(356)

Unified Diff: udev-device.h

Issue 6824082: Populate disk information from udev to disk manager. (Closed) Base URL: ssh://gitrw.chromium.org:9222/cros-disks.git@master
Patch Set: Created 9 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: udev-device.h
diff --git a/udev-device.h b/udev-device.h
new file mode 100644
index 0000000000000000000000000000000000000000..a2a1eacbdce985ff40e69e7b209cf8b2bc31791a
--- /dev/null
+++ b/udev-device.h
@@ -0,0 +1,64 @@
+// Copyright (c) 2011 The Chromium OS Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#ifndef CHOS_DISKS_UDEV_DEVICE_H_
+#define CROS_DISKS_UDEV_DEVICE_H_
+
+#include <base/basictypes.h>
+#include <string>
+#include <vector>
+
+#include "disk.h"
+
+struct udev_device;
+
+namespace cros_disks {
+
+// A utility class that helps query information about a udev device.
+class UdevDevice {
+ public:
+
+ UdevDevice(struct udev_device *dev);
+ ~UdevDevice();
+
+ // Gets the string value of a device attribute.
+ std::string GetAttribute(const char *key) const;
+
+ // Checks if the value of a device attribute represents a Boolean true.
+ bool IsAttributeTrue(const char *key) const;
+
+ // Checks if a device attribute exists.
+ bool HasAttribute(const char *key) const;
+
+ // Gets the string value of a device property.
+ std::string GetProperty(const char *key) const;
+
+ // Checks if the value of a device property represents a Boolean true.
+ bool IsPropertyTrue(const char *key) const;
+
+ // Checks if a device property exists.
+ bool HasProperty(const char *key) const;
+
+ // Gets the total and remaining capacity of the device.
+ void GetSizeInfo(uint64 *total_size, uint64 *remaining_size) const;
+
+ // Checks if any media is available in the device.
+ bool IsMediaAvailable() const;
+
+ // Gets the mounted paths for the device.
+ std::vector<std::string> GetMountedPaths() const;
+
+ // Returns a Disk object based on the device information.
+ Disk ToDisk() const;
+
+ private:
+
+ bool IsValueBooleanTrue(const char *value) const;
+
+ mutable struct udev_device *dev_;
rtc 2011/04/12 21:12:01 Can this be const?
Ben Chan 2011/04/12 21:18:46 Unfortunately, all udev_device_* function takes a
+};
+
+} // namespace cros_disks
+
+#endif // CROS_DISKS_UDEV_DEVICE_H_

Powered by Google App Engine
This is Rietveld 408576698