CaptureMemorySnapshot insight worker task

This commit is contained in:
Nav
2022-12-24 02:40:57 +00:00
parent 59776f1a0e
commit be5127feda
3 changed files with 150 additions and 0 deletions

View File

@@ -0,0 +1,42 @@
#pragma once
#include <QString>
#include <optional>
#include "InsightWorkerTask.hpp"
#include "src/Targets/TargetMemory.hpp"
#include "src/Insight/UserInterfaces/InsightWindow/Widgets/TargetMemoryInspectionPane/MemorySnapshot.hpp"
namespace Bloom
{
class CaptureMemorySnapshot: public InsightWorkerTask
{
Q_OBJECT
public:
CaptureMemorySnapshot(
const QString& name,
const QString& description,
Targets::TargetMemoryType memoryType,
const std::vector<FocusedMemoryRegion>& focusedRegions,
const std::vector<ExcludedMemoryRegion>& excludedRegions,
const std::optional<Targets::TargetMemoryBuffer>& data
);
signals:
void memorySnapshotCaptured(MemorySnapshot snapshot);
protected:
void run(TargetController::TargetControllerConsole& targetControllerConsole) override;
private:
QString name;
QString description;
Targets::TargetMemoryType memoryType;
std::vector<FocusedMemoryRegion> focusedRegions;
std::vector<ExcludedMemoryRegion> excludedRegions;
std::optional<Targets::TargetMemoryBuffer> data;
};
}