Exemple #1
0
Double_t DDASEvent::GetTimeWidth() const
{
    Double_t end_time   = GetLastTime();
    Double_t start_time = GetFirstTime();
    
    return (end_time-start_time);
}
Exemple #2
0
//存储集中器数据
BOOL CDataBaseManager::UpdateConcentratorData(vector<DevConcentrator> vecCon)
{
	vector<DevConcentrator> vecSaves;
	auto iteNew = vecCon.begin();
	for (; iteNew != vecCon.end(); iteNew++)
	{
		//判断是否历史列表中
		auto iteHistory = ConHistoryExist(*iteNew);
		if (iteHistory == m_listConcentrators.end())
		{
			m_listConcentrators.push_back(*iteNew);
			//添加到存储列表中
			vecSaves.push_back(*iteNew);
		}
		else{
			time_t tNew = iteNew->GetLastTime();
			time_t tHistory = iteHistory->GetLastTime();
			if (tNew > tHistory)
			{
				vecSaves.push_back(*iteNew);
				iteHistory->SetLastTime(tNew);
			}
		}
	}
	if (vecSaves.size() < 1)
	{
		return TRUE;
	}
	//往临时表中插入数据
	m_dbOracle.BeginTrans();
	if (!m_dbOracle.UpdateConSMTempTable(vecSaves))
	{
		cout << "更新临时表失败" << endl;
		m_dbOracle.RollbackTrans();
		return FALSE;
	}
	cout << "更新小表临时表" << endl;
	//执行存储过程
	if (!m_dbOracle.ExecSaveSmallMeter())
	{
		cout << "执行保存小表存储过程失败" << endl;
		m_dbOracle.RollbackTrans();
		return FALSE;
	}
	cout << "执行小表存储过程" << endl;
	return m_dbOracle.CommitTrans();
}
Exemple #3
0
TimeInfo Draw::GetTimeInfo() const {
	TimeInfo t;
	t.begin_time = GetStartTime();
	t.end_time = GetLastTime();
	t.period =  GetPeriod();

	return t;
}
Exemple #4
0
void CTimer::WaitForTimer()
{
    if (m_Inteval == 0L)
        return;

    // 暂停线程,直到时间差大于即时间隔  因为是内联函数。。所以效率不用担心。。与原函数没区别。。
    while (GetTime() - GetLastTime() <= m_Inteval)
        Sleep(1);


}
Exemple #5
0
DWORD CTimer::GetElapseTime()
{
    return GetTime() - GetLastTime();
}
void DianVoteControl::VoteAuto()
{
    if(curState == RUNNING)
    {
        QMessageBox::critical(0, "warn", "Already Started");
    }
    else if(curState == PAUSE)
    {
        // 修改主界面
        pbStart->hide();
        pbPause->show();

        // 启动秒表
        stopWatch->start();

        StartHid();     // 开启接收设备
    }
    else if(curState == STOP)
    {
        // 这里会把hid打开
        if(!PrepareHid())
        {
            // 把错误信息写入log文件
            return;
        }

//      emit clearDrawData();   // 注意,这一步一定要在GetOptionNum之前

        int num1 = GetLastTime();     // 获取持续时间

        if(!num1)
        {
            return;
        }

        int num0 = GetOptionNum();     // 获取选项个数
        if(!num0)
        {
            return;
        }

        // 画出秒表, 递减模式
        ShowStopWatch();
        Q_ASSERT(stopWatch != NULL);
        stopWatch->setMode(STOP_WATCH_DECREASE_MODE);

        emit setLastTime(num1);;
        emit setOptionNum(num0);

        StartHid();     // 开启接收设备

        // 修改主界面
        pbStart->hide();
        pbAuto->hide();
        pbPause->show();
        pbStop->show();
        pbOption->setEnabled(false);

        stopWatch->start();
        resizeAnimation->start();
    }

    // 改变状态
    curState = RUNNING;
}