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 16 class Architecture; 17 class CpuState; 18 class DebuggerInterface; 19 class ValueLocation; 20 21 22 class ValueWriter { 23 public: 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 37 private: 38 Architecture* fArchitecture; 39 DebuggerInterface* fDebuggerInterface; 40 CpuState* fCpuState; 41 thread_id fTargetThread; 42 }; 43 44 45 #endif // VALUE_WRITER_H 46