1 //===-- ThreadPlanShouldStopHere.cpp ----------------------------*- C++ -*-===// 2 // 3 // The LLVM Compiler Infrastructure 4 // 5 // This file is distributed under the University of Illinois Open Source 6 // License. See LICENSE.TXT for details. 7 // 8 //===----------------------------------------------------------------------===// 9 10 #include "lldb/Target/Thread.h" 11 #include "lldb/Target/ThreadPlanShouldStopHere.h" 12 13 using namespace lldb; 14 using namespace lldb_private; 15 16 // C Includes 17 // C++ Includes 18 // Other libraries and framework includes 19 // Project includes 20 21 //---------------------------------------------------------------------- 22 // ThreadPlanShouldStopHere constructor 23 //---------------------------------------------------------------------- 24 ThreadPlanShouldStopHere::ThreadPlanShouldStopHere(ThreadPlan *owner, ThreadPlanShouldStopHereCallback callback, void *baton) : 25 m_callback (callback), 26 m_baton (baton), 27 m_owner (owner), 28 m_flags (ThreadPlanShouldStopHere::eNone) 29 { 30 } 31 32 //---------------------------------------------------------------------- 33 // Destructor 34 //---------------------------------------------------------------------- 35 ThreadPlanShouldStopHere::~ThreadPlanShouldStopHere() 36 { 37 } 38 39 void 40 ThreadPlanShouldStopHere::SetShouldStopHereCallback (ThreadPlanShouldStopHereCallback callback, void *baton) 41 { 42 m_callback = callback; 43 m_baton = baton; 44 } 45 46 ThreadPlan * 47 ThreadPlanShouldStopHere::InvokeShouldStopHereCallback () 48 { 49 if (m_callback) 50 return m_callback (m_owner, m_flags, m_baton); 51 else 52 return NULL; 53 } 54