idTech4.idEventLoop.GetRealEvent C# (CSharp) Метод

GetRealEvent() приватный Метод

private GetRealEvent ( ) : SystemEvent
Результат SystemEvent
		private SystemEvent GetRealEvent()
		{
			SystemEvent ev;

			//idConsole.Warning("TODO: journalling");
			// either get an event from the system or the journal file
			// TODO: journalling
			/*if(com_journal.GetInteger() == 2)
			{
				r = com_journalFile->Read(&ev, sizeof(ev));
				if(r != sizeof(ev))
				{
					common->FatalError("Error reading from journal file");
				}
				if(ev.evPtrLength)
				{
					ev.evPtr = Mem_ClearedAlloc(ev.evPtrLength);
					r = com_journalFile->Read(ev.evPtr, ev.evPtrLength);
					if(r != ev.evPtrLength)
					{
						common->FatalError("Error reading from journal file");
					}
				}
			}
			else*/
			{
				// return if we have data
				if(_events.Count > 0)
				{
					return _events.Dequeue();
				}
				else 
				{
					// return the empty event 
					ev = new SystemEvent(SystemEventType.None);
				}

				// write the journal value out if needed
				// TODO: journalling
				/*if(com_journal.GetInteger() == 1)
				{
					r = com_journalFile->Write(&ev, sizeof(ev));
					if(r != sizeof(ev))
					{
						common->FatalError("Error writing to journal file");
					}
					if(ev.evPtrLength)
					{
						r = com_journalFile->Write(ev.evPtr, ev.evPtrLength);
						if(r != ev.evPtrLength)
						{
							common->FatalError("Error writing to journal file");
						}
					}
				}*/
			}

			return ev;
		}