Project snapshot with edit deltas. More...
#include <project_tool.h>
Public Member Functions | |
| absl::Status | SaveToFile (const std::string &filepath) const |
Static Public Member Functions | |
| static absl::StatusOr< ProjectSnapshot > | LoadFromFile (const std::string &filepath) |
Public Attributes | |
| std::string | name |
| std::string | description |
| std::chrono::system_clock::time_point | created |
| std::vector< RomEdit > | edits |
| std::map< std::string, std::string > | metadata |
| std::array< uint8_t, 32 > | rom_checksum |
Project snapshot with edit deltas.
Snapshots store only edit deltas, not full ROM copies. Includes checksum validation against base ROM.
Definition at line 67 of file project_tool.h.
| absl::Status yaze::cli::agent::tools::ProjectSnapshot::SaveToFile | ( | const std::string & | filepath | ) | const |
Definition at line 222 of file project_tool.cc.
References yaze::cli::agent::tools::SerializedEdit::address, yaze::cli::agent::tools::EditFileHeader::base_rom_sha256, created, description, yaze::cli::agent::tools::EditFileHeader::edit_count, edits, yaze::cli::agent::tools::ProjectToolUtils::FormatTimestamp(), yaze::cli::agent::tools::SerializedEdit::length, metadata, name, and rom_checksum.
Referenced by yaze::cli::agent::tools::ProjectManager::CreateSnapshot().

|
static |
Definition at line 271 of file project_tool.cc.
References yaze::cli::agent::RomEdit::address, yaze::cli::agent::tools::SerializedEdit::address, yaze::cli::agent::tools::EditFileHeader::base_rom_sha256, created, yaze::cli::agent::RomEdit::description, description, yaze::cli::agent::tools::EditFileHeader::edit_count, edits, yaze::cli::agent::tools::EditFileHeader::kCurrentVersion, yaze::cli::agent::tools::EditFileHeader::kMagic, yaze::cli::agent::tools::SerializedEdit::length, yaze::cli::agent::tools::EditFileHeader::magic, metadata, name, yaze::cli::agent::RomEdit::new_value, yaze::cli::agent::RomEdit::old_value, yaze::cli::agent::tools::ProjectToolUtils::ParseTimestamp(), rom_checksum, yaze::cli::agent::RomEdit::timestamp, and yaze::cli::agent::tools::EditFileHeader::version.
Referenced by yaze::cli::agent::tools::ProjectManager::LoadSnapshots().

| std::string yaze::cli::agent::tools::ProjectSnapshot::name |
Definition at line 68 of file project_tool.h.
Referenced by yaze::cli::agent::tools::ProjectManager::CreateSnapshot(), yaze::cli::agent::tools::ProjectRestoreTool::Execute(), yaze::cli::agent::tools::ProjectToolBase::FormatSnapshot(), LoadFromFile(), yaze::cli::agent::tools::ProjectManager::LoadSnapshots(), and SaveToFile().
| std::string yaze::cli::agent::tools::ProjectSnapshot::description |
Definition at line 69 of file project_tool.h.
Referenced by yaze::cli::agent::tools::ProjectManager::CreateSnapshot(), yaze::cli::agent::tools::ProjectRestoreTool::Execute(), yaze::cli::agent::tools::ProjectToolBase::FormatSnapshot(), LoadFromFile(), and SaveToFile().
| std::chrono::system_clock::time_point yaze::cli::agent::tools::ProjectSnapshot::created |
Definition at line 70 of file project_tool.h.
Referenced by yaze::cli::agent::tools::ProjectManager::CreateSnapshot(), yaze::cli::agent::tools::ProjectToolBase::FormatSnapshot(), LoadFromFile(), and SaveToFile().
| std::vector<RomEdit> yaze::cli::agent::tools::ProjectSnapshot::edits |
Definition at line 71 of file project_tool.h.
Referenced by yaze::cli::agent::tools::ProjectManager::CreateSnapshot(), yaze::cli::agent::tools::ProjectManager::DiffSnapshots(), yaze::cli::agent::tools::ProjectRestoreTool::Execute(), yaze::cli::agent::tools::ProjectToolBase::FormatSnapshot(), LoadFromFile(), yaze::cli::agent::tools::ProjectManager::RestoreSnapshot(), and SaveToFile().
| std::map<std::string, std::string> yaze::cli::agent::tools::ProjectSnapshot::metadata |
Definition at line 72 of file project_tool.h.
Referenced by LoadFromFile(), and SaveToFile().
| std::array<uint8_t, 32> yaze::cli::agent::tools::ProjectSnapshot::rom_checksum |
Definition at line 73 of file project_tool.h.
Referenced by yaze::cli::agent::tools::ProjectManager::CreateSnapshot(), yaze::cli::agent::tools::ProjectToolBase::FormatSnapshot(), LoadFromFile(), yaze::cli::agent::tools::ProjectManager::RestoreSnapshot(), and SaveToFile().