#include "vst_idle_gem.h"
#include "logic.h"
#include "chsmsdriver.h"
VST_Idle_GEM::VST_Idle_GEM(int iID, const QString &sName,
                           VSM_Thread *pParent)
    :VST_Idle(iID,sName,pParent)
{

}

void VST_Idle_GEM::do_Msg(const V_Msg &msg)
{
    CHSMSDriver* pGemDriver=GET_CARD(GEM_DRIVER,CHSMSDriver);
    switch (msg.m_iID)
    {
    case VarMsg_Gem_TCP_Connect:
        MqDebug()<<QTime::currentTime();

        pGemDriver->TcpConnect(GEM_CLIENT);
        m_pParent->SetState(m_pParent->m_pState_Wait);
        return;
    default:
        if(msg.m_iID&&msg.m_iID!=VarMsg_Time_ID)
        {
            MqDebug()<<(QObject::trUtf8("Has not connect to GEM Server"));
        }
        break;
    }
    VST_Idle::do_Msg(msg);
}

void VST_Idle_GEM::Enter()
{
    return;
    int32_t istate=m_gSystem.m_Variants.get_VData(Var_ALLSystem_State_ID)->toUInt();
    if(istate==CMAllsystem::OFF_LINE)
    {
        return;
    }
    CHSMSDriver* pGemDriver=GET_CARD(GEM_DRIVER,CHSMSDriver);
    int iT5= pGemDriver->m_Variants.get_VData(Var_GEM_Separation_T5_ID)
            ->toInt()*100;

    pushback_Msg(VarMsg_Time_ID,
                 QObject::trUtf8("GEM TCP Connect Time Sig"),
                 QVariantList()<<QTime::currentTime()<<iT5<<-1
                 <<VarMsg_Gem_TCP_Connect<<0);
    VST_Idle::Enter();
}

void VST_Idle_GEM::Exit()
{
    clear_Msg();
}

