From 7fe60435bce6595a9c58a9bfd8244d74b5320e96 Mon Sep 17 00:00:00 2001 From: Benjamin Franzke Date: Tue, 15 Jan 2013 08:46:13 +0100 Subject: Import DirectFB141_2k11R3_beta5 --- Source/++DFB/++dfb/idirectfbeventbuffer.cpp | 114 ++++++++++++++++++++++++++++ 1 file changed, 114 insertions(+) create mode 100755 Source/++DFB/++dfb/idirectfbeventbuffer.cpp (limited to 'Source/++DFB/++dfb/idirectfbeventbuffer.cpp') diff --git a/Source/++DFB/++dfb/idirectfbeventbuffer.cpp b/Source/++DFB/++dfb/idirectfbeventbuffer.cpp new file mode 100755 index 0000000..e0f25ca --- /dev/null +++ b/Source/++DFB/++dfb/idirectfbeventbuffer.cpp @@ -0,0 +1,114 @@ +/* + (c) Copyright 2000-2002 convergence integrated media GmbH. + All rights reserved. + + Written by Denis Oliver Kropp , + Andreas Hundt and + Sven Neumann + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the + Free Software Foundation, Inc., 59 Temple Place - Suite 330, + Boston, MA 02111-1307, USA. +*/ + +#include "++dfb.h" +#include "++dfb_internal.h" + +void IDirectFBEventBuffer::Reset() +{ + DFBCHECK( iface->Reset (iface) ); +} + +void IDirectFBEventBuffer::WaitForEvent() +{ + DFBCHECK( iface->WaitForEvent (iface) ); +} + +bool IDirectFBEventBuffer::WaitForEventWithTimeout (unsigned int seconds, + unsigned int milli_seconds) +{ + DFBResult ret; + + ret = iface->WaitForEventWithTimeout (iface, seconds, milli_seconds); + + if (ret != DFB_OK && ret != DFB_TIMEOUT) + throw new DFBException(__PRETTY_FUNCTION__, ret); + + return (ret == DFB_OK); +} + +void IDirectFBEventBuffer::WakeUp () +{ + DFBCHECK( iface->WakeUp (iface) ); +} + +bool IDirectFBEventBuffer::GetEvent (DFBEvent *event) +{ + DFBResult ret; + + ret = iface->GetEvent (iface, event); + + if (ret != DFB_OK && ret != DFB_BUFFEREMPTY) + throw new DFBException (__PRETTY_FUNCTION__, ret); + + return (ret == DFB_OK); +} + +bool IDirectFBEventBuffer::PeekEvent (DFBEvent *event) +{ + DFBResult ret; + + ret = iface->PeekEvent (iface, event); + + if (ret != DFB_OK && ret != DFB_BUFFEREMPTY) + throw new DFBException (__PRETTY_FUNCTION__, ret); + + return (ret == DFB_OK); +} + +bool IDirectFBEventBuffer::HasEvent () +{ + DFBResult ret; + + ret = iface->HasEvent (iface); + + if (ret != DFB_OK && ret != DFB_BUFFEREMPTY) + throw new DFBException (__PRETTY_FUNCTION__, ret); + + return (ret == DFB_OK); +} + +void IDirectFBEventBuffer::PostEvent (DFBEvent &event) +{ + DFBCHECK( iface->PostEvent (iface, &event) ); +} + +int IDirectFBEventBuffer::CreateFileDescriptor () +{ + int fd; + + DFBCHECK( iface->CreateFileDescriptor (iface, &fd) ); + + return fd; +} + +void IDirectFBEventBuffer::EnableStatistics (DFBBoolean enable) +{ + DFBCHECK( iface->EnableStatistics (iface, enable) ); +} + +void IDirectFBEventBuffer::GetStatistics (DFBEventBufferStats *stats) +{ + DFBCHECK( iface->GetStatistics (iface, stats) ); +} -- cgit