#include <RegressionSM.h>
Inherits Continuation.
Inherited by CacheTestSM, and ReRegressionSM.
Public Member Functions | |
virtual void | run () |
virtual RegressionSM * | clone () |
void | done (int status=REGRESSION_TEST_NOT_RUN) |
void | run (int *pstatus) |
void | run_in (int *pstatus, ink_hrtime t) |
int | regression_sm_start (int event, void *data) |
int | regression_sm_waiting (int event, void *data) |
void | set_status (int status) |
void | child_done (int status) |
void | xrun (RegressionSM *parent) |
RegressionSM (RegressionTest *at=NULL) | |
RegressionSM (const RegressionSM &) | |
Data Fields | |
RegressionTest * | t |
int | status |
int * | pstatus |
RegressionSM * | parent |
int | nwaiting |
int | nchildren |
DynArray< RegressionSM * > | children |
intptr_t | n |
intptr_t | ichild |
bool | par |
bool | rep |
Action * | pending_action |
Definition at line 35 of file RegressionSM.h.
RegressionSM::RegressionSM | ( | RegressionTest * | at = NULL |
) | [inline] |
Definition at line 65 of file RegressionSM.h.
References Continuation::mutex, and new_ProxyMutex().
Referenced by clone().
RegressionSM::RegressionSM | ( | const RegressionSM & | ao | ) |
Definition at line 203 of file RegressionSM.cc.
References children, ichild, ink_assert, Continuation::mutex, n, nchildren, new_ProxyMutex(), nwaiting, par, parent, pending_action, pstatus, REGRESSION_TEST_INPROGRESS, rep, status, and t.
void RegressionSM::child_done | ( | int | status | ) |
Definition at line 75 of file RegressionSM.cc.
References ink_assert, Continuation::mutex, MUTEX_LOCK, nwaiting, set_status(), and this_ethread().
Referenced by done().
virtual RegressionSM* RegressionSM::clone | ( | ) | [inline, virtual] |
Reimplemented in CacheTestSM, and ReRegressionSM.
Definition at line 41 of file RegressionSM.h.
References RegressionSM().
void RegressionSM::done | ( | int | status = REGRESSION_TEST_NOT_RUN |
) |
Definition at line 44 of file RegressionSM.cc.
References Action::cancel(), child_done(), parent, pending_action, pstatus, set_status(), and status.
Referenced by CacheTestSM::complete(), regression_sm_waiting(), ReRegressionSM::run(), and run().
int RegressionSM::regression_sm_start | ( | int | event, | |
void * | data | |||
) |
int RegressionSM::regression_sm_waiting | ( | int | event, | |
void * | data | |||
) |
Definition at line 83 of file RegressionSM.cc.
References done(), nwaiting, par, REGRESSION_SM_RETRY, REGRESSION_TEST_NOT_RUN, and run().
Referenced by run().
void RegressionSM::run | ( | ) | [virtual] |
Reimplemented in CacheTestSM, and ReRegressionSM.
Definition at line 168 of file RegressionSM.cc.
References children, clone(), done(), eventProcessor, ichild, Continuation::mutex, MUTEX_TRY_LOCK, n, nwaiting, par, pending_action, REGRESSION_SM_RETRY, regression_sm_waiting(), REGRESSION_TEST_NOT_RUN, rep, EventProcessor::schedule_in(), SET_HANDLER, this_ethread(), and xrun().
Referenced by regression_sm_start(), regression_sm_waiting(), RegressionSM(), run(), and xrun().
void RegressionSM::run | ( | int * | pstatus | ) |
Definition at line 55 of file RegressionSM.cc.
void RegressionSM::run_in | ( | int * | pstatus, | |
ink_hrtime | t | |||
) |
Definition at line 68 of file RegressionSM.cc.
References eventProcessor, pstatus, regression_sm_start(), EventProcessor::schedule_in(), and SET_HANDLER.
void RegressionSM::set_status | ( | int | status | ) |
Definition at line 29 of file RegressionSM.cc.
References ink_assert, REGRESSION_TEST_FAILED, REGRESSION_TEST_INPROGRESS, REGRESSION_TEST_NOT_RUN, REGRESSION_TEST_PASSED, and status.
Referenced by child_done(), and done().
void RegressionSM::xrun | ( | RegressionSM * | parent | ) |
Definition at line 54 of file RegressionSM.h.
Referenced by r_parallel(), r_sequential(), RegressionSM(), and run().
intptr_t RegressionSM::ichild |
Definition at line 55 of file RegressionSM.h.
Referenced by r_parallel(), r_sequential(), RegressionSM(), and run().
intptr_t RegressionSM::n |
Definition at line 55 of file RegressionSM.h.
Referenced by r_parallel(), r_sequential(), RegressionSM(), and run().
Definition at line 53 of file RegressionSM.h.
Referenced by r_parallel(), r_sequential(), and RegressionSM().
Definition at line 52 of file RegressionSM.h.
Referenced by child_done(), r_parallel(), r_sequential(), regression_sm_waiting(), RegressionSM(), run(), and xrun().
bool RegressionSM::par |
Definition at line 56 of file RegressionSM.h.
Referenced by r_parallel(), r_sequential(), regression_sm_waiting(), RegressionSM(), and run().
Definition at line 51 of file RegressionSM.h.
Referenced by done(), RegressionSM(), and xrun().
Definition at line 57 of file RegressionSM.h.
Referenced by done(), RegressionSM(), and run().
Definition at line 50 of file RegressionSM.h.
Referenced by done(), RegressionSM(), run(), and run_in().
bool RegressionSM::rep |
Definition at line 56 of file RegressionSM.h.
Referenced by r_parallel(), r_sequential(), RegressionSM(), and run().
Definition at line 49 of file RegressionSM.h.
Referenced by done(), RegressionSM(), and set_status().
Definition at line 37 of file RegressionSM.h.
Referenced by RegressionSM(), ReRegressionSM::ReRegressionSM(), and ReRegressionSM::run().