1/* 2 * Copyright 2015, Rene Gollent, rene@gollent.com. 3 * Copyright 2009, Ingo Weinhold, ingo_weinhold@gmx.de. 4 * Distributed under the terms of the MIT License. 5 */ 6#ifndef VALUE_WRITER_H 7#define VALUE_WRITER_H 8 9 10#include <OS.h> 11#include <String.h> 12 13#include <Variant.h> 14 15 16class Architecture; 17class CpuState; 18class DebuggerInterface; 19class ValueLocation; 20 21 22class ValueWriter { 23public: 24 ValueWriter(Architecture* architecture, 25 DebuggerInterface* interface, 26 CpuState* cpuState, 27 thread_id targetThread); 28 // cpuState can be NULL 29 ~ValueWriter(); 30 31 Architecture* GetArchitecture() const 32 { return fArchitecture; } 33 34 status_t WriteValue(ValueLocation* location, 35 BVariant& value); 36 37private: 38 Architecture* fArchitecture; 39 DebuggerInterface* fDebuggerInterface; 40 CpuState* fCpuState; 41 thread_id fTargetThread; 42}; 43 44 45#endif // VALUE_WRITER_H 46