@@ -323,6 +323,22 @@ extern "C"
323323 BNDebuggerTTDMemoryAccessType accessType ;
324324 } BNDebuggerTTDMemoryEvent ;
325325
326+ typedef struct BNDebuggerTTDCallEvent
327+ {
328+ char * eventType ; // Event type (always "Call" for TTD.Calls objects)
329+ uint32_t threadId ; // OS thread ID of thread that made the call
330+ uint32_t uniqueThreadId ; // Unique ID for the thread across the trace
331+ char * function ; // Symbolic name of the function
332+ uint64_t functionAddress ; // Function's address in memory
333+ uint64_t returnAddress ; // Instruction to return to after the call
334+ uint64_t returnValue ; // Return value of the function (if not void)
335+ bool hasReturnValue ; // Whether the function has a return value
336+ char * * parameters ; // Array containing parameters passed to the function
337+ size_t parameterCount ; // Number of parameters
338+ BNDebuggerTTDPosition timeStart ; // Position when call started
339+ BNDebuggerTTDPosition timeEnd ; // Position when call ended
340+ } BNDebuggerTTDCallEvent ;
341+
326342
327343 // This should really be a union, but gcc complains...
328344 typedef struct BNDebuggerEventData
@@ -533,9 +549,12 @@ extern "C"
533549 // TTD Memory Analysis Functions
534550 DEBUGGER_FFI_API BNDebuggerTTDMemoryEvent * BNDebuggerGetTTDMemoryAccessForAddress (BNDebuggerController * controller ,
535551 uint64_t address , uint64_t size , BNDebuggerTTDMemoryAccessType accessType , size_t * count );
552+ DEBUGGER_FFI_API BNDebuggerTTDCallEvent * BNDebuggerGetTTDCallsForSymbols (BNDebuggerController * controller ,
553+ const char * * symbols , size_t symbolCount , uint64_t startReturnAddress , uint64_t endReturnAddress , size_t * count );
536554 DEBUGGER_FFI_API BNDebuggerTTDPosition BNDebuggerGetCurrentTTDPosition (BNDebuggerController * controller );
537555 DEBUGGER_FFI_API bool BNDebuggerSetTTDPosition (BNDebuggerController * controller , BNDebuggerTTDPosition position );
538556 DEBUGGER_FFI_API void BNDebuggerFreeTTDMemoryEvents (BNDebuggerTTDMemoryEvent * events );
557+ DEBUGGER_FFI_API void BNDebuggerFreeTTDCallEvents (BNDebuggerTTDCallEvent * events );
539558
540559 DEBUGGER_FFI_API void BNDebuggerPostDebuggerEvent (BNDebuggerController * controller , BNDebuggerEvent * event );
541560
0 commit comments