//===-- DNBThreadResumeActions.cpp ------------------------------*- C++ -*-===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // // Created by Greg Clayton on 03/13/2010 // //===----------------------------------------------------------------------===// #include "DNBThreadResumeActions.h" DNBThreadResumeActions::DNBThreadResumeActions() : m_actions (), m_signal_handled () { } DNBThreadResumeActions::DNBThreadResumeActions (const DNBThreadResumeAction *actions, size_t num_actions) : m_actions (), m_signal_handled () { if (actions && num_actions) { m_actions.assign (actions, actions + num_actions); m_signal_handled.assign (num_actions, false); } } DNBThreadResumeActions::DNBThreadResumeActions (nub_state_t default_action, int signal) : m_actions(), m_signal_handled () { SetDefaultThreadActionIfNeeded (default_action, signal); } void DNBThreadResumeActions::Append (const DNBThreadResumeAction &action) { m_actions.push_back (action); m_signal_handled.push_back (false); } void DNBThreadResumeActions::AppendAction ( nub_thread_t tid, nub_state_t state, int signal, nub_addr_t addr ) { DNBThreadResumeAction action = { tid, state, signal, addr }; Append (action); } const DNBThreadResumeAction * DNBThreadResumeActions::GetActionForThread (nub_thread_t tid, bool default_ok) const { const size_t num_actions = m_actions.size(); for (size_t i=0; i