コード例 #1
0
ファイル: services.cpp プロジェクト: artpaul/acto
//-------------------------------------------------------------------------------------------------
void TimerActor::delete_event(const acto::actor_ref& actor) {
	for (Events::iterator i = m_events.begin(); i != m_events.end(); i++) {
		if ((*i)->actor == actor) {
			// 1. Удалить системный таймер
			//
			// NOTE: Так как последний параметр INVALID_HANDLE_VALUE, то
			//       функция возвратит управление только тогда, когда завершится
			//       выполнение соответствующей TimerProc.
			::DeleteTimerQueueTimer( m_timers, (*i)->timer, INVALID_HANDLE_VALUE );
			// 2. Удалить экземпляр события
			delete (*i);
			// 3. Удалить элемент из списка
			m_events.erase( i );
			// -
			break;
		}
	}
}
コード例 #2
0
ファイル: editable_events.hpp プロジェクト: 0rel/sequencer64
 void remove (iterator ie)
 {
     m_events.erase(ie);
 }
コード例 #3
0
ファイル: editable_events.hpp プロジェクト: 0rel/sequencer64
 bool replace (iterator ie, const editable_event & e)
 {
     m_events.erase(ie);
     return add(e);
 }