tools/runonphone/symbianutils/trkutils.h
changeset 33 3e2da88830cd
parent 30 5dc02b23752f
--- a/tools/runonphone/symbianutils/trkutils.h	Tue Jul 06 15:10:48 2010 +0300
+++ b/tools/runonphone/symbianutils/trkutils.h	Wed Aug 18 10:37:55 2010 +0300
@@ -56,6 +56,7 @@
 namespace trk {
 
 typedef unsigned char byte;
+struct TrkResult;
 
 enum Command {
     //meta commands
@@ -135,6 +136,20 @@
     TrkDSPositionFile = 0xd4
 };
 
+enum DSOSItemTypes {
+    kDSOSProcessItem = 0x0000,
+    kDSOSThreadItem = 0x0001,
+    kDSOSDLLItem = 0x0002,
+    kDSOSAppItem = 0x0003,
+    kDSOSMemBlockItem = 0x0004,
+    kDSOSProcAttachItem = 0x0005,
+    kDSOSThreadAttachItem = 0x0006,
+    kDSOSProcAttach2Item = 0x0007,
+    kDSOSProcRunItem = 0x0008,
+    /* 0x0009 - 0x00ff reserved for general expansion */
+    /* 0x0100 - 0xffff available for target-specific use */
+};
+
 enum SerialMultiplexor {
     MuxRaw = 0,
     MuxTextTrace = 0x0102,
@@ -164,11 +179,14 @@
 
 struct SYMBIANUTILS_EXPORT Library
 {
-    Library() {}
+    Library();
+    explicit Library(const TrkResult &r);
 
     QByteArray name;
     uint codeseg;
     uint dataseg;
+     //library addresses are valid for a given process (depending on memory model, they might be loaded at the same address in all processes or not)
+    uint pid;
 };
 
 struct SYMBIANUTILS_EXPORT TrkAppVersion
@@ -187,6 +205,11 @@
     Session();
     void reset();
     QString deviceDescription(unsigned verbose) const;
+    QString toString() const;
+    // Answer to qXfer::libraries
+    QByteArray gdbLibraryList() const;
+    // Answer to qsDllInfo, can be sent chunk-wise.
+    QByteArray gdbQsDllInfo(int start = 0, int count = -1) const;
 
     // Trk feedback
     byte cpuMajor;
@@ -198,6 +221,7 @@
     byte extended2TypeSize;
     TrkAppVersion trkAppVersion;
     uint pid;
+    uint mainTid;
     uint tid;
     uint codeseg;
     uint dataseg;
@@ -206,12 +230,7 @@
     typedef QList<Library> Libraries;
     Libraries libraries;
 
-    typedef uint Thread;
-    typedef QList<Thread> Threads;
-    Threads threads;
-
     // Gdb request
-    uint currentThread;
     QStringList modules;
 };