|
@@ -46,6 +46,7 @@ enum EvtType
|
|
|
USER_EVT_JS_POSTONLINE,
|
|
|
USER_EVT_JS_POSTONLINEFINISHED,
|
|
|
USER_EVT_JS_READ_CANCEL,
|
|
|
+ USER_EVT_EXIT_MIAN_PAGE
|
|
|
};
|
|
|
|
|
|
using namespace ContactlessCard;
|
|
@@ -241,7 +242,6 @@ public:
|
|
|
FSM_RULE_ENTRY(s1,s9,USER_EVT_INITFINISHED,1)
|
|
|
FSM_RULE_ENTRY(s1, FSM_STATE_EXIT, USER_EVT_QUIT, 0)
|
|
|
FSM_RULE_ENTRY(s2,s3,USER_EVT_ACCEPT,0)
|
|
|
- // FSM_RULE_ENTRY(s2,s9,USER_EVT_ACCEPT,1)
|
|
|
FSM_RULE_ENTRY(s2, FSM_STATE_EXIT, USER_EVT_QUIT, 0)
|
|
|
FSM_RULE_ENTRY(s2, s6, USER_EVT_EJECT, 0)
|
|
|
FSM_RULE_ENTRY(s3,s4,USER_EVT_ACCEPTFINISHED,0)
|
|
@@ -274,13 +274,14 @@ public:
|
|
|
FSM_RULE_ENTRY(s10, s2, USER_EVT_JS_READ_FINISHED, 0)
|
|
|
FSM_RULE_ENTRY(s10, s2, USER_EVT_JS_POSTONLINEFINISHED, 0)
|
|
|
FSM_RULE_ENTRY(s11, s2, USER_EVT_JS_EJECTFINISHED, 0)
|
|
|
+ FSM_RULE_ENTRY(s11, s2, USER_EVT_JS_EJECTFINISHED, 1)
|
|
|
FSM_RULE_ENTRY(s11, s2, USER_EVT_JS_EJECTFINISHED, 2)
|
|
|
END_FSM_RULE()
|
|
|
|
|
|
CContactlessCardFSM() : m_bCancelAccept(false), m_bWaitingAccept(false),
|
|
|
m_bWaitAccepteMore(false), m_bExit(false), m_resetTimes(0), m_testResult(Error_Succeed)
|
|
|
, m_bCDA(false), m_pDataToARQC(NULL), m_csMachineType(true), m_csDevNo(""), m_devInit(false), m_repeatErrTimes(0),
|
|
|
- m_bCancelRead(false)
|
|
|
+ m_bCancelRead(false),m_bPageExit(false)
|
|
|
{
|
|
|
HARDWARE_ENTITY_RESET_ENTITYID(m_entCode, 0x213);
|
|
|
cmdDecodeMag2 = NULL;
|
|
@@ -374,6 +375,8 @@ public:
|
|
|
|
|
|
int PreOnlineJS(SpReqAnsContext<ContactlessCardService_ReadJS_Req, ContactlessCardService_ReadJS_Ans>::Pointer ctx);
|
|
|
|
|
|
+ int ExitToMainPage();
|
|
|
+
|
|
|
protected:
|
|
|
int m_iInsertTries;
|
|
|
int m_resetTries;
|
|
@@ -406,6 +409,7 @@ private:
|
|
|
int m_currentFSMState;
|
|
|
//new
|
|
|
bool m_bCancelRead;
|
|
|
+ bool m_bPageExit;
|
|
|
};
|
|
|
struct InitTask : public ITaskSp
|
|
|
{
|