GDBSessionRecorder.st
author Jan Vrany <jan.vrany@fit.cvut.cz>
Tue, 24 Jun 2014 00:55:57 +0100
changeset 25 58e042a191a9
parent 24 98ff50f8a25d
child 78 c24e7d8bc881
permissions -rw-r--r--
More work on GDB session recorder.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
24
98ff50f8a25d Temporary commit : initial work on session recorder (to use for simulation later)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     1
"{ Package: 'jv:libgdbs' }"
98ff50f8a25d Temporary commit : initial work on session recorder (to use for simulation later)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     2
98ff50f8a25d Temporary commit : initial work on session recorder (to use for simulation later)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     3
Object subclass:#GDBSessionRecorder
25
58e042a191a9 More work on GDB session recorder.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 24
diff changeset
     4
	instanceVariableNames:'record buffer'
24
98ff50f8a25d Temporary commit : initial work on session recorder (to use for simulation later)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     5
	classVariableNames:''
98ff50f8a25d Temporary commit : initial work on session recorder (to use for simulation later)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     6
	poolDictionaries:'GDBDebugFlags'
98ff50f8a25d Temporary commit : initial work on session recorder (to use for simulation later)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     7
	category:'GDB-Private-Simulator'
98ff50f8a25d Temporary commit : initial work on session recorder (to use for simulation later)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     8
!
98ff50f8a25d Temporary commit : initial work on session recorder (to use for simulation later)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     9
25
58e042a191a9 More work on GDB session recorder.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 24
diff changeset
    10
!GDBSessionRecorder class methodsFor:'instance creation'!
58e042a191a9 More work on GDB session recorder.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 24
diff changeset
    11
58e042a191a9 More work on GDB session recorder.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 24
diff changeset
    12
new
58e042a191a9 More work on GDB session recorder.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 24
diff changeset
    13
    "return an initialized instance"
58e042a191a9 More work on GDB session recorder.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 24
diff changeset
    14
58e042a191a9 More work on GDB session recorder.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 24
diff changeset
    15
    ^ self basicNew initialize.
58e042a191a9 More work on GDB session recorder.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 24
diff changeset
    16
! !
58e042a191a9 More work on GDB session recorder.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 24
diff changeset
    17
58e042a191a9 More work on GDB session recorder.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 24
diff changeset
    18
!GDBSessionRecorder methodsFor:'initialization'!
58e042a191a9 More work on GDB session recorder.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 24
diff changeset
    19
58e042a191a9 More work on GDB session recorder.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 24
diff changeset
    20
initialize
58e042a191a9 More work on GDB session recorder.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 24
diff changeset
    21
    "Invoked when a new instance is created."
58e042a191a9 More work on GDB session recorder.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 24
diff changeset
    22
58e042a191a9 More work on GDB session recorder.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 24
diff changeset
    23
    "/ please change as required (and remove this comment)
58e042a191a9 More work on GDB session recorder.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 24
diff changeset
    24
    record := GDBSessionRecord new.
58e042a191a9 More work on GDB session recorder.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 24
diff changeset
    25
    buffer := (String new: 100) writeStream.
58e042a191a9 More work on GDB session recorder.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 24
diff changeset
    26
    "/ responseBuffer := nil.
58e042a191a9 More work on GDB session recorder.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 24
diff changeset
    27
58e042a191a9 More work on GDB session recorder.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 24
diff changeset
    28
    "/ super initialize.   -- commented since inherited method does nothing
58e042a191a9 More work on GDB session recorder.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 24
diff changeset
    29
58e042a191a9 More work on GDB session recorder.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 24
diff changeset
    30
    "Modified: / 24-06-2014 / 00:10:33 / Jan Vrany <jan.vrany@fit.cvut.cz>"
58e042a191a9 More work on GDB session recorder.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 24
diff changeset
    31
! !
58e042a191a9 More work on GDB session recorder.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 24
diff changeset
    32
24
98ff50f8a25d Temporary commit : initial work on session recorder (to use for simulation later)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    33
!GDBSessionRecorder methodsFor:'recording'!
98ff50f8a25d Temporary commit : initial work on session recorder (to use for simulation later)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    34
98ff50f8a25d Temporary commit : initial work on session recorder (to use for simulation later)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    35
recordCommand: command
25
58e042a191a9 More work on GDB session recorder.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 24
diff changeset
    36
    record >>> command
24
98ff50f8a25d Temporary commit : initial work on session recorder (to use for simulation later)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    37
98ff50f8a25d Temporary commit : initial work on session recorder (to use for simulation later)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    38
    "Created: / 22-06-2014 / 21:39:05 / Jan Vrany <jan.vrany@fit.cvut.cz>"
25
58e042a191a9 More work on GDB session recorder.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 24
diff changeset
    39
    "Modified: / 24-06-2014 / 00:36:54 / Jan Vrany <jan.vrany@fit.cvut.cz>"
24
98ff50f8a25d Temporary commit : initial work on session recorder (to use for simulation later)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    40
!
98ff50f8a25d Temporary commit : initial work on session recorder (to use for simulation later)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    41
98ff50f8a25d Temporary commit : initial work on session recorder (to use for simulation later)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    42
recordResponse: aString
25
58e042a191a9 More work on GDB session recorder.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 24
diff changeset
    43
    buffer nextPutAll: aString
24
98ff50f8a25d Temporary commit : initial work on session recorder (to use for simulation later)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    44
98ff50f8a25d Temporary commit : initial work on session recorder (to use for simulation later)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    45
    "Created: / 22-06-2014 / 21:56:40 / Jan Vrany <jan.vrany@fit.cvut.cz>"
25
58e042a191a9 More work on GDB session recorder.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 24
diff changeset
    46
    "Modified: / 24-06-2014 / 00:10:39 / Jan Vrany <jan.vrany@fit.cvut.cz>"
24
98ff50f8a25d Temporary commit : initial work on session recorder (to use for simulation later)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    47
!
98ff50f8a25d Temporary commit : initial work on session recorder (to use for simulation later)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    48
98ff50f8a25d Temporary commit : initial work on session recorder (to use for simulation later)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    49
recordResponseChar: aCharacter
25
58e042a191a9 More work on GDB session recorder.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 24
diff changeset
    50
    buffer nextPut: aCharacter
24
98ff50f8a25d Temporary commit : initial work on session recorder (to use for simulation later)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    51
98ff50f8a25d Temporary commit : initial work on session recorder (to use for simulation later)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    52
    "Created: / 22-06-2014 / 21:42:39 / Jan Vrany <jan.vrany@fit.cvut.cz>"
25
58e042a191a9 More work on GDB session recorder.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 24
diff changeset
    53
    "Modified: / 24-06-2014 / 00:10:44 / Jan Vrany <jan.vrany@fit.cvut.cz>"
24
98ff50f8a25d Temporary commit : initial work on session recorder (to use for simulation later)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    54
!
98ff50f8a25d Temporary commit : initial work on session recorder (to use for simulation later)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    55
98ff50f8a25d Temporary commit : initial work on session recorder (to use for simulation later)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    56
recordResponseEnd
25
58e042a191a9 More work on GDB session recorder.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 24
diff changeset
    57
    record <<< buffer contents.
58e042a191a9 More work on GDB session recorder.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 24
diff changeset
    58
    buffer reset.
24
98ff50f8a25d Temporary commit : initial work on session recorder (to use for simulation later)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    59
98ff50f8a25d Temporary commit : initial work on session recorder (to use for simulation later)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    60
    "Created: / 22-06-2014 / 21:54:01 / Jan Vrany <jan.vrany@fit.cvut.cz>"
25
58e042a191a9 More work on GDB session recorder.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 24
diff changeset
    61
    "Modified: / 24-06-2014 / 00:36:46 / Jan Vrany <jan.vrany@fit.cvut.cz>"
24
98ff50f8a25d Temporary commit : initial work on session recorder (to use for simulation later)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    62
! !
98ff50f8a25d Temporary commit : initial work on session recorder (to use for simulation later)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    63