diff options
Diffstat (limited to 'Source/++DFB/include')
-rwxr-xr-x | Source/++DFB/include/++dfb.h | 453 | ||||
-rwxr-xr-x | Source/++DFB/include/Makefile | 429 | ||||
-rwxr-xr-x | Source/++DFB/include/Makefile.am | 20 | ||||
-rwxr-xr-x | Source/++DFB/include/Makefile.in | 429 | ||||
-rwxr-xr-x | Source/++DFB/include/idirectfb.h | 97 | ||||
-rwxr-xr-x | Source/++DFB/include/idirectfbdatabuffer.h | 73 | ||||
-rwxr-xr-x | Source/++DFB/include/idirectfbdisplaylayer.h | 122 | ||||
-rwxr-xr-x | Source/++DFB/include/idirectfbeventbuffer.h | 71 | ||||
-rwxr-xr-x | Source/++DFB/include/idirectfbfont.h | 84 | ||||
-rwxr-xr-x | Source/++DFB/include/idirectfbimageprovider.h | 58 | ||||
-rwxr-xr-x | Source/++DFB/include/idirectfbinputdevice.h | 67 | ||||
-rwxr-xr-x | Source/++DFB/include/idirectfbpalette.h | 68 | ||||
-rwxr-xr-x | Source/++DFB/include/idirectfbscreen.h | 103 | ||||
-rwxr-xr-x | Source/++DFB/include/idirectfbsurface.h | 211 | ||||
-rwxr-xr-x | Source/++DFB/include/idirectfbvideoprovider.h | 77 | ||||
-rwxr-xr-x | Source/++DFB/include/idirectfbwindow.h | 117 |
16 files changed, 2479 insertions, 0 deletions
diff --git a/Source/++DFB/include/++dfb.h b/Source/++DFB/include/++dfb.h new file mode 100755 index 0000000..fc7b863 --- /dev/null +++ b/Source/++DFB/include/++dfb.h @@ -0,0 +1,453 @@ +/* + (c) Copyright 2000-2002 convergence integrated media GmbH. + All rights reserved. + + Written by Denis Oliver Kropp <dok@convergence.de>, + Andreas Hundt <andi@convergence.de> and + Sven Neumann <sven@convergence.de> + + 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. +*/ + +#ifndef DFBPP_H +#define DFBPP_H + +#ifdef __DIRECTFB_H__ +#error Please include '++dfb.h' before 'directfb.h'. +#endif + +#include <iostream> + +#define IDirectFB IDirectFB_C +#define IDirectFBScreen IDirectFBScreen_C +#define IDirectFBDisplayLayer IDirectFBDisplayLayer_C +#define IDirectFBSurface IDirectFBSurface_C +#define IDirectFBPalette IDirectFBPalette_C +#define IDirectFBWindow IDirectFBWindow_C +#define IDirectFBInputDevice IDirectFBInputDevice_C +#define IDirectFBEventBuffer IDirectFBEventBuffer_C +#define IDirectFBFont IDirectFBFont_C +#define IDirectFBImageProvider IDirectFBImageProvider_C +#define IDirectFBVideoProvider IDirectFBVideoProvider_C +#define IDirectFBDataBuffer IDirectFBDataBuffer_C + +#define DFBPoint DFBPoint_C +#define DFBDimension DFBDimension_C +#define DFBRectangle DFBRectangle_C +#define DFBRegion DFBRegion_C + + +extern "C" { +#include <directfb.h> +#include <directfb_strings.h> +#include <directfb_util.h> +} + +#undef IDirectFB +#undef IDirectFBScreen +#undef IDirectFBDisplayLayer +#undef IDirectFBSurface +#undef IDirectFBPalette +#undef IDirectFBWindow +#undef IDirectFBInputDevice +#undef IDirectFBEventBuffer +#undef IDirectFBFont +#undef IDirectFBImageProvider +#undef IDirectFBVideoProvider +#undef IDirectFBDataBuffer + +#undef DFBPoint +#undef DFBDimension +#undef DFBRectangle +#undef DFBRegion + + + +class DFBPoint : public DFBPoint_C { +public: + DFBPoint() { + x = 0; + y = 0; + } + + DFBPoint( const int &_x, const int &_y ) { + x = _x; + y = _y; + } + + DFBPoint( const DFBPoint_C &point ) { + x = point.x; + y = point.y; + } + + DFBPoint( const DFBRectangle_C &rectangle ) { + x = rectangle.x; + y = rectangle.y; + } + + DFBPoint( const DFBRegion_C ®ion ) { + x = region.x1; + y = region.y1; + } + + bool operator== ( const DFBPoint &ref ) const { + return ref.x == x && ref.y == y; + } + + DFBPoint operator +( const DFBPoint &offset ) const { + DFBPoint p( *this ); + p.x += offset.x; + p.y += offset.y; + return p; + } + + DFBPoint& operator +=( const DFBPoint& offset ) { + x += offset.x; + y += offset.y; + return *this; + } +}; + +class DFBDimension : public DFBDimension_C { +public: + DFBDimension() { + w = 0; + h = 0; + } + + DFBDimension( const int &_w, const int &_h ) { + w = _w; + h = _h; + } + + DFBDimension( const DFBDimension_C &dimension ) { + w = dimension.w; + h = dimension.h; + } + + DFBDimension( const DFBPoint_C &point ) { + w = point.x; + h = point.y; + } + + DFBDimension( const DFBRectangle_C &rectangle ) { + w = rectangle.w; + h = rectangle.h; + } + + DFBDimension( const DFBRegion_C ®ion ) { + w = region.x2 - region.x1 + 1; + h = region.y2 - region.y1 + 1; + } + + bool operator== ( const DFBDimension &ref ) const { + return ref.w == w && ref.h == h; + } + + bool contains( const DFBRegion_C ®ion ) const { + if (region.x1 < 0 || region.y1 < 0) + return false; + + if (region.x2 >= w || region.y2 >= h) + return false; + + return true; + } +}; + + + +class DFBRectangle : public DFBRectangle_C { +public: + DFBRectangle() { + x = 0; + y = 0; + w = 0; + h = 0; + } + + DFBRectangle( const int &_x, const int &_y, const int &_w, const int &_h ) { + x = _x; + y = _y; + w = _w; + h = _h; + } + + DFBRectangle( const DFBRectangle_C &rectangle ) { + x = rectangle.x; + y = rectangle.y; + w = rectangle.w; + h = rectangle.h; + } + + DFBRectangle( const DFBRegion_C ®ion ) { + x = region.x1; + y = region.y1; + w = region.x2 - region.x1 + 1; + h = region.y2 - region.y1 + 1; + } + + DFBRectangle( const DFBDimension_C &dimension ) { + x = 0; + y = 0; + w = dimension.w; + h = dimension.h; + } + + DFBRectangle( const DFBPoint_C &point, const DFBDimension_C &dimension ) { + x = point.x; + y = point.y; + w = dimension.w; + h = dimension.h; + } + + bool operator== ( const DFBRectangle &ref ) const { + return ref.x == x && ref.y == y && ref.w == w && ref.h == h; + } + + DFBRectangle& operator-= ( const DFBPoint &sub ) { + x -= sub.x; + y -= sub.y; + + return *this; + } + + DFBRectangle operator -( const DFBPoint &sub ) const { + return DFBRectangle( x - sub.x, y - sub.y, w, h ); + } + + DFBRectangle operator +( const DFBPoint &offset ) const { + DFBRectangle r( *this ); + r.x += offset.x; + r.y += offset.y; + return r; + } +}; + + +class DFBRegion : public DFBRegion_C { +public: + DFBRegion() { + x1 = 0; + y1 = 0; + x2 = 0; + y2 = 0; + } + + DFBRegion( const int &_x1, const int &_y1, const int &_x2, const int &_y2 ) { + x1 = _x1; + y1 = _y1; + x2 = _x2; + y2 = _y2; + } + + DFBRegion( const DFBRegion_C ®ion ) { + x1 = region.x1; + y1 = region.y1; + x2 = region.x2; + y2 = region.y2; + } + + DFBRegion( const DFBRectangle_C &rectangle ) { + x1 = rectangle.x; + y1 = rectangle.y; + x2 = x1 + rectangle.w - 1; + y2 = y1 + rectangle.h - 1; + } + + DFBRegion( const DFBDimension_C &dimension ) { + x1 = 0; + y1 = 0; + x2 = dimension.w - 1; + y2 = dimension.h - 1; + } + + DFBRegion( const DFBPoint_C &point, const DFBDimension_C &dimension ) { + x1 = point.x; + y1 = point.y; + x2 = x1 + dimension.w - 1; + y2 = y1 + dimension.h - 1; + } + + bool operator== ( const DFBRegion &ref ) const { + return ref.x1 == x1 && ref.y1 == y1 && ref.x2 == x2 && ref.y2 == y2; + } + + DFBRegion& operator-= ( const DFBPoint &sub ) { + x1 -= sub.x; + y1 -= sub.y; + x2 -= sub.x; + y2 -= sub.y; + + return *this; + } + + DFBRegion operator- ( const DFBPoint &sub ) const { + return DFBRegion( x1 - sub.x, y1 - sub.y, x2 - sub.x, y2 - sub.y ); + } + + DFBRegion& operator|= ( const DFBRegion &r ) { + if (r.x1 < x1) + x1 = r.x1; + + if (r.y1 < y1) + y1 = r.y1; + + if (r.x2 > x2) + x2 = r.x2; + + if (r.y2 > y2) + y2 = r.y2; + + return *this; + } + + void unionWith ( const DFBRegion &r ) { + if (r.x1 < x1) + x1 = r.x1; + + if (r.y1 < y1) + y1 = r.y1; + + if (r.x2 > x2) + x2 = r.x2; + + if (r.y2 > y2) + y2 = r.y2; + } +}; + + + +template <class IMPLEMENTINGCLASS, class IPPAny_C> +class IPPAny +{ + protected: + IPPAny(IPPAny_C *iface) { + this->iface = iface; + } + inline IPPAny_C *get_iface() { return iface; } + inline IPPAny_C *get_iface() const { return iface; } + + public: + IPPAny_C* iface; + public: + IPPAny(){ + iface = NULL; + } + + IPPAny(const IPPAny &other) { + IPPAny_C *other_iface = other.iface; + if (other_iface) + other_iface->AddRef( other_iface ); + iface = other_iface; + } + + virtual ~IPPAny() { + if (iface) + iface->Release( iface ); + } + inline operator IMPLEMENTINGCLASS*() { + return dynamic_cast<IMPLEMENTINGCLASS*>(this); + } + inline operator IMPLEMENTINGCLASS*() const{ + return dynamic_cast<IMPLEMENTINGCLASS*> (this); + } + inline operator bool() { + return iface != NULL; + } + inline IMPLEMENTINGCLASS &operator = (const IMPLEMENTINGCLASS &other) { + IPPAny_C *other_iface = other.iface; + + if (other_iface) + other_iface->AddRef( other_iface ); + if (iface) + iface->Release( iface ); + iface = other_iface; + return dynamic_cast<IMPLEMENTINGCLASS&>(*this); + } + inline IMPLEMENTINGCLASS &operator = (IPPAny_C *other_iface) { + if (other_iface) + other_iface->AddRef( other_iface ); + if (iface) + iface->Release( iface ); + iface = other_iface; + return dynamic_cast<IMPLEMENTINGCLASS&>(*this); + } +}; + + + + +class DirectFB; +class IDirectFB; +class IDirectFBScreen; +class IDirectFBDisplayLayer; +class IDirectFBSurface; +class IDirectFBPalette; +class IDirectFBWindow; +class IDirectFBInputDevice; +class IDirectFBEventBuffer; +class IDirectFBFont; +class IDirectFBImageProvider; +class IDirectFBVideoProvider; +class IDirectFBDataBuffer; + + +#include "idirectfb.h" +#include "idirectfbscreen.h" +#include "idirectfbdisplaylayer.h" +#include "idirectfbsurface.h" +#include "idirectfbpalette.h" +#include "idirectfbwindow.h" +#include "idirectfbinputdevice.h" +#include "idirectfbeventbuffer.h" +#include "idirectfbfont.h" +#include "idirectfbimageprovider.h" +#include "idirectfbvideoprovider.h" +#include "idirectfbdatabuffer.h" + + +#define DFB_ADD_SURFACE_DESC(d,f) (d) = static_cast<DFBSurfaceDescriptionFlags> ((d) | (f)) +#define DFB_ADD_SURFACE_CAPS(c,f) (c) = static_cast<DFBSurfaceCapabilities> ((c) | (f)) +#define DFB_ADD_DRAWING_FLAG(d,f) (d) = static_cast<DFBSurfaceDrawingFlags> ((d) | (f)) +#define DFB_ADD_BLITTING_FLAG(b,f) (b) = static_cast<DFBSurfaceBlittingFlags> ((b) | (f)) + + +class DirectFB { +public: + static void Init (int *argc = NULL, char *(*argv[]) = NULL); + static IDirectFB Create (); +}; + +class DFBException { +public: + DFBException (const char *action, DFBResult result_code); + + const char *GetAction() const; + const char *GetResult() const; + DFBResult GetResultCode() const; + + friend std::ostream &operator << (std::ostream &stream, DFBException *ex); + +private: + const char *action; + DFBResult result_code; +}; + + + +#endif diff --git a/Source/++DFB/include/Makefile b/Source/++DFB/include/Makefile new file mode 100755 index 0000000..8750b47 --- /dev/null +++ b/Source/++DFB/include/Makefile @@ -0,0 +1,429 @@ +# Makefile.in generated by automake 1.10.1 from Makefile.am. +# include/Makefile. Generated from Makefile.in by configure. + +# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, +# 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. +# This Makefile.in is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY, to the extent permitted by law; without +# even the implied warranty of MERCHANTABILITY or FITNESS FOR A +# PARTICULAR PURPOSE. + + + + +pkgdatadir = $(datadir)/++DFB +pkglibdir = $(libdir)/++DFB +pkgincludedir = $(includedir)/++DFB +am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd +install_sh_DATA = $(install_sh) -c -m 644 +install_sh_PROGRAM = $(install_sh) -c +install_sh_SCRIPT = $(install_sh) -c +INSTALL_HEADER = $(INSTALL_DATA) +transform = $(program_transform_name) +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +build_triplet = x86_64-unknown-linux-gnu +host_triplet = x86_64-unknown-linux-gnu +subdir = include +DIST_COMMON = $(dfbppinclude_HEADERS) $(srcdir)/Makefile.am \ + $(srcdir)/Makefile.in +ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 +am__aclocal_m4_deps = $(top_srcdir)/configure.in +am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ + $(ACLOCAL_M4) +mkinstalldirs = $(install_sh) -d +CONFIG_HEADER = $(top_builddir)/config.h +CONFIG_CLEAN_FILES = +SOURCES = +DIST_SOURCES = +am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; +am__vpath_adj = case $$p in \ + $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ + *) f=$$p;; \ + esac; +am__strip_dir = `echo $$p | sed -e 's|^.*/||'`; +am__installdirs = "$(DESTDIR)$(dfbppincludedir)" +dfbppincludeHEADERS_INSTALL = $(INSTALL_HEADER) +HEADERS = $(dfbppinclude_HEADERS) +ETAGS = etags +CTAGS = ctags +DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) +ACLOCAL = ${SHELL} /home/dok/cvs/directfb/++DFB/missing --run aclocal-1.10 +AMTAR = ${SHELL} /home/dok/cvs/directfb/++DFB/missing --run tar +AR = ar +AUTOCONF = ${SHELL} /home/dok/cvs/directfb/++DFB/missing --run autoconf +AUTOHEADER = ${SHELL} /home/dok/cvs/directfb/++DFB/missing --run autoheader +AUTOMAKE = ${SHELL} /home/dok/cvs/directfb/++DFB/missing --run automake-1.10 +AWK = gawk +CC = gcc +CCDEPMODE = depmode=gcc3 +CFLAGS = -g -O2 +CPP = gcc -E +CPPFLAGS = +CXX = g++ +CXXCPP = g++ -E +CXXDEPMODE = depmode=gcc3 +CXXFLAGS = -g -O2 +CYGPATH_W = echo +DEFS = -DHAVE_CONFIG_H +DEPDIR = .deps +DIRECTFB_BINARY_AGE = 0 +DIRECTFB_CFLAGS = -D_GNU_SOURCE -finstrument-functions -D_REENTRANT -I/usr/local/include/directfb-internal -I/usr/local/include/directfb +DIRECTFB_INTERFACE_AGE = 0 +DIRECTFB_LIBS = -L/usr/local/lib -ldirectfb -lfusion -ldirect -lpthread +DIRECTFB_MAJOR_VERSION = 1 +DIRECTFB_MICRO_VERSION = 2 +DIRECTFB_MINOR_VERSION = 4 +DIRECTFB_VERSION = 1.4.2 +DSYMUTIL = +ECHO = echo +ECHO_C = +ECHO_N = -n +ECHO_T = +EGREP = /bin/grep -E +EXEEXT = +F77 = gfortran +FFLAGS = -g -O2 +GREP = /bin/grep +INSTALL = /usr/bin/install -c +INSTALL_DATA = ${INSTALL} -m 644 +INSTALL_PROGRAM = ${INSTALL} +INSTALL_SCRIPT = ${INSTALL} +INSTALL_STRIP_PROGRAM = $(install_sh) -c -s +LDFLAGS = +LIBOBJS = +LIBS = +LIBTOOL = $(SHELL) $(top_builddir)/libtool +LN_S = ln -s +LTLIBOBJS = +LT_AGE = 0 +LT_CURRENT = 2 +LT_RELEASE = 1.4 +LT_REVISION = 0 +MAINT = # +MAKEINFO = ${SHELL} /home/dok/cvs/directfb/++DFB/missing --run makeinfo +MKDIR_P = /bin/mkdir -p +NMEDIT = +OBJEXT = o +PACKAGE = ++DFB +PACKAGE_BUGREPORT = +PACKAGE_NAME = +PACKAGE_STRING = +PACKAGE_TARNAME = +PACKAGE_VERSION = +PATH_SEPARATOR = : +PKG_CONFIG = /usr/bin/pkg-config +RANLIB = ranlib +SED = /bin/sed +SET_MAKE = +SHELL = /bin/sh +STRIP = strip +VERSION = 1.4.2 +abs_builddir = /home/dok/cvs/directfb/++DFB/include +abs_srcdir = /home/dok/cvs/directfb/++DFB/include +abs_top_builddir = /home/dok/cvs/directfb/++DFB +abs_top_srcdir = /home/dok/cvs/directfb/++DFB +ac_ct_CC = gcc +ac_ct_CXX = g++ +ac_ct_F77 = gfortran +am__include = include +am__leading_dot = . +am__quote = +am__tar = ${AMTAR} chof - "$$tardir" +am__untar = ${AMTAR} xf - +bindir = ${exec_prefix}/bin +build = x86_64-unknown-linux-gnu +build_alias = +build_cpu = x86_64 +build_os = linux-gnu +build_vendor = unknown +builddir = . +datadir = ${datarootdir} +datarootdir = ${prefix}/share +docdir = ${datarootdir}/doc/${PACKAGE} +dvidir = ${docdir} +exec_prefix = ${prefix} +host = x86_64-unknown-linux-gnu +host_alias = +host_cpu = x86_64 +host_os = linux-gnu +host_vendor = unknown +htmldir = ${docdir} +includedir = ${prefix}/include +infodir = ${datarootdir}/info +install_sh = $(SHELL) /home/dok/cvs/directfb/++DFB/install-sh +libdir = ${exec_prefix}/lib +libexecdir = ${exec_prefix}/libexec +localedir = ${datarootdir}/locale +localstatedir = ${prefix}/var +mandir = ${datarootdir}/man +mkdir_p = /bin/mkdir -p +oldincludedir = /usr/include +pdfdir = ${docdir} +prefix = /usr/local +program_transform_name = s,x,x, +psdir = ${docdir} +sbindir = ${exec_prefix}/sbin +sharedstatedir = ${prefix}/com +srcdir = . +sysconfdir = ${prefix}/etc +target_alias = +top_builddir = .. +top_srcdir = .. +INCLUDES = -I$(top_srcdir)/include +dfbppincludedir = $(includedir)/++dfb +dfbppinclude_HEADERS = \ + ++dfb.h \ + idirectfb.h \ + idirectfbdatabuffer.h \ + idirectfbdisplaylayer.h \ + idirectfbeventbuffer.h \ + idirectfbfont.h \ + idirectfbimageprovider.h \ + idirectfbinputdevice.h \ + idirectfbpalette.h \ + idirectfbscreen.h \ + idirectfbsurface.h \ + idirectfbvideoprovider.h \ + idirectfbwindow.h + +all: all-am + +.SUFFIXES: +$(srcdir)/Makefile.in: # $(srcdir)/Makefile.am $(am__configure_deps) + @for dep in $?; do \ + case '$(am__configure_deps)' in \ + *$$dep*) \ + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \ + && exit 0; \ + exit 1;; \ + esac; \ + done; \ + echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu include/Makefile'; \ + cd $(top_srcdir) && \ + $(AUTOMAKE) --gnu include/Makefile +.PRECIOUS: Makefile +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status + @case '$?' in \ + *config.status*) \ + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ + *) \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + esac; + +$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh + +$(top_srcdir)/configure: # $(am__configure_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh +$(ACLOCAL_M4): # $(am__aclocal_m4_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh + +mostlyclean-libtool: + -rm -f *.lo + +clean-libtool: + -rm -rf .libs _libs +install-dfbppincludeHEADERS: $(dfbppinclude_HEADERS) + @$(NORMAL_INSTALL) + test -z "$(dfbppincludedir)" || $(MKDIR_P) "$(DESTDIR)$(dfbppincludedir)" + @list='$(dfbppinclude_HEADERS)'; for p in $$list; do \ + if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ + f=$(am__strip_dir) \ + echo " $(dfbppincludeHEADERS_INSTALL) '$$d$$p' '$(DESTDIR)$(dfbppincludedir)/$$f'"; \ + $(dfbppincludeHEADERS_INSTALL) "$$d$$p" "$(DESTDIR)$(dfbppincludedir)/$$f"; \ + done + +uninstall-dfbppincludeHEADERS: + @$(NORMAL_UNINSTALL) + @list='$(dfbppinclude_HEADERS)'; for p in $$list; do \ + f=$(am__strip_dir) \ + echo " rm -f '$(DESTDIR)$(dfbppincludedir)/$$f'"; \ + rm -f "$(DESTDIR)$(dfbppincludedir)/$$f"; \ + done + +ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonemtpy = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + mkid -fID $$unique +tags: TAGS + +TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ + $(TAGS_FILES) $(LISP) + tags=; \ + here=`pwd`; \ + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \ + test -n "$$unique" || unique=$$empty_fix; \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + $$tags $$unique; \ + fi +ctags: CTAGS +CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ + $(TAGS_FILES) $(LISP) + tags=; \ + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + test -z "$(CTAGS_ARGS)$$tags$$unique" \ + || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ + $$tags $$unique + +GTAGS: + here=`$(am__cd) $(top_builddir) && pwd` \ + && cd $(top_srcdir) \ + && gtags -i $(GTAGS_ARGS) $$here + +distclean-tags: + -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags + +distdir: $(DISTFILES) + @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + list='$(DISTFILES)'; \ + dist_files=`for file in $$list; do echo $$file; done | \ + sed -e "s|^$$srcdirstrip/||;t" \ + -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ + case $$dist_files in \ + */*) $(MKDIR_P) `echo "$$dist_files" | \ + sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ + sort -u` ;; \ + esac; \ + for file in $$dist_files; do \ + if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ + if test -d $$d/$$file; then \ + dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ + if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ + cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ + fi; \ + cp -pR $$d/$$file $(distdir)$$dir || exit 1; \ + else \ + test -f $(distdir)/$$file \ + || cp -p $$d/$$file $(distdir)/$$file \ + || exit 1; \ + fi; \ + done +check-am: all-am +check: check-am +all-am: Makefile $(HEADERS) +installdirs: + for dir in "$(DESTDIR)$(dfbppincludedir)"; do \ + test -z "$$dir" || $(MKDIR_P) "$$dir"; \ + done +install: install-am +install-exec: install-exec-am +install-data: install-data-am +uninstall: uninstall-am + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am + +installcheck: installcheck-am +install-strip: + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + `test -z '$(STRIP)' || \ + echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) + +maintainer-clean-generic: + @echo "This command is intended for maintainers to use" + @echo "it deletes files that may require special tools to rebuild." +clean: clean-am + +clean-am: clean-generic clean-libtool mostlyclean-am + +distclean: distclean-am + -rm -f Makefile +distclean-am: clean-am distclean-generic distclean-tags + +dvi: dvi-am + +dvi-am: + +html: html-am + +info: info-am + +info-am: + +install-data-am: install-dfbppincludeHEADERS + +install-dvi: install-dvi-am + +install-exec-am: + +install-html: install-html-am + +install-info: install-info-am + +install-man: + +install-pdf: install-pdf-am + +install-ps: install-ps-am + +installcheck-am: + +maintainer-clean: maintainer-clean-am + -rm -f Makefile +maintainer-clean-am: distclean-am maintainer-clean-generic + +mostlyclean: mostlyclean-am + +mostlyclean-am: mostlyclean-generic mostlyclean-libtool + +pdf: pdf-am + +pdf-am: + +ps: ps-am + +ps-am: + +uninstall-am: uninstall-dfbppincludeHEADERS + +.MAKE: install-am install-strip + +.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \ + clean-libtool ctags distclean distclean-generic \ + distclean-libtool distclean-tags distdir dvi dvi-am html \ + html-am info info-am install install-am install-data \ + install-data-am install-dfbppincludeHEADERS install-dvi \ + install-dvi-am install-exec install-exec-am install-html \ + install-html-am install-info install-info-am install-man \ + install-pdf install-pdf-am install-ps install-ps-am \ + install-strip installcheck installcheck-am installdirs \ + maintainer-clean maintainer-clean-generic mostlyclean \ + mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \ + tags uninstall uninstall-am uninstall-dfbppincludeHEADERS + +# Tell versions [3.59,3.63) of GNU make to not export all variables. +# Otherwise a system limit (for SysV at least) may be exceeded. +.NOEXPORT: diff --git a/Source/++DFB/include/Makefile.am b/Source/++DFB/include/Makefile.am new file mode 100755 index 0000000..42e7337 --- /dev/null +++ b/Source/++DFB/include/Makefile.am @@ -0,0 +1,20 @@ +## Makefile.am for ++DFB/include + +INCLUDES = -I$(top_srcdir)/include + +dfbppincludedir = $(includedir)/++dfb + +dfbppinclude_HEADERS = \ + ++dfb.h \ + idirectfb.h \ + idirectfbdatabuffer.h \ + idirectfbdisplaylayer.h \ + idirectfbeventbuffer.h \ + idirectfbfont.h \ + idirectfbimageprovider.h \ + idirectfbinputdevice.h \ + idirectfbpalette.h \ + idirectfbscreen.h \ + idirectfbsurface.h \ + idirectfbvideoprovider.h \ + idirectfbwindow.h diff --git a/Source/++DFB/include/Makefile.in b/Source/++DFB/include/Makefile.in new file mode 100755 index 0000000..9703607 --- /dev/null +++ b/Source/++DFB/include/Makefile.in @@ -0,0 +1,429 @@ +# Makefile.in generated by automake 1.10.1 from Makefile.am. +# @configure_input@ + +# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, +# 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. +# This Makefile.in is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY, to the extent permitted by law; without +# even the implied warranty of MERCHANTABILITY or FITNESS FOR A +# PARTICULAR PURPOSE. + +@SET_MAKE@ + +VPATH = @srcdir@ +pkgdatadir = $(datadir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ +am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd +install_sh_DATA = $(install_sh) -c -m 644 +install_sh_PROGRAM = $(install_sh) -c +install_sh_SCRIPT = $(install_sh) -c +INSTALL_HEADER = $(INSTALL_DATA) +transform = $(program_transform_name) +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +build_triplet = @build@ +host_triplet = @host@ +subdir = include +DIST_COMMON = $(dfbppinclude_HEADERS) $(srcdir)/Makefile.am \ + $(srcdir)/Makefile.in +ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 +am__aclocal_m4_deps = $(top_srcdir)/configure.in +am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ + $(ACLOCAL_M4) +mkinstalldirs = $(install_sh) -d +CONFIG_HEADER = $(top_builddir)/config.h +CONFIG_CLEAN_FILES = +SOURCES = +DIST_SOURCES = +am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; +am__vpath_adj = case $$p in \ + $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ + *) f=$$p;; \ + esac; +am__strip_dir = `echo $$p | sed -e 's|^.*/||'`; +am__installdirs = "$(DESTDIR)$(dfbppincludedir)" +dfbppincludeHEADERS_INSTALL = $(INSTALL_HEADER) +HEADERS = $(dfbppinclude_HEADERS) +ETAGS = etags +CTAGS = ctags +DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) +ACLOCAL = @ACLOCAL@ +AMTAR = @AMTAR@ +AR = @AR@ +AUTOCONF = @AUTOCONF@ +AUTOHEADER = @AUTOHEADER@ +AUTOMAKE = @AUTOMAKE@ +AWK = @AWK@ +CC = @CC@ +CCDEPMODE = @CCDEPMODE@ +CFLAGS = @CFLAGS@ +CPP = @CPP@ +CPPFLAGS = @CPPFLAGS@ +CXX = @CXX@ +CXXCPP = @CXXCPP@ +CXXDEPMODE = @CXXDEPMODE@ +CXXFLAGS = @CXXFLAGS@ +CYGPATH_W = @CYGPATH_W@ +DEFS = @DEFS@ +DEPDIR = @DEPDIR@ +DIRECTFB_BINARY_AGE = @DIRECTFB_BINARY_AGE@ +DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ +DIRECTFB_INTERFACE_AGE = @DIRECTFB_INTERFACE_AGE@ +DIRECTFB_LIBS = @DIRECTFB_LIBS@ +DIRECTFB_MAJOR_VERSION = @DIRECTFB_MAJOR_VERSION@ +DIRECTFB_MICRO_VERSION = @DIRECTFB_MICRO_VERSION@ +DIRECTFB_MINOR_VERSION = @DIRECTFB_MINOR_VERSION@ +DIRECTFB_VERSION = @DIRECTFB_VERSION@ +DSYMUTIL = @DSYMUTIL@ +ECHO = @ECHO@ +ECHO_C = @ECHO_C@ +ECHO_N = @ECHO_N@ +ECHO_T = @ECHO_T@ +EGREP = @EGREP@ +EXEEXT = @EXEEXT@ +F77 = @F77@ +FFLAGS = @FFLAGS@ +GREP = @GREP@ +INSTALL = @INSTALL@ +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ +LDFLAGS = @LDFLAGS@ +LIBOBJS = @LIBOBJS@ +LIBS = @LIBS@ +LIBTOOL = @LIBTOOL@ +LN_S = @LN_S@ +LTLIBOBJS = @LTLIBOBJS@ +LT_AGE = @LT_AGE@ +LT_CURRENT = @LT_CURRENT@ +LT_RELEASE = @LT_RELEASE@ +LT_REVISION = @LT_REVISION@ +MAINT = @MAINT@ +MAKEINFO = @MAKEINFO@ +MKDIR_P = @MKDIR_P@ +NMEDIT = @NMEDIT@ +OBJEXT = @OBJEXT@ +PACKAGE = @PACKAGE@ +PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ +PACKAGE_NAME = @PACKAGE_NAME@ +PACKAGE_STRING = @PACKAGE_STRING@ +PACKAGE_TARNAME = @PACKAGE_TARNAME@ +PACKAGE_VERSION = @PACKAGE_VERSION@ +PATH_SEPARATOR = @PATH_SEPARATOR@ +PKG_CONFIG = @PKG_CONFIG@ +RANLIB = @RANLIB@ +SED = @SED@ +SET_MAKE = @SET_MAKE@ +SHELL = @SHELL@ +STRIP = @STRIP@ +VERSION = @VERSION@ +abs_builddir = @abs_builddir@ +abs_srcdir = @abs_srcdir@ +abs_top_builddir = @abs_top_builddir@ +abs_top_srcdir = @abs_top_srcdir@ +ac_ct_CC = @ac_ct_CC@ +ac_ct_CXX = @ac_ct_CXX@ +ac_ct_F77 = @ac_ct_F77@ +am__include = @am__include@ +am__leading_dot = @am__leading_dot@ +am__quote = @am__quote@ +am__tar = @am__tar@ +am__untar = @am__untar@ +bindir = @bindir@ +build = @build@ +build_alias = @build_alias@ +build_cpu = @build_cpu@ +build_os = @build_os@ +build_vendor = @build_vendor@ +builddir = @builddir@ +datadir = @datadir@ +datarootdir = @datarootdir@ +docdir = @docdir@ +dvidir = @dvidir@ +exec_prefix = @exec_prefix@ +host = @host@ +host_alias = @host_alias@ +host_cpu = @host_cpu@ +host_os = @host_os@ +host_vendor = @host_vendor@ +htmldir = @htmldir@ +includedir = @includedir@ +infodir = @infodir@ +install_sh = @install_sh@ +libdir = @libdir@ +libexecdir = @libexecdir@ +localedir = @localedir@ +localstatedir = @localstatedir@ +mandir = @mandir@ +mkdir_p = @mkdir_p@ +oldincludedir = @oldincludedir@ +pdfdir = @pdfdir@ +prefix = @prefix@ +program_transform_name = @program_transform_name@ +psdir = @psdir@ +sbindir = @sbindir@ +sharedstatedir = @sharedstatedir@ +srcdir = @srcdir@ +sysconfdir = @sysconfdir@ +target_alias = @target_alias@ +top_builddir = @top_builddir@ +top_srcdir = @top_srcdir@ +INCLUDES = -I$(top_srcdir)/include +dfbppincludedir = $(includedir)/++dfb +dfbppinclude_HEADERS = \ + ++dfb.h \ + idirectfb.h \ + idirectfbdatabuffer.h \ + idirectfbdisplaylayer.h \ + idirectfbeventbuffer.h \ + idirectfbfont.h \ + idirectfbimageprovider.h \ + idirectfbinputdevice.h \ + idirectfbpalette.h \ + idirectfbscreen.h \ + idirectfbsurface.h \ + idirectfbvideoprovider.h \ + idirectfbwindow.h + +all: all-am + +.SUFFIXES: +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps) + @for dep in $?; do \ + case '$(am__configure_deps)' in \ + *$$dep*) \ + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \ + && exit 0; \ + exit 1;; \ + esac; \ + done; \ + echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu include/Makefile'; \ + cd $(top_srcdir) && \ + $(AUTOMAKE) --gnu include/Makefile +.PRECIOUS: Makefile +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status + @case '$?' in \ + *config.status*) \ + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ + *) \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + esac; + +$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh + +$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh +$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh + +mostlyclean-libtool: + -rm -f *.lo + +clean-libtool: + -rm -rf .libs _libs +install-dfbppincludeHEADERS: $(dfbppinclude_HEADERS) + @$(NORMAL_INSTALL) + test -z "$(dfbppincludedir)" || $(MKDIR_P) "$(DESTDIR)$(dfbppincludedir)" + @list='$(dfbppinclude_HEADERS)'; for p in $$list; do \ + if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ + f=$(am__strip_dir) \ + echo " $(dfbppincludeHEADERS_INSTALL) '$$d$$p' '$(DESTDIR)$(dfbppincludedir)/$$f'"; \ + $(dfbppincludeHEADERS_INSTALL) "$$d$$p" "$(DESTDIR)$(dfbppincludedir)/$$f"; \ + done + +uninstall-dfbppincludeHEADERS: + @$(NORMAL_UNINSTALL) + @list='$(dfbppinclude_HEADERS)'; for p in $$list; do \ + f=$(am__strip_dir) \ + echo " rm -f '$(DESTDIR)$(dfbppincludedir)/$$f'"; \ + rm -f "$(DESTDIR)$(dfbppincludedir)/$$f"; \ + done + +ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonemtpy = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + mkid -fID $$unique +tags: TAGS + +TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ + $(TAGS_FILES) $(LISP) + tags=; \ + here=`pwd`; \ + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \ + test -n "$$unique" || unique=$$empty_fix; \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + $$tags $$unique; \ + fi +ctags: CTAGS +CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ + $(TAGS_FILES) $(LISP) + tags=; \ + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + test -z "$(CTAGS_ARGS)$$tags$$unique" \ + || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ + $$tags $$unique + +GTAGS: + here=`$(am__cd) $(top_builddir) && pwd` \ + && cd $(top_srcdir) \ + && gtags -i $(GTAGS_ARGS) $$here + +distclean-tags: + -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags + +distdir: $(DISTFILES) + @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + list='$(DISTFILES)'; \ + dist_files=`for file in $$list; do echo $$file; done | \ + sed -e "s|^$$srcdirstrip/||;t" \ + -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ + case $$dist_files in \ + */*) $(MKDIR_P) `echo "$$dist_files" | \ + sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ + sort -u` ;; \ + esac; \ + for file in $$dist_files; do \ + if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ + if test -d $$d/$$file; then \ + dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ + if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ + cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ + fi; \ + cp -pR $$d/$$file $(distdir)$$dir || exit 1; \ + else \ + test -f $(distdir)/$$file \ + || cp -p $$d/$$file $(distdir)/$$file \ + || exit 1; \ + fi; \ + done +check-am: all-am +check: check-am +all-am: Makefile $(HEADERS) +installdirs: + for dir in "$(DESTDIR)$(dfbppincludedir)"; do \ + test -z "$$dir" || $(MKDIR_P) "$$dir"; \ + done +install: install-am +install-exec: install-exec-am +install-data: install-data-am +uninstall: uninstall-am + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am + +installcheck: installcheck-am +install-strip: + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + `test -z '$(STRIP)' || \ + echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) + +maintainer-clean-generic: + @echo "This command is intended for maintainers to use" + @echo "it deletes files that may require special tools to rebuild." +clean: clean-am + +clean-am: clean-generic clean-libtool mostlyclean-am + +distclean: distclean-am + -rm -f Makefile +distclean-am: clean-am distclean-generic distclean-tags + +dvi: dvi-am + +dvi-am: + +html: html-am + +info: info-am + +info-am: + +install-data-am: install-dfbppincludeHEADERS + +install-dvi: install-dvi-am + +install-exec-am: + +install-html: install-html-am + +install-info: install-info-am + +install-man: + +install-pdf: install-pdf-am + +install-ps: install-ps-am + +installcheck-am: + +maintainer-clean: maintainer-clean-am + -rm -f Makefile +maintainer-clean-am: distclean-am maintainer-clean-generic + +mostlyclean: mostlyclean-am + +mostlyclean-am: mostlyclean-generic mostlyclean-libtool + +pdf: pdf-am + +pdf-am: + +ps: ps-am + +ps-am: + +uninstall-am: uninstall-dfbppincludeHEADERS + +.MAKE: install-am install-strip + +.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \ + clean-libtool ctags distclean distclean-generic \ + distclean-libtool distclean-tags distdir dvi dvi-am html \ + html-am info info-am install install-am install-data \ + install-data-am install-dfbppincludeHEADERS install-dvi \ + install-dvi-am install-exec install-exec-am install-html \ + install-html-am install-info install-info-am install-man \ + install-pdf install-pdf-am install-ps install-ps-am \ + install-strip installcheck installcheck-am installdirs \ + maintainer-clean maintainer-clean-generic mostlyclean \ + mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \ + tags uninstall uninstall-am uninstall-dfbppincludeHEADERS + +# Tell versions [3.59,3.63) of GNU make to not export all variables. +# Otherwise a system limit (for SysV at least) may be exceeded. +.NOEXPORT: diff --git a/Source/++DFB/include/idirectfb.h b/Source/++DFB/include/idirectfb.h new file mode 100755 index 0000000..71e5b57 --- /dev/null +++ b/Source/++DFB/include/idirectfb.h @@ -0,0 +1,97 @@ +/* + (c) Copyright 2000-2002 convergence integrated media GmbH. + All rights reserved. + + Written by Denis Oliver Kropp <dok@convergence.de>, + Andreas Hundt <andi@convergence.de> and + Sven Neumann <sven@convergence.de> + + 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. +*/ + +#ifndef IDIRECTFB_H +#define IDIRECTFB_H + +#ifndef DFBPP_H +#error Please include ++dfb.h only. +#endif + +class IDirectFB :public IPPAny<IDirectFB, IDirectFB_C>{ +friend + class DirectFB; + +public: + IDirectFB(IDirectFB_C *myptr = NULL):IPPAny<IDirectFB, IDirectFB_C>(myptr){} + ~IDirectFB(){} + void SetCooperativeLevel (DFBCooperativeLevel level); + void SetVideoMode (unsigned int width, + unsigned int height, + unsigned int bpp); + + void GetDeviceDescription (DFBGraphicsDeviceDescription *desc); + void EnumVideoModes (DFBVideoModeCallback callback, + void *callbackdata); + + IDirectFBSurface CreateSurface (DFBSurfaceDescription &desc) const; + IDirectFBPalette CreatePalette (DFBPaletteDescription &desc); + + void EnumScreens (DFBScreenCallback callback, + void *callbackdata); + IDirectFBScreen GetScreen (DFBScreenID screen_id); + + void EnumDisplayLayers (DFBDisplayLayerCallback callback, + void *callbackdata); + IDirectFBDisplayLayer GetDisplayLayer (DFBDisplayLayerID layer_id); + + void EnumInputDevices (DFBInputDeviceCallback callback, + void *callbackdata) const; + IDirectFBInputDevice GetInputDevice (DFBInputDeviceID device_id) const; + IDirectFBEventBuffer CreateEventBuffer () const; + IDirectFBEventBuffer CreateInputEventBuffer (DFBInputDeviceCapabilities caps, + DFBBoolean global = DFB_FALSE); + + IDirectFBImageProvider CreateImageProvider (const char *filename) const; + IDirectFBVideoProvider CreateVideoProvider (const char *filename); + IDirectFBFont CreateFont (const char *filename, + DFBFontDescription &desc) const ; + IDirectFBDataBuffer CreateDataBuffer (DFBDataBufferDescription &desc); + + struct timeval SetClipboardData (const char *mime_type, + const void *data, + unsigned int size); + void GetClipboardData (char **mime_type, + void **data, + unsigned int *size); + struct timeval GetClipboardTimeStamp (); + + void Suspend (); + void Resume (); + void WaitIdle (); + void WaitForSync (); + + void *GetInterface (const char *type, + const char *implementation, + void *arg); + + inline IDirectFB& operator = (const IDirectFB& other){ + return IPPAny<IDirectFB, IDirectFB_C>::operator =(other); + } + inline IDirectFB& operator = (IDirectFB_C* other){ + return IPPAny<IDirectFB, IDirectFB_C>::operator =(other); + } +}; + +#endif diff --git a/Source/++DFB/include/idirectfbdatabuffer.h b/Source/++DFB/include/idirectfbdatabuffer.h new file mode 100755 index 0000000..d92abe9 --- /dev/null +++ b/Source/++DFB/include/idirectfbdatabuffer.h @@ -0,0 +1,73 @@ +/* + (c) Copyright 2000-2002 convergence integrated media GmbH. + All rights reserved. + + Written by Denis Oliver Kropp <dok@convergence.de>, + Andreas Hundt <andi@convergence.de> and + Sven Neumann <sven@convergence.de> + + 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. +*/ + +#ifndef IDIRECTFBDATABUFFER_H +#define IDIRECTFBDATABUFFER_H + +#ifndef DFBPP_H +#error Please include ++dfb.h only. +#endif + +class IDirectFBDataBuffer : public IPPAny<IDirectFBDataBuffer, IDirectFBDataBuffer_C> { +friend + class IDirectFB; + +public: + IDirectFBDataBuffer(IDirectFBDataBuffer_C *myptr=NULL):IPPAny<IDirectFBDataBuffer, IDirectFBDataBuffer_C>(myptr){} + + void Flush (); + void Finish (); + void SeekTo (unsigned int offset); + unsigned int GetPosition (); + unsigned int GetLength (); + + void WaitForData (unsigned int length); + void WaitForDataWithTimeout (unsigned int length, + unsigned int seconds, + unsigned int milli_seconds); + + unsigned int GetData (unsigned int length, + void *data); + unsigned int PeekData (unsigned int length, + int offset, + void *data); + + bool HasData (); + + void PutData (const void *data, + unsigned int length); + + IDirectFBImageProvider CreateImageProvider (); + IDirectFBVideoProvider CreateVideoProvider (); + + inline IDirectFBDataBuffer& operator = (const IDirectFBDataBuffer& other){ + return IPPAny<IDirectFBDataBuffer, IDirectFBDataBuffer_C>::operator =(other); + } + inline IDirectFBDataBuffer& operator = (IDirectFBDataBuffer_C* other){ + return IPPAny<IDirectFBDataBuffer, IDirectFBDataBuffer_C>::operator =(other); + } + +}; + +#endif diff --git a/Source/++DFB/include/idirectfbdisplaylayer.h b/Source/++DFB/include/idirectfbdisplaylayer.h new file mode 100755 index 0000000..474aaf1 --- /dev/null +++ b/Source/++DFB/include/idirectfbdisplaylayer.h @@ -0,0 +1,122 @@ +/* + (c) Copyright 2000-2002 convergence integrated media GmbH. + All rights reserved. + + Written by Denis Oliver Kropp <dok@convergence.de>, + Andreas Hundt <andi@convergence.de> and + Sven Neumann <sven@convergence.de> + + 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. +*/ + +#ifndef IDIRECTFBDISPLAYLAYER_H +#define IDIRECTFBDISPLAYLAYER_H + +#ifndef DFBPP_H +#error Please include ++dfb.h only. +#endif + +class IDirectFBDisplayLayer : public IPPAny<IDirectFBDisplayLayer, IDirectFBDisplayLayer_C> { +friend + class IDirectFB; + +public: + IDirectFBDisplayLayer(IDirectFBDisplayLayer_C* myptr=NULL):IPPAny<IDirectFBDisplayLayer, IDirectFBDisplayLayer_C>(myptr){} + + DFBDisplayLayerID GetID (); + + DFBDisplayLayerDescription + GetDescription (); + + void GetSourceDescriptions (DFBDisplayLayerSourceDescription *desc); + + IDirectFBSurface GetSurface (); + + IDirectFBScreen GetScreen (); + + void SetCooperativeLevel (DFBDisplayLayerCooperativeLevel level); + void SetOpacity (u8 opacity); + void SetSourceRectangle (int x, + int y, + int width, + int height); + void SetScreenLocation (float x, + float y, + float width, + float height); + void SetScreenPosition (int x, + int y); + void SetScreenRectangle (int x, + int y, + int width, + int height); + void SetClipRegions (const DFBRegion *regions, + int num_regions, + DFBBoolean positive); + void SetSrcColorKey (u8 r, + u8 g, + u8 b); + void SetDstColorKey (u8 r, + u8 g, + u8 b); + int GetLevel (); + void SetLevel (int level); + int GetCurrentOutputField (); + void SetFieldParity (int field); + void WaitForSync (); + + void GetConfiguration (DFBDisplayLayerConfig *config); + void TestConfiguration (DFBDisplayLayerConfig &config, + DFBDisplayLayerConfigFlags *failed = NULL); + void SetConfiguration (DFBDisplayLayerConfig &config); + + void SetBackgroundMode (DFBDisplayLayerBackgroundMode mode); + void SetBackgroundImage (IDirectFBSurface *surface); + void SetBackgroundColor (u8 r, + u8 g, + u8 b, + u8 a = 0xFF); + + void GetColorAdjustment (DFBColorAdjustment *adj); + void SetColorAdjustment (DFBColorAdjustment &adj); + + IDirectFBWindow CreateWindow (DFBWindowDescription &desc); + IDirectFBWindow GetWindow (DFBWindowID window_id); + + void EnableCursor (bool enable); + void GetCursorPosition (int *x, + int *y); + void WarpCursor (int x, + int y); + void SetCursorAcceleration (int numerator, + int denominator, + int threshold); + void SetCursorShape (IDirectFBSurface *shape, + int hot_x, + int hot_y); + void SetCursorOpacity (u8 opacity); + + void SwitchContext (DFBBoolean exclusive); + + inline IDirectFBDisplayLayer& operator = (const IDirectFBDisplayLayer& other){ + return IPPAny<IDirectFBDisplayLayer, IDirectFBDisplayLayer_C>::operator =(other); + } + inline IDirectFBDisplayLayer& operator = (IDirectFBDisplayLayer_C* other){ + return IPPAny<IDirectFBDisplayLayer, IDirectFBDisplayLayer_C>::operator =(other); + } +}; + +#endif diff --git a/Source/++DFB/include/idirectfbeventbuffer.h b/Source/++DFB/include/idirectfbeventbuffer.h new file mode 100755 index 0000000..286f108 --- /dev/null +++ b/Source/++DFB/include/idirectfbeventbuffer.h @@ -0,0 +1,71 @@ +/* + (c) Copyright 2000-2002 convergence integrated media GmbH. + All rights reserved. + + Written by Denis Oliver Kropp <dok@convergence.de>, + Andreas Hundt <andi@convergence.de> and + Sven Neumann <sven@convergence.de> + + 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. +*/ + +#ifndef IDIRECTFBEVENTBUFFER_H +#define IDIRECTFBEVENTBUFFER_H + +#ifndef DFBPP_H +#error Please include ++dfb.h only. +#endif + +class IDirectFBEventBuffer : public IPPAny<IDirectFBEventBuffer, IDirectFBEventBuffer_C> { +friend + class IDirectFB; +friend + class IDirectFBInputDevice; +friend + class IDirectFBWindow; + +public: + IDirectFBEventBuffer(IDirectFBEventBuffer_C* myptr=NULL):IPPAny<IDirectFBEventBuffer, IDirectFBEventBuffer_C>(myptr){} + + void Reset (); + + void WaitForEvent (); + bool WaitForEventWithTimeout (unsigned int seconds, + unsigned int milli_seconds); + + void WakeUp (); + + bool GetEvent (DFBEvent *event); + bool PeekEvent (DFBEvent *event); + bool HasEvent (); + + void PostEvent (DFBEvent &event); + + int CreateFileDescriptor (); + + void EnableStatistics (DFBBoolean enable); + void GetStatistics (DFBEventBufferStats *stats); + + inline IDirectFBEventBuffer& operator = (const IDirectFBEventBuffer& other){ + return IPPAny<IDirectFBEventBuffer, IDirectFBEventBuffer_C>::operator =(other); + } + inline IDirectFBEventBuffer& operator = (IDirectFBEventBuffer_C* other){ + return IPPAny<IDirectFBEventBuffer, IDirectFBEventBuffer_C>::operator =(other); + } + +}; + +#endif diff --git a/Source/++DFB/include/idirectfbfont.h b/Source/++DFB/include/idirectfbfont.h new file mode 100755 index 0000000..9222982 --- /dev/null +++ b/Source/++DFB/include/idirectfbfont.h @@ -0,0 +1,84 @@ +/* + (c) Copyright 2000-2002 convergence integrated media GmbH. + All rights reserved. + + Written by Denis Oliver Kropp <dok@convergence.de>, + Andreas Hundt <andi@convergence.de> and + Sven Neumann <sven@convergence.de> + + 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. +*/ + +#ifndef IDIRECTFBFONT_H +#define IDIRECTFBFONT_H + +#ifndef DFBPP_H +#error Please include ++dfb.h only. +#endif + +class IDirectFBFont : public IPPAny<IDirectFBFont, IDirectFBFont_C> { +friend + class IDirectFB; +friend + class IDirectFBSurface; + +public: + IDirectFBFont(IDirectFBFont_C* myptr=NULL):IPPAny<IDirectFBFont, IDirectFBFont_C>(myptr){} + + int GetAscender () const; + int GetDescender () const; + int GetHeight () const; + int GetMaxAdvance () const; + + void GetKerning (unsigned int prev_index, + unsigned int current_index, + int *kern_x, + int *kern_y) const; + + void GetStringBreak (const char *text, + int bytes, + int max_width, + int *ret_width, + int *ret_str_length, + const char **ret_next_line) const; + + int GetStringWidth (const char *text, + int bytes = -1) const; + void GetStringExtents (const char *text, + int bytes, + DFBRectangle *logical_rect, + DFBRectangle *ink_rect) const; + void GetGlyphExtents (unsigned int index, + DFBRectangle *rect, + int *advance) const; + + void SetEncoding (DFBTextEncodingID encoding); + void EnumEncodings (DFBTextEncodingCallback callback, + void *callbackdata); + void FindEncoding (const char *name, + DFBTextEncodingID *encoding); + + + inline IDirectFBFont& operator = (const IDirectFBFont& other){ + return IPPAny<IDirectFBFont, IDirectFBFont_C>::operator =(other); + } + inline IDirectFBFont& operator = (IDirectFBFont_C* other){ + return IPPAny<IDirectFBFont, IDirectFBFont_C>::operator =(other); + } + +}; + +#endif diff --git a/Source/++DFB/include/idirectfbimageprovider.h b/Source/++DFB/include/idirectfbimageprovider.h new file mode 100755 index 0000000..915be23 --- /dev/null +++ b/Source/++DFB/include/idirectfbimageprovider.h @@ -0,0 +1,58 @@ +/* + (c) Copyright 2000-2002 convergence integrated media GmbH. + All rights reserved. + + Written by Denis Oliver Kropp <dok@convergence.de>, + Andreas Hundt <andi@convergence.de> and + Sven Neumann <sven@convergence.de> + + 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. +*/ + +#ifndef IDIRECTFBIMAGEPROVIDER_H +#define IDIRECTFBIMAGEPROVIDER_H + +#ifndef DFBPP_H +#error Please include ++dfb.h only. +#endif + +class IDirectFBImageProvider : public IPPAny<IDirectFBImageProvider, IDirectFBImageProvider_C>{ +friend + class IDirectFB; +friend + class IDirectFBDataBuffer; + +public: + IDirectFBImageProvider(IDirectFBImageProvider_C* myptr=NULL):IPPAny<IDirectFBImageProvider, IDirectFBImageProvider_C>(myptr){} + + void GetSurfaceDescription (DFBSurfaceDescription *dsc); + void GetImageDescription (DFBImageDescription *dsc); + + void RenderTo (IDirectFBSurface *destination, + DFBRectangle *destination_rect); + + void SetRenderCallback (DIRenderCallback callback, + void *callback_data); + + inline IDirectFBImageProvider& operator = (const IDirectFBImageProvider& other){ + return IPPAny<IDirectFBImageProvider, IDirectFBImageProvider_C>::operator =(other); + } + inline IDirectFBImageProvider& operator = (IDirectFBImageProvider_C* other){ + return IPPAny<IDirectFBImageProvider, IDirectFBImageProvider_C>::operator =(other); + } +}; + +#endif diff --git a/Source/++DFB/include/idirectfbinputdevice.h b/Source/++DFB/include/idirectfbinputdevice.h new file mode 100755 index 0000000..39d0bf8 --- /dev/null +++ b/Source/++DFB/include/idirectfbinputdevice.h @@ -0,0 +1,67 @@ +/* + (c) Copyright 2000-2002 convergence integrated media GmbH. + All rights reserved. + + Written by Denis Oliver Kropp <dok@convergence.de>, + Andreas Hundt <andi@convergence.de> and + Sven Neumann <sven@convergence.de> + + 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. +*/ + +#ifndef IDIRECTFBINPUTDEVICE_H +#define IDIRECTFBINPUTDEVICE_H + +#ifndef DFBPP_H +#error Please include ++dfb.h only. +#endif + +class IDirectFBInputDevice : public IPPAny<IDirectFBInputDevice, IDirectFBInputDevice_C>{ +friend + class IDirectFB; + +public: + IDirectFBInputDevice(IDirectFBInputDevice_C* myptr=NULL):IPPAny<IDirectFBInputDevice, IDirectFBInputDevice_C>(myptr){} + + DFBInputDeviceID GetID (); + void GetDescription (DFBInputDeviceDescription *desc); + + void GetKeymapEntry (int code, + DFBInputDeviceKeymapEntry *entry); + + IDirectFBEventBuffer CreateEventBuffer (); + void AttachEventBuffer (IDirectFBEventBuffer *buffer); + void DetachEventBuffer (IDirectFBEventBuffer *buffer); + + DFBInputDeviceKeyState GetKeyState (DFBInputDeviceKeyIdentifier key_id); + DFBInputDeviceModifierMask GetModifiers (); + DFBInputDeviceLockState GetLockState (); + DFBInputDeviceButtonMask GetButtons (); + DFBInputDeviceButtonState GetButtonState (DFBInputDeviceButtonIdentifier button); + int GetAxis (DFBInputDeviceAxisIdentifier axis); + + void GetXY (int *x, + int *y); + inline IDirectFBInputDevice& operator = (const IDirectFBInputDevice& other){ + return IPPAny<IDirectFBInputDevice, IDirectFBInputDevice_C>::operator =(other); + } + inline IDirectFBInputDevice& operator = (IDirectFBInputDevice_C* other){ + return IPPAny<IDirectFBInputDevice, IDirectFBInputDevice_C>::operator =(other); + } + +}; + +#endif diff --git a/Source/++DFB/include/idirectfbpalette.h b/Source/++DFB/include/idirectfbpalette.h new file mode 100755 index 0000000..b413404 --- /dev/null +++ b/Source/++DFB/include/idirectfbpalette.h @@ -0,0 +1,68 @@ +/* + (c) Copyright 2000-2002 convergence integrated media GmbH. + All rights reserved. + + Written by Denis Oliver Kropp <dok@convergence.de>, + Andreas Hundt <andi@convergence.de> and + Sven Neumann <sven@convergence.de> + + 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. +*/ + +#ifndef IDIRECTFBPALETTE_H +#define IDIRECTFBPALETTE_H + +#ifndef DFBPP_H +#error Please include ++dfb.h only. +#endif + +class IDirectFBPalette : public IPPAny<IDirectFBPalette, IDirectFBPalette_C> { +friend + class IDirectFB; +friend + class IDirectFBSurface; + +public: + IDirectFBPalette(IDirectFBPalette_C* myptr=NULL):IPPAny<IDirectFBPalette, IDirectFBPalette_C>(myptr){} + + DFBPaletteCapabilities GetCapabilities (); + unsigned int GetSize (); + + void SetEntries (DFBColor *entries, + unsigned int num_entries, + unsigned int offset); + + void GetEntries (DFBColor *entries, + unsigned int num_entries, + unsigned int offset); + + unsigned int FindBestMatch (u8 r, + u8 g, + u8 b, + u8 a); + + IDirectFBPalette CreateCopy (); + + + inline IDirectFBPalette& operator = (const IDirectFBPalette& other){ + return IPPAny<IDirectFBPalette, IDirectFBPalette_C>::operator =(other); + } + inline IDirectFBPalette& operator = (IDirectFBPalette_C* other){ + return IPPAny<IDirectFBPalette, IDirectFBPalette_C>::operator =(other); + } +}; + +#endif diff --git a/Source/++DFB/include/idirectfbscreen.h b/Source/++DFB/include/idirectfbscreen.h new file mode 100755 index 0000000..e60b703 --- /dev/null +++ b/Source/++DFB/include/idirectfbscreen.h @@ -0,0 +1,103 @@ +/* + (c) Copyright 2000-2002 convergence integrated media GmbH. + All rights reserved. + + Written by Denis Oliver Kropp <dok@convergence.de>, + Andreas Hundt <andi@convergence.de> and + Sven Neumann <sven@convergence.de> + + 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. +*/ + +#ifndef IDIRECTFBSCREEN_H +#define IDIRECTFBSCREEN_H + +#ifndef DFBPP_H +#error Please include ++dfb.h only. +#endif + +class IDirectFBScreen : public IPPAny<IDirectFBScreen, IDirectFBScreen_C> { +friend + class IDirectFB; +friend + class IDirectFBDisplayLayer; + +public: + IDirectFBScreen(IDirectFBScreen_C* myptr=NULL):IPPAny<IDirectFBScreen, IDirectFBScreen_C>(myptr){} + + DFBScreenID GetID (); + + DFBScreenDescription GetDescription (); + + void GetSize (int *width, + int *height); + + void EnumDisplayLayers (DFBDisplayLayerCallback callback, + void *callbackdata); + + void SetPowerMode (DFBScreenPowerMode mode); + + void WaitForSync (); + + + void GetMixerDescriptions (DFBScreenMixerDescription *descriptions); + + void GetMixerConfiguration (int mixer, + DFBScreenMixerConfig *config); + + void TestMixerConfiguration (int mixer, + const DFBScreenMixerConfig &config, + DFBScreenMixerConfigFlags *failed); + + void SetMixerConfiguration (int mixer, + const DFBScreenMixerConfig &config); + + + void GetEncoderDescriptions (DFBScreenEncoderDescription *descriptions); + + void GetEncoderConfiguration (int encoder, + DFBScreenEncoderConfig *config); + + void TestEncoderConfiguration (int encoder, + const DFBScreenEncoderConfig &config, + DFBScreenEncoderConfigFlags *failed); + + void SetEncoderConfiguration (int encoder, + const DFBScreenEncoderConfig &config); + + + void GetOutputDescriptions (DFBScreenOutputDescription *descriptions); + + void GetOutputConfiguration (int output, + DFBScreenOutputConfig *config); + + void TestOutputConfiguration (int output, + const DFBScreenOutputConfig &config, + DFBScreenOutputConfigFlags *failed); + + void SetOutputConfiguration (int output, + const DFBScreenOutputConfig &config); + + inline IDirectFBScreen& operator = (const IDirectFBScreen& other){ + return IPPAny<IDirectFBScreen, IDirectFBScreen_C>::operator =(other); + } + inline IDirectFBScreen& operator = (IDirectFBScreen_C* other){ + return IPPAny<IDirectFBScreen, IDirectFBScreen_C>::operator =(other); + } + +}; + +#endif diff --git a/Source/++DFB/include/idirectfbsurface.h b/Source/++DFB/include/idirectfbsurface.h new file mode 100755 index 0000000..6404dbc --- /dev/null +++ b/Source/++DFB/include/idirectfbsurface.h @@ -0,0 +1,211 @@ +/* + (c) Copyright 2000-2002 convergence integrated media GmbH. + All rights reserved. + + Written by Denis Oliver Kropp <dok@convergence.de>, + Andreas Hundt <andi@convergence.de> and + Sven Neumann <sven@convergence.de> + + 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. +*/ + +#ifndef IDIRECTFBSURFACE_H +#define IDIRECTFBSURFACE_H + +#ifndef DFBPP_H +#error Please include ++dfb.h only. +#endif + +class IDirectFBSurface : public IPPAny<IDirectFBSurface, IDirectFBSurface_C> { +friend + class IDirectFB; +friend + class IDirectFBDisplayLayer; +friend + class IDirectFBImageProvider; +friend + class IDirectFBVideoProvider; +friend + class IDirectFBWindow; + +public: + IDirectFBSurface(IDirectFBSurface_C* myptr=NULL):IPPAny<IDirectFBSurface, IDirectFBSurface_C>(myptr){} + + DFBSurfaceCapabilities GetCapabilities (); + void GetPosition (int *x, + int *y); + void GetSize (int *width, + int *height); + void GetVisibleRectangle (DFBRectangle *rect); + DFBSurfacePixelFormat GetPixelFormat (); + DFBAccelerationMask GetAccelerationMask (IDirectFBSurface *source = NULL); + + IDirectFBPalette GetPalette (); + void SetPalette (IDirectFBPalette *palette); + void SetAlphaRamp (u8 a0, + u8 a1, + u8 a2, + u8 a3); + + void Lock (DFBSurfaceLockFlags flags, + void **ptr, + int *pitch); + void Unlock (); + void Flip (DFBRegion *region = NULL, + DFBSurfaceFlipFlags flags = static_cast<DFBSurfaceFlipFlags>(0)); + void SetField (int field); + void Clear (u8 r = 0x00, + u8 g = 0x00, + u8 b = 0x00, + u8 a = 0x00); + void Clear (DFBColor &color); + + void SetClip (const DFBRegion *clip = 0); + void SetClip (const DFBRectangle *clip); + void SetColor (u8 r, + u8 g, + u8 b, + u8 a = 0xFF); + void SetColor (DFBColor &color); + void SetColorIndex (unsigned int index); + void SetSrcBlendFunction (DFBSurfaceBlendFunction function); + void SetDstBlendFunction (DFBSurfaceBlendFunction function); + void SetPorterDuff (DFBSurfacePorterDuffRule rule); + void SetSrcColorKey (u8 r, + u8 g, + u8 b); + void SetSrcColorKeyIndex (unsigned int index); + void SetDstColorKey (u8 r, + u8 g, + u8 b); + void SetDstColorKeyIndex (unsigned int index); + + void SetBlittingFlags (DFBSurfaceBlittingFlags flags); + void Blit (IDirectFBSurface *source, + const DFBRectangle *source_rect = NULL, + int x = 0, + int y = 0); + void TileBlit (IDirectFBSurface *source, + const DFBRectangle *source_rect = NULL, + int x = 0, + int y = 0); + void BatchBlit (IDirectFBSurface *source, + const DFBRectangle *source_rects, + const DFBPoint *dest_points, + int num); + void StretchBlit (IDirectFBSurface *source, + const DFBRectangle *source_rect = NULL, + const DFBRectangle *destination_rect = NULL); + + void TextureTriangles (IDirectFBSurface *source, + const DFBVertex *vertices, + const int *indices, + int num, + DFBTriangleFormation formation); + + void SetDrawingFlags (DFBSurfaceDrawingFlags flags); + void FillRectangle (int x, + int y, + int width, + int height); + void FillRectangle (DFBRectangle &rect); + void FillRectangle (DFBRegion &rect); + void FillRectangles (const DFBRectangle *rects, + unsigned int num_rects); + void DrawRectangle (int x, + int y, + int width, + int height); + void DrawLine (int x1, + int y1, + int x2, + int y2); + void DrawLines (const DFBRegion *lines, + unsigned int num_lines); + void FillTriangle (int x1, + int y1, + int x2, + int y2, + int x3, + int y3); + void FillSpans (int y, + const DFBSpan *spans, + unsigned int num); + + void SetFont (const IDirectFBFont &font) const; + IDirectFBFont GetFont () const; + void DrawString (const char *text, + int bytes, + int x, + int y, + DFBSurfaceTextFlags flags); + void DrawGlyph (unsigned int index, + int x, + int y, + DFBSurfaceTextFlags flags); + void SetEncoding (DFBTextEncodingID encoding); + + IDirectFBSurface GetSubSurface (DFBRectangle *rect); + + void Dump (const char *directory, + const char *prefix); + + void DisableAcceleration (DFBAccelerationMask mask); + + IDirectFBGL *GetGL (); + + /* Additional methods added for enhanced usability */ + + int GetWidth (); + int GetHeight (); + + void SetColor (const DFBColor &color); + void SetColor (const DFBColor *color); + + void FillRectangle (const DFBRectangle &rect); + void DrawRectangle (const DFBRectangle &rect); + void DrawLine (const DFBRegion &line); + + IDirectFBSurface GetSubSurface (int x, + int y, + int width, + int height); + + void GetClip (DFBRegion *clip); + + int GetFramebufferOffset(); + + void ReleaseSource (); + void SetIndexTranslation (const int *indices, + int num_indices); + + void Read (void *ptr, + int pitch, + const DFBRectangle *rect = NULL); + + void Write (const void *ptr, + int pitch, + const DFBRectangle *rect = NULL); + + inline IDirectFBSurface& operator = (const IDirectFBSurface& other){ + return IPPAny<IDirectFBSurface, IDirectFBSurface_C>::operator =(other); + } + inline IDirectFBSurface& operator = (IDirectFBSurface_C* other){ + return IPPAny<IDirectFBSurface, IDirectFBSurface_C>::operator =(other); + } +}; + +#endif diff --git a/Source/++DFB/include/idirectfbvideoprovider.h b/Source/++DFB/include/idirectfbvideoprovider.h new file mode 100755 index 0000000..cbc83fb --- /dev/null +++ b/Source/++DFB/include/idirectfbvideoprovider.h @@ -0,0 +1,77 @@ +/* + (c) Copyright 2000-2002 convergence integrated media GmbH. + All rights reserved. + + Written by Denis Oliver Kropp <dok@convergence.de>, + Andreas Hundt <andi@convergence.de> and + Sven Neumann <sven@convergence.de> + + 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. +*/ + +#ifndef IDIRECTFBVIDEOPROVIDER_H +#define IDIRECTFBVIDEOPROVIDER_H + +#ifndef DFBPP_H +#error Please include ++dfb.h only. +#endif + +class IDirectFBVideoProvider : public IPPAny<IDirectFBVideoProvider, IDirectFBVideoProvider_C>{ +friend + class IDirectFB; +friend + class IDirectFBDataBuffer; + +public: + IDirectFBVideoProvider(IDirectFBVideoProvider_C* myptr=NULL):IPPAny<IDirectFBVideoProvider, IDirectFBVideoProvider_C>(myptr){} + + DFBVideoProviderCapabilities GetCapabilities (); + void GetSurfaceDescription (DFBSurfaceDescription *dsc); + void GetStreamDescription (DFBStreamDescription *dsc); + + void PlayTo (IDirectFBSurface *destination, + DFBRectangle *destination_rect = NULL, + DVFrameCallback callback = NULL, + void *ctx = NULL); + void Stop (); + DFBVideoProviderStatus GetStatus (); + + void SeekTo (double seconds); + double GetPos (); + double GetLength (); + + void GetColorAdjustment (DFBColorAdjustment *adj); + void SetColorAdjustment (DFBColorAdjustment &adj); + + void SendEvent (DFBEvent &evt); + + void SetPlaybackFlags (DFBVideoProviderPlaybackFlags flags); + + void SetSpeed (double multiplier); + double GetSpeed (); + + void SetVolume (float level); + float GetVolume (); + + inline IDirectFBVideoProvider& operator = (const IDirectFBVideoProvider& other){ + return IPPAny<IDirectFBVideoProvider, IDirectFBVideoProvider_C>::operator =(other); + } + inline IDirectFBVideoProvider& operator = (IDirectFBVideoProvider_C* other){ + return IPPAny<IDirectFBVideoProvider, IDirectFBVideoProvider_C>::operator =(other); + } +}; + +#endif diff --git a/Source/++DFB/include/idirectfbwindow.h b/Source/++DFB/include/idirectfbwindow.h new file mode 100755 index 0000000..ab7ff26 --- /dev/null +++ b/Source/++DFB/include/idirectfbwindow.h @@ -0,0 +1,117 @@ +/* + (c) Copyright 2000-2002 convergence integrated media GmbH. + All rights reserved. + + Written by Denis Oliver Kropp <dok@convergence.de>, + Andreas Hundt <andi@convergence.de> and + Sven Neumann <sven@convergence.de> + + 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. +*/ + +#ifndef IDIRECTFBWINDOW_H +#define IDIRECTFBWINDOW_H + +#ifndef DFBPP_H +#error Please include ++dfb.h only. +#endif + +class IDirectFBWindow :public IPPAny<IDirectFBWindow, IDirectFBWindow_C>{ +friend + class IDirectFBDisplayLayer; + +public: + IDirectFBWindow(IDirectFBWindow_C* myptr=NULL):IPPAny<IDirectFBWindow, IDirectFBWindow_C>(myptr){} + + DFBWindowID GetID (); + void GetPosition (int *x, + int *y); + void GetSize (int *width, + int *height); + + IDirectFBEventBuffer CreateEventBuffer (); + void AttachEventBuffer (IDirectFBEventBuffer *buffer); + void DetachEventBuffer (IDirectFBEventBuffer *buffer); + void EnableEvents (DFBWindowEventType mask); + void DisableEvents (DFBWindowEventType mask); + + IDirectFBSurface GetSurface (); + + void SetOptions (DFBWindowOptions options); + DFBWindowOptions GetOptions (); + void SetColorKey (u8 r, + u8 g, + u8 b); + void SetColorKeyIndex (unsigned int index); + void SetOpacity (u8 opacity); + void SetOpaqueRegion (int x1, + int y1, + int x2, + int y2); + u8 GetOpacity (); + void SetCursorShape (IDirectFBSurface *shape, + int hot_x, + int hot_y); + + void RequestFocus (); + void GrabKeyboard (); + void UngrabKeyboard (); + void GrabPointer (); + void UngrabPointer (); + void GrabKey (DFBInputDeviceKeySymbol symbol, + DFBInputDeviceModifierMask modifiers); + void UngrabKey (DFBInputDeviceKeySymbol symbol, + DFBInputDeviceModifierMask modifiers); + + void Move (int dx, + int dy); + void MoveTo (int x, + int y); + void Resize (int width, + int height); + + void SetStackingClass (DFBWindowStackingClass stacking_class); + void Raise (); + void Lower (); + void RaiseToTop (); + void LowerToBottom (); + void PutAtop (IDirectFBWindow *lower); + void PutBelow (IDirectFBWindow *upper); + + void Close (); + void Destroy (); + + void SetBounds (int x, + int y, + int width, + int height); + + void ResizeSurface (int width, + int height); +
+ void SetDstGeometry (DFBWindowGeometry *geometry);
+ void SetSrcGeometry (DFBWindowGeometry *geometry);
+
+ + inline IDirectFBWindow& operator = (const IDirectFBWindow& other){ + return IPPAny<IDirectFBWindow, IDirectFBWindow_C>::operator =(other); + } + inline IDirectFBWindow& operator = (IDirectFBWindow_C* other){ + return IPPAny<IDirectFBWindow, IDirectFBWindow_C>::operator =(other); + } +}; + +#endif |