summaryrefslogtreecommitdiff
path: root/common/dynamic_partition_control_interface.h
diff options
context:
space:
mode:
authorLinux Build Service Account <lnxbuild@localhost>2021-02-01 00:10:01 -0800
committerLinux Build Service Account <lnxbuild@localhost>2021-02-01 00:10:01 -0800
commit484e5e66690f646d3cd73c64962f570772d2ffb7 (patch)
treef1cba972cae9a60edeeecf4382ff0c6cede78a3d /common/dynamic_partition_control_interface.h
parent458b097199739c720c2ec6035ae0be15a88ea7e7 (diff)
parente7a44e47a3951ce8854545f7a4982c2f64a79bee (diff)
Merge e7a44e47a3951ce8854545f7a4982c2f64a79bee on remote branch
Change-Id: Ied6620e3a6864ae3f446f61b2ca95558af9bd02e
Diffstat (limited to 'common/dynamic_partition_control_interface.h')
-rw-r--r--common/dynamic_partition_control_interface.h14
1 files changed, 13 insertions, 1 deletions
diff --git a/common/dynamic_partition_control_interface.h b/common/dynamic_partition_control_interface.h
index c8a2274c..4f46f740 100644
--- a/common/dynamic_partition_control_interface.h
+++ b/common/dynamic_partition_control_interface.h
@@ -26,6 +26,7 @@
#include "update_engine/common/action.h"
#include "update_engine/common/cleanup_previous_update_action_delegate.h"
#include "update_engine/common/error_code.h"
+#include "update_engine/common/prefs_interface.h"
#include "update_engine/payload_consumer/file_descriptor.h"
#include "update_engine/update_metadata.pb.h"
@@ -36,6 +37,12 @@ class ISnapshotWriter;
namespace chromeos_update_engine {
+struct PartitionDevice {
+ std::string rw_device_path;
+ std::string mountable_device_path;
+ bool is_dynamic;
+};
+
struct FeatureFlag {
enum class Value { NONE = 0, RETROFIT, LAUNCH };
constexpr explicit FeatureFlag(Value value) : value_(value) {}
@@ -48,7 +55,6 @@ struct FeatureFlag {
};
class BootControlInterface;
-class PrefsInterface;
class DynamicPartitionControlInterface {
public:
@@ -154,6 +160,12 @@ class DynamicPartitionControlInterface {
const std::string& unsuffixed_partition_name,
const std::optional<std::string>&,
bool is_append = false) = 0;
+ virtual FileDescriptorPtr OpenCowReader(
+ const std::string& unsuffixed_partition_name,
+ const std::optional<std::string>&,
+ bool is_append = false) = 0;
+
+ virtual bool IsDynamicPartition(const std::string& part_name) = 0;
// Create virtual block devices for all partitions.
virtual bool MapAllPartitions() = 0;