17 #include <pia/common/common_definitions.h> 19 #include <pia/common/common_RootObject.h> 20 #include <pia/common/common_Job.h> 21 #include <pia/common/common_Trace.h> 31 #define NN_PIA_JOBSTEP(STEP) Step(static_cast<StepMethod>(&STEP), #STEP) 41 class StepSequenceJob :
public nn::pia::common::Job
44 typedef Job::ExecuteResult (StepSequenceJob::*StepMethod)();
50 : m_pStepMethod(NULL), m_pName(NULL)
53 Step(StepMethod pStepMethod,
const char* pName)
54 : m_pStepMethod(pStepMethod), m_pName(pName)
62 const char* GetName(
void)
const 64 return m_pName ? m_pName :
"(no name)";
67 Job::ExecuteResult Execute(StepSequenceJob* pJob)
69 return (pJob->*m_pStepMethod)();
72 bool operator==(
const Step& rhs)
const;
73 bool operator!=(
const Step& rhs)
const {
return !(*
this == rhs); }
75 virtual void Trace(u64 flag)
const 77 PIA_TRACE(flag,
"StepSequenceJob::Step::Trace() called. (%s)", GetName());
81 StepMethod m_pStepMethod;
89 StepSequenceJob(
void);
95 virtual ~StepSequenceJob(
void);
98 virtual void Reset(
bool isCheck =
true);
101 void CancelStepSequence()
103 m_IsCancelStepSequence =
true;
106 virtual void CancelCleanup()
118 void SetStep(
const Step& step)
123 void WaitForCompletion(u32 sleepTime);
130 void SetTraceFlags(u64 flags)
132 m_TraceFlags = flags;
139 u64 GetTraceFlags(
void)
const 149 virtual void Trace(u64 flag)
const;
153 virtual Job::ExecuteResult ExecuteCore();
156 const Step& GetStep(
void)
const 165 volatile bool m_IsCancelStepSequence;
This is the common base class used inside the Pia library.
Definition: common_RootObject.h:40