예제 #1
0
// -------------------------------------------------------------------------------------
void CTimerManager::saveEventsToConfig()
{
	pthread_mutex_lock(&tm_eventsMutex);

	// Sperren !!!
	CConfigFile config(',');
	config.clear();
	dprintf("save %d events to config ...\n", (int)events.size());
	CTimerEventMap::iterator pos = events.begin();
	for(;pos != events.end();++pos)
	{
		CTimerEvent *event = pos->second;
		dprintf("event #%d\n",event->eventID);
		if (event->eventType != CTimerd::TIMER_RECORD || event->eventState != CTimerd::TIMERSTATE_ISRUNNING)
			event->saveToConfig(&config);
	}
	dprintf("\n");
	config.setInt32 ("EXTRA_TIME_START", m_extraTimeStart);
	dprintf("setting EXTRA_TIME_START to %d\n",m_extraTimeStart);
	config.setInt32 ("EXTRA_TIME_END", m_extraTimeEnd);
	dprintf("setting EXTRA_TIME_END to %d\n",m_extraTimeEnd);
	dprintf("now saving config to %s...\n",CONFIGFILE);
	config.saveConfig(CONFIGFILE);
	dprintf("config saved!\n");
	m_saveEvents=false;

	// Freigeben !!!
	pthread_mutex_unlock(&tm_eventsMutex);
	setWakeupTime();
}
예제 #2
0
void CTimerManager::saveEventsToConfig()
{
	CConfigFile *config = new CConfigFile(',');
	config->clear();
	CTimerEventMap::iterator pos = events.begin();
	for(;pos != events.end();pos++)
	{
		CTimerEvent *event = pos->second;
		event->saveToConfig(config);
	}
	config->saveConfig(CONFIGFILE);
	delete config;

}