Hi Dan, You'll have to implement a bridge method, like I did for LogOutputCallback and the SBInputReader callback. Check out scripts/Python/python-wrapper.swig and scripts/Python/python-typemaps.swig and search for mentions of LogOutputCallback.
Regards, Filipe On Wed, Apr 24, 2013 at 11:00 AM, Malea, Daniel <[email protected]> wrote: > Hi Greg, or whoever reads this first, > > I have a question about the python API lldb.SBBreakpoint.SetCallback > function. According to the docs, the signature is: > > SetCallback(self, *args) unbound lldb.SBBreakpoint method > SetCallback(self, BreakpointHitCallback callback, void baton) > > However, I am not sure how to create an instance of the BreakpointHitCallback > type that is required for the second parameter. I'm not seeing any class in > the Python API that is named that; only the C++ API has a typedef of that > name: > > typedef bool (*BreakpointHitCallback) (void *baton, > SBProcess &process, > SBThread &thread, > lldb::SBBreakpointLocation &location); > > > I tried passing a function that has (what I believe is) the correct signature: > > class MyTestCase(TestBase): > def bp_callback(self, process, thread, breakpoint_loc): > Pass > > def register_callback(self, target) > breakpoint = target.BreakpointCreateByLocation('main.c', self.line1) > breakpoint.SetCallback(self.bp_callback, self) > > > But I am getting a python error: > > TypeError: in method 'SBBreakpoint_SetCallback', argument 2 of type > 'lldb::SBBreakpoint::BreakpointHitCallback' > > So, my question is: is it possible to register a callback to be called when a > breakpoint is hit using that function? If so, what am I doing wrong? If not, > is it preferable to create an SBListener for this purpose, or is the "target > stop-hook add" command the only way to do what I'm trying to do? I'm trying > to avoid using the built-in script interpreter.. > > > > Thanks, > Dan > > _______________________________________________ > lldb-dev mailing list > [email protected] > http://lists.cs.uiuc.edu/mailman/listinfo/lldb-dev _______________________________________________ lldb-dev mailing list [email protected] http://lists.cs.uiuc.edu/mailman/listinfo/lldb-dev
