diff options
Diffstat (limited to 'package/kodi')
-rw-r--r-- | package/kodi/Makefile | 199 | ||||
-rw-r--r-- | package/kodi/files/xbmc.init | 30 | ||||
-rw-r--r-- | package/kodi/files/xbmc.postinst | 3 | ||||
-rw-r--r-- | package/kodi/patches/patch-Makefile_include_in | 10 | ||||
-rw-r--r-- | package/kodi/patches/patch-lib_cpluff_Makefile_am | 11 | ||||
-rw-r--r-- | package/kodi/patches/patch-lib_cpluff_autogen_sh | 10 | ||||
-rw-r--r-- | package/kodi/patches/patch-lib_cpluff_configure_ac | 11 | ||||
-rw-r--r-- | package/kodi/patches/patch-lib_cpluff_libcpluff_Makefile_am | 11 | ||||
-rw-r--r-- | package/kodi/patches/patch-m4_ax_python_devel_m4 | 11 | ||||
-rw-r--r-- | package/kodi/patches/patch-xbmc_Application_cpp | 41 | ||||
-rw-r--r-- | package/kodi/src/xbmc/powermanagement/linux/LinuxPowerSyscall.cpp | 56 | ||||
-rw-r--r-- | package/kodi/src/xbmc/powermanagement/linux/LinuxPowerSyscall.h | 45 |
12 files changed, 438 insertions, 0 deletions
diff --git a/package/kodi/Makefile b/package/kodi/Makefile new file mode 100644 index 000000000..ccc8025f6 --- /dev/null +++ b/package/kodi/Makefile @@ -0,0 +1,199 @@ +# This file is part of the OpenADK project. OpenADK is copyrighted +# material, please see the LICENCE file in the top-level directory. + +include $(ADK_TOPDIR)/rules.mk + +PKG_NAME:= kodi +PKG_VERSION:= 14.0alpha3 +PKG_RELEASE:= 1 +PKG_MD5SUM:= 76951db1b343b118e6b2a4e7411fabd9 +PKG_DESCR:= software media player +PKG_SECTION:= mm/video +PKG_DEPENDS:= boost python2 libstdcxx glibc-gconv +PKG_DEPENDS+= libglew mesalib libass libmpeg2 libmad libdbus +PKG_DEPENDS+= libjpeg-turbo libogg libvorbis libmodplug libcurl +PKG_DEPENDS+= libflac libopenssl libbz2 libtiff liblzo +PKG_DEPENDS+= yajl tinyxml libsqlite libpcrecpp libpng libncurses +PKG_DEPENDS+= libpcre libcdio libfreetype libsamplerate +PKG_DEPENDS+= taglib libjasper libmp3lame libmicrohttpd +PKG_DEPENDS+= libgpg-error libudev python2-mod-sqlite +PKG_DEPENDS+= libxslt libvorbisenc alsa-lib glib libglu librt +PKG_BUILDDEP:= boost python2 mesalib libglew libass ffmpeg +PKG_BUILDDEP+= libmpeg2 libmad libjpeg-turbo libogg libvorbis +PKG_BUILDDEP+= curl flac openssl bzip2 libtiff liblzo yajl +PKG_BUILDDEP+= tinyxml sqlite pcre libpng libcdio freetype +PKG_BUILDDEP+= libsamplerate taglib libjasper lame libmicrohttpd +PKG_BUILDDEP+= eudev alsa-lib glib glu libmodplug +PKG_BUILDDEP+= libgpg-error dbus libxslt libvorbis +PKG_BUILDDEP+= swig-host sdl-host sdl-image-host liblzo-host +PKG_BUILDDEP+= zip-host unzip-host +PKG_URL:= http://xbmc.org/ +PKG_SITES:= http://www.openadk.org/distfiles/ + +PKG_FLAVOURS_KODI:= WITH_SMB WITH_NFS WITH_SSH WITH_AVAHI WITH_CEC +PKG_FLAVOURS_KODI+= WITH_AFP WITH_WEBSERVER WITH_RTMP WITH_BLURAY + +PKGFD_WITH_SMB:= enable samba support +PKGFB_WITH_SMB:= samba +PKGFS_WITH_SMB:= samba-lib +PKGFD_WITH_NFS:= enable nfs support +PKGFB_WITH_NFS:= libnfs +PKGFS_WITH_NFS:= libnfs +PKGFD_WITH_SSH:= enable ssh support +PKGFB_WITH_SSH:= libssh +PKGFS_WITH_SSH:= libssh +PKGFD_WITH_AVAHI:= enable avahi support +PKGFB_WITH_AVAHI:= avahi +PKGFS_WITH_AVAHI:= libavahi +PKGFD_WITH_CEC:= enable cec support +PKGFB_WITH_CEC:= libcec +PKGFS_WITH_CEC:= libcec +PKGFD_WITH_AFP:= enable afp support +PKGFB_WITH_AFP:= afpfs-ng +PKGFS_WITH_AFP:= libafpclient +PKGFD_WITH_RTMP:= enable rtmp support +PKGFB_WITH_RTMP:= rtmpdump +PKGFS_WITH_RTMP:= librtmp +PKGFD_WITH_BLURAY:= enable bluray support +PKGFB_WITH_BLURAY:= libbluray +PKGFS_WITH_BLURAY:= libbluray +PKGFD_WITH_WEBSERVER:= enable internal webserver support + +PKG_DEPENDS_RASPBERRY_PI:= bcm2835-vc +PKG_BUILDDEP_RASPBERRY_PI:= bcm2835-vc +PKG_DEPENDS_SOLIDRUN_IMX6:= libfslvpuwrap gpu-viv-bin-mx6q +PKG_BUILDDEP_SOLIDRUN_IMX6:= libfslvpuwrap gpu-viv-bin-mx6q +PKG_DEPENDS_IBM_X40:= libsdl libsdl-image libxshmfence libx11 libxext libxt libsm libice +PKG_DEPENDS_VBOX_X86:= libsdl libsdl-image libxshmfence libx11 libxext libxt libsm libice +PKG_BUILDDEP_IBM_X40:= nasm-host sdl sdl-image +PKG_BUILDDEP_VBOX_X86:= nasm-host sdl sdl-image +PKG_SYSTEM_DEPENDS:= raspberry-pi ibm-x40 vbox-x86 solidrun-imx6 + +DIFF_IGNOREFILES:= configure missing depcomp install-sh INSTALL \ + aclocal.m4 config.h.in + +include $(ADK_TOPDIR)/mk/package.mk + +$(eval $(call PKG_template,KODI,kodi,$(PKG_VERSION)-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION})) + +HOST_CXXFLAGS+= $(HOST_CPPFLAGS) +XAKE_FLAGS+= V=1 TIXML_USE_STL=1 GCC_HONOUR_COPTS=s +TARGET_CPPFLAGS+= -I. -I./utils \ + -I$(STAGING_TARGET_DIR)/usr/include/boost-1_55 \ + -I$(STAGING_TARGET_DIR)/usr/include/afpfs-ng \ + -DTIXML_USE_STL=1 -DHAS_SIMPLEPM=1 -DLINUX + +ifeq ($(ADK_TARGET_SYSTEM_RASPBERRY_PI),y) +TARGET_CPPFLAGS+= -I$(STAGING_TARGET_DIR)/opt/vc/include \ + -I$(STAGING_TARGET_DIR)/opt/vc/include/interface/vcos/pthreads \ + -I$(STAGING_TARGET_DIR)/opt/vc/include/interface/vmcs_host/linux +TARGET_LDFLAGS+= -L$(STAGING_TARGET_DIR)/opt/vc/lib -lkhrn_static +endif + +AUTOTOOL_STYLE:= autoreconf +CONFIGURE_ENV+= DESTDIR='${WRKINST}' \ + TEXTUREPACKER_NATIVE_ROOT='$(STAGING_HOST_DIR)/usr' +CONFIGURE_ARGS+= --disable-optical-drive \ + --disable-optimizations \ + --disable-mysql \ + --disable-rsxs \ + --disable-projectm \ + --disable-crystalhd \ + --disable-mdnsembedded \ + --disable-libusb \ + --disable-libcap \ + --disable-joystick \ + --disable-dvdcss \ + --disable-debug \ + --disable-gtest \ + --disable-ccache \ + --disable-wayland \ + --disable-pulse \ + --disable-mid \ + --enable-alsa \ + --enable-libmp3lame \ + --enable-libvorbisenc \ + --enable-udev \ + --with-ffmpeg \ + --enable-external-libraries + +ifneq ($(ADK_PACKAGE_XBMC_WITH_BLURAY),) +CONFIGURE_ARGS+= --enable-libbluray +else +CONFIGURE_ARGS+= --disable-libbluray +endif +ifneq ($(ADK_PACKAGE_XBMC_WITH_AFP),) +CONFIGURE_ARGS+= --enable-afpclient +else +CONFIGURE_ARGS+= --disable-afpclient +endif +ifneq ($(ADK_PACKAGE_XBMC_WITH_SMB),) +CONFIGURE_ARGS+= --enable-samba +else +CONFIGURE_ARGS+= --disable-samba +endif +ifneq ($(ADK_PACKAGE_XBMC_WITH_SSH),) +CONFIGURE_ARGS+= --enable-ssh +else +CONFIGURE_ARGS+= --disable-ssh +endif +ifneq ($(ADK_PACKAGE_XBMC_WITH_NFS),) +CONFIGURE_ARGS+= --enable-nfs +else +CONFIGURE_ARGS+= --disable-nfs +endif +ifneq ($(ADK_PACKAGE_XBMC_WITH_CEC),) +CONFIGURE_ARGS+= --enable-libcec +else +CONFIGURE_ARGS+= --disable-libcec +endif +ifneq ($(ADK_PACKAGE_XBMC_WITH_RTMP),) +CONFIGURE_ARGS+= --enable-rtmp +else +CONFIGURE_ARGS+= --disable-rtmp +endif +ifneq ($(ADK_PACKAGE_XBMC_WITH_AVAHI),) +CONFIGURE_ARGS+= --enable-avahi +else +CONFIGURE_ARGS+= --disable-avahi +endif +ifneq ($(ADK_PACKAGE_XBMC_WITH_WEBSERVER),) +CONFIGURE_ARGS+= --enable-webserver +else +CONFIGURE_ARGS+= --disable-webserver +endif + +ifeq ($(ADK_TARGET_SYSTEM_RASPBERRY_PI),y) +CONFIGURE_ARGS+= --with-platform=raspberry-pi \ + --enable-player=omxplayer \ + --enable-gles \ + --disable-sdl \ + --disable-x11 +else +ifeq ($(ADK_TARGET_SYSTEM_SOLIDRUN_IMX6),y) +CONFIGURE_ARGS+= --disable-x11 \ + --disable-sdl \ + --disable-gles \ + --enable-neon \ + --enable-codec=imxvpu +else +CONFIGURE_ARGS+= --enable-x11 \ + --enable-sdl +endif +endif + +pre-configure: + (cd $(WRKBUILD)/lib/cpluff && env PATH=$(AUTOTOOL_PATH) ./autogen.sh) + +kodi-install: + $(INSTALL_DIR) $(IDIR_KODI)/usr/lib/xbmc/addons + $(CP) $(WRKINST)/usr/lib/xbmc/* \ + $(IDIR_KODI)/usr/lib/xbmc + $(INSTALL_DIR) $(IDIR_KODI)/usr/share/xbmc + $(CP) $(WRKINST)/usr/share/xbmc/* \ + $(IDIR_KODI)/usr/share/xbmc + $(INSTALL_DIR) $(IDIR_KODI)/usr/bin + $(INSTALL_BIN) $(WRKINST)/usr/bin/xbmc \ + $(IDIR_KODI)/usr/bin + +include ${ADK_TOPDIR}/mk/pkg-bottom.mk diff --git a/package/kodi/files/xbmc.init b/package/kodi/files/xbmc.init new file mode 100644 index 000000000..bbe65c1c2 --- /dev/null +++ b/package/kodi/files/xbmc.init @@ -0,0 +1,30 @@ +#!/bin/sh +#PKG xbmc +#INIT 95 + +. /etc/rc.conf + +case $1 in +autostop) ;; +autostart) + test x"${xbmc:-NO}" = x"NO" && exit 0 + test x"$xbmc" = x"DAEMON" && test -x /bin/mksh && exec mksh -T- $0 start + exec sh $0 start + ;; +start) + export LD_LIBRARY_PATH=/opt/vc/lib + xbmc & + ;; +stop) + kill $(pgrep -f /usr/lib/xbmc/xbmc.bin) + ;; +restart) + sh $0 stop + sh $0 start + ;; +*) + echo "Usage: $0 {start | stop | restart}" + exit 1 + ;; +esac +exit $? diff --git a/package/kodi/files/xbmc.postinst b/package/kodi/files/xbmc.postinst new file mode 100644 index 000000000..45274da68 --- /dev/null +++ b/package/kodi/files/xbmc.postinst @@ -0,0 +1,3 @@ +#!/bin/sh +. $IPKG_INSTROOT/etc/functions.sh +add_rcconf xbmc NO diff --git a/package/kodi/patches/patch-Makefile_include_in b/package/kodi/patches/patch-Makefile_include_in new file mode 100644 index 000000000..d73f62de2 --- /dev/null +++ b/package/kodi/patches/patch-Makefile_include_in @@ -0,0 +1,10 @@ +--- xbmc-13.1.orig/Makefile.include.in 2014-06-08 08:40:24.000000000 +0200 ++++ xbmc-13.1/Makefile.include.in 2014-06-11 13:17:49.354722974 +0200 +@@ -37,6 +37,7 @@ CFLAGS+=@CFLAGS@ + CFLAGS_FOR_BUILD+=@CFLAGS_FOR_BUILD@ + LDFLAGS+=@LDFLAGS@ + LDFLAGS_FOR_BUILD+=@LDFLAGS_FOR_BUILD@ ++INCLUDES+=@CPPFLAGS@ + INCLUDES+=-I@abs_top_srcdir@/lib + INCLUDES+=-I@abs_top_srcdir@/xbmc + INCLUDES+=-I@abs_top_srcdir@/addons/library.xbmc.gui diff --git a/package/kodi/patches/patch-lib_cpluff_Makefile_am b/package/kodi/patches/patch-lib_cpluff_Makefile_am new file mode 100644 index 000000000..fb70c6993 --- /dev/null +++ b/package/kodi/patches/patch-lib_cpluff_Makefile_am @@ -0,0 +1,11 @@ +--- xbmc-13.0rc1.orig/lib/cpluff/Makefile.am 2014-04-30 15:43:53.000000000 +0200 ++++ xbmc-13.0rc1/lib/cpluff/Makefile.am 2014-05-05 13:03:15.329450196 +0200 +@@ -6,7 +6,7 @@ + + ACLOCAL_AMFLAGS = -I m4 + +-SUBDIRS = libcpluff loader console po test docsrc doc ++SUBDIRS = libcpluff loader console test docsrc doc + DIST_SUBDIRS = $(SUBDIRS) examples + + EXTRA_DIST = COPYRIGHT.txt INSTALL.txt ChangeLog.txt Roadmap.txt autogen.sh plugin.xsd diff --git a/package/kodi/patches/patch-lib_cpluff_autogen_sh b/package/kodi/patches/patch-lib_cpluff_autogen_sh new file mode 100644 index 000000000..24a84ea38 --- /dev/null +++ b/package/kodi/patches/patch-lib_cpluff_autogen_sh @@ -0,0 +1,10 @@ +--- xbmc-13.0rc1.orig/lib/cpluff/autogen.sh 2014-04-30 15:43:53.000000000 +0200 ++++ xbmc-13.0rc1/lib/cpluff/autogen.sh 2014-05-05 12:15:29.307227206 +0200 +@@ -15,7 +15,6 @@ fi + + # Generate files in top level directory + cd "$basedir" +-autopoint + rm -f ABOUT-NLS + test -d auxliary || mkdir auxliary + libtoolize --automake -f diff --git a/package/kodi/patches/patch-lib_cpluff_configure_ac b/package/kodi/patches/patch-lib_cpluff_configure_ac new file mode 100644 index 000000000..d38754bfd --- /dev/null +++ b/package/kodi/patches/patch-lib_cpluff_configure_ac @@ -0,0 +1,11 @@ +--- xbmc-13.0rc1.orig/lib/cpluff/configure.ac 2014-04-30 15:43:53.000000000 +0200 ++++ xbmc-13.0rc1/lib/cpluff/configure.ac 2014-05-05 13:03:32.437577723 +0200 +@@ -46,8 +46,6 @@ AC_SUBST([CP_CXX_LIB_VERSION]) + # ----------------------- + AM_INIT_AUTOMAKE([foreign]) + m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])]) +-AM_GNU_GETTEXT([external]) +-AM_GNU_GETTEXT_VERSION([0.16.1]) + + # C/C++ compiler settings + # ------------------- diff --git a/package/kodi/patches/patch-lib_cpluff_libcpluff_Makefile_am b/package/kodi/patches/patch-lib_cpluff_libcpluff_Makefile_am new file mode 100644 index 000000000..ffa9a1529 --- /dev/null +++ b/package/kodi/patches/patch-lib_cpluff_libcpluff_Makefile_am @@ -0,0 +1,11 @@ +--- xbmc-13.0rc1.orig/lib/cpluff/libcpluff/Makefile.am 2014-04-30 15:43:53.000000000 +0200 ++++ xbmc-13.0rc1/lib/cpluff/libcpluff/Makefile.am 2014-05-05 13:53:11.766461900 +0200 +@@ -6,7 +6,7 @@ + + SUBDIRS = docsrc + +-LIBS = @LIBS_LIBCPLUFF@ @LTLIBINTL@ @LIBS@ ++LIBS = @LIBS_LIBCPLUFF@ @LIBS@ + + CPPFLAGS = @CPPFLAGS@ + CPPFLAGS += -I. -DCP_C_API=CP_EXPORT -DCP_HOST="\"$(host)\"" -DCP_DATADIR="\"$(datadir)\"" diff --git a/package/kodi/patches/patch-m4_ax_python_devel_m4 b/package/kodi/patches/patch-m4_ax_python_devel_m4 new file mode 100644 index 000000000..ded81dbd5 --- /dev/null +++ b/package/kodi/patches/patch-m4_ax_python_devel_m4 @@ -0,0 +1,11 @@ +--- xbmc-13.0rc1.orig/m4/ax_python_devel.m4 2014-04-30 15:43:58.000000000 +0200 ++++ xbmc-13.0rc1/m4/ax_python_devel.m4 2014-05-02 08:03:10.000000000 +0200 +@@ -298,7 +298,7 @@ EOD` + # save current global flags + ac_save_LIBS="$LIBS" + ac_save_CPPFLAGS="$CPPFLAGS" +- LIBS="$ac_save_LIBS $PYTHON_LDFLAGS $PYTHON_EXTRA_LDFLAGS $PYTHON_EXTRA_LIBS" ++ LIBS="$ac_save_LIBS $PYTHON_LDFLAGS" + CPPFLAGS="$ac_save_CPPFLAGS $PYTHON_CPPFLAGS" + AC_LANG_PUSH([C]) + AC_LINK_IFELSE([ diff --git a/package/kodi/patches/patch-xbmc_Application_cpp b/package/kodi/patches/patch-xbmc_Application_cpp new file mode 100644 index 000000000..906ba1222 --- /dev/null +++ b/package/kodi/patches/patch-xbmc_Application_cpp @@ -0,0 +1,41 @@ +--- xbmc-13.1.orig/xbmc/Application.cpp 2014-06-08 08:40:26.000000000 +0200 ++++ xbmc-13.1/xbmc/Application.cpp 2014-06-08 09:42:40.232780377 +0200 +@@ -682,7 +682,7 @@ bool CApplication::Create() + + if (!CLog::Init(CSpecialProtocol::TranslatePath(g_advancedSettings.m_logFolder).c_str())) + { +- fprintf(stderr,"Could not init logging classes. Permission errors on ~/.xbmc (%s)\n", ++ fprintf(stderr,"Could not init logging classes. Permission errors on %s\n", + CSpecialProtocol::TranslatePath(g_advancedSettings.m_logFolder).c_str()); + return false; + } +@@ -1085,10 +1085,13 @@ bool CApplication::InitDirectoriesLinux( + userName = "root"; + + CStdString userHome; ++ userHome = "/data/xbmc"; ++/* + if (getenv("HOME")) + userHome = getenv("HOME"); + else + userHome = "/root"; ++*/ + + CStdString xbmcBinPath, xbmcPath; + CUtil::GetHomePath(xbmcBinPath, "XBMC_BIN_HOME"); +@@ -1120,11 +1123,11 @@ bool CApplication::InitDirectoriesLinux( + // map our special drives + CSpecialProtocol::SetXBMCBinPath(xbmcBinPath); + CSpecialProtocol::SetXBMCPath(xbmcPath); +- CSpecialProtocol::SetHomePath(userHome + "/.xbmc"); +- CSpecialProtocol::SetMasterProfilePath(userHome + "/.xbmc/userdata"); ++ CSpecialProtocol::SetHomePath(userHome); ++ CSpecialProtocol::SetMasterProfilePath(userHome + "/userdata"); + +- CStdString strTempPath = userHome; +- strTempPath = URIUtils::AddFileToFolder(strTempPath, ".xbmc/temp"); ++ CStdString strTempPath = "/tmp"; ++ strTempPath = URIUtils::AddFileToFolder(strTempPath, "/xbmc"); + if (getenv("XBMC_TEMP")) + strTempPath = getenv("XBMC_TEMP"); + CSpecialProtocol::SetTempPath(strTempPath); diff --git a/package/kodi/src/xbmc/powermanagement/linux/LinuxPowerSyscall.cpp b/package/kodi/src/xbmc/powermanagement/linux/LinuxPowerSyscall.cpp new file mode 100644 index 000000000..4b8b25efb --- /dev/null +++ b/package/kodi/src/xbmc/powermanagement/linux/LinuxPowerSyscall.cpp @@ -0,0 +1,56 @@ +/* + * Copyright (C) 2014 Team XBMC + * http://www.xbmc.org + * + * This Program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2, or (at your option) + * any later version. + * + * This Program 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 General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with XBMC; see the file COPYING. If not, see + * <http://www.gnu.org/licenses/>. + * + */ + +#if defined (_LINUX) + +#include <stdlib.h> +#include "LinuxPowerSyscall.h" +#include "utils/log.h" + +CLinuxPowerSyscall::CLinuxPowerSyscall() +{ + CLog::Log(LOGINFO, "Selected LinuxPower as PowerSyscall"); +} + +CLinuxPowerSyscall::~CLinuxPowerSyscall() +{ } + +bool CLinuxPowerSyscall::Powerdown() +{ + system("/sbin/poweroff -F"); + return 0; +} + +bool CLinuxPowerSyscall::Reboot() +{ + system("/sbin/reboot -F"); + return 0; +} + +int CLinuxPowerSyscall::BatteryLevel(void) +{ } + +bool CLinuxPowerSyscall::PumpPowerEvents(IPowerEventsCallback *callback) +{ + return true; +} + +#endif + diff --git a/package/kodi/src/xbmc/powermanagement/linux/LinuxPowerSyscall.h b/package/kodi/src/xbmc/powermanagement/linux/LinuxPowerSyscall.h new file mode 100644 index 000000000..959a8119b --- /dev/null +++ b/package/kodi/src/xbmc/powermanagement/linux/LinuxPowerSyscall.h @@ -0,0 +1,45 @@ +#pragma once +/* + * Copyright (C) 2014 Team XBMC + * http://www.xbmc.org + * + * This Program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2, or (at your option) + * any later version. + * + * This Program 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 General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with XBMC; see the file COPYING. If not, see + * <http://www.gnu.org/licenses/>. + * + */ + +#if defined (_LINUX) +#include "powermanagement/IPowerSyscall.h" + +class CLinuxPowerSyscall : public CPowerSyscallWithoutEvents +{ +public: + CLinuxPowerSyscall(); + ~CLinuxPowerSyscall(); + + virtual bool Powerdown(); + virtual bool Suspend(void) { return false; } + virtual bool Hibernate(void) { return false; } + virtual bool Reboot(); + + virtual bool CanPowerdown(void) { return true; } + virtual bool CanSuspend(void) { return false; } + virtual bool CanHibernate(void) { return false; } + virtual bool CanReboot(void) { return true; } + virtual int BatteryLevel(void); + + virtual bool PumpPowerEvents(IPowerEventsCallback *callback); +}; +#endif + |