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

Reply via email to