Android-cuttlefish cvd tool
|
#include <qcow2.h>
Classes | |
struct | Impl |
Public Member Functions | |
Qcow2Image (Qcow2Image &&) | |
~Qcow2Image () override | |
Qcow2Image & | operator= (Qcow2Image &&) |
Result< uint64_t > | VirtualSizeBytes () const override |
![]() | |
virtual | ~DiskImage ()=default |
DiskImage & | operator= (DiskImage &&)=delete |
virtual Result< uint64_t > | VirtualSizeBytes () const =0 |
Static Public Member Functions | |
static Result< Qcow2Image > | Create (const std::string &crosvm_path, const std::string &backing_file, std::string output_overlay_path) |
static Result< Qcow2Image > | OpenExisting (std::string path) |
static std::string | MagicString () |
Private Member Functions | |
Qcow2Image (std::unique_ptr< Impl >) | |
Private Attributes | |
std::unique_ptr< Impl > | impl_ |
qcow, or "QEMU Copy-On-Write" is a file format containing a list of disk offsets and file contents. This can be combined with a backing file, to represent an original disk file plus disk updates over that file. The qcow files can be swapped out and replaced without affecting the original. qcow is supported by QEMU and crosvm.
cuttlefish::Qcow2Image::Qcow2Image | ( | Qcow2Image && | other | ) |
|
overridedefault |
|
private |
|
static |
Generate a qcow overlay backed by a given implementation file.
The crosvm binary at crosvm_path
is used to generate an overlay file at output_overlay_path
that functions as an overlay on the file at backing_file
.
|
static |
"QCOW magic string", used to identify the file type.
Valid qcow2 files start with this prefix.
https://gitlab.com/qemu-project/qemu/-/blob/master/docs/interop/qcow2.rst
|
static |
Qcow2Image & cuttlefish::Qcow2Image::operator= | ( | Qcow2Image && | other | ) |
|
overridevirtual |
Implements cuttlefish::DiskImage.
|
private |