summaryrefslogtreecommitdiff
path: root/library/custom-ramses.h
Unidiff
Diffstat (limited to 'library/custom-ramses.h') (more/less context) (ignore whitespace changes)
-rw-r--r--library/custom-ramses.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/library/custom-ramses.h b/library/custom-ramses.h
index b841a66..9104931 100644
--- a/library/custom-ramses.h
+++ b/library/custom-ramses.h
@@ -1,68 +1,69 @@
1/********************************************************************** 1/**********************************************************************
2** Copyright (C) 2000-2002 Trolltech AS. All rights reserved. 2** Copyright (C) 2000-2002 Trolltech AS. All rights reserved.
3** 3**
4** This file is part of the Qtopia Environment. 4** This file is part of the Qtopia Environment.
5** 5**
6** This file may be distributed and/or modified under the terms of the 6** This file may be distributed and/or modified under the terms of the
7** GNU General Public License version 2 as published by the Free Software 7** GNU General Public License version 2 as published by the Free Software
8** Foundation and appearing in the file LICENSE.GPL included in the 8** Foundation and appearing in the file LICENSE.GPL included in the
9** packaging of this file. 9** packaging of this file.
10** 10**
11** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE 11** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
12** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. 12** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
13** 13**
14** See http://www.trolltech.com/gpl/ for GPL licensing information. 14** See http://www.trolltech.com/gpl/ for GPL licensing information.
15** 15**
16** Contact info@trolltech.com if any conditions of this licensing are 16** Contact info@trolltech.com if any conditions of this licensing are
17** not clear to you. 17** not clear to you.
18** 18**
19**********************************************************************/ 19**********************************************************************/
20 20
21#define QPE_NEED_CALIBRATION
21#define QPE_HAVE_TOGGLELIGHT 22#define QPE_HAVE_TOGGLELIGHT
22#define QPE_STARTMENU 23#define QPE_STARTMENU
23 24
24#include <unistd.h> 25#include <unistd.h>
25#include <stdio.h> 26#include <stdio.h>
26#include <signal.h> 27#include <signal.h>
27#include <fcntl.h> 28#include <fcntl.h>
28#include <sys/ioctl.h> 29#include <sys/ioctl.h>
29 30
30#define QPE_HAVE_MEMALERTER 31#define QPE_HAVE_MEMALERTER
31 32
32#define QPE_MEMALERTER_IMPL \ 33#define QPE_MEMALERTER_IMPL \
33static void sig_handler(int sig) \ 34static void sig_handler(int sig) \
34{ \ 35{ \
35 switch (sig) { \ 36 switch (sig) { \
36 case SIGHUP: \ 37 case SIGHUP: \
37 memstate = VeryLow; \ 38 memstate = VeryLow; \
38 break; \ 39 break; \
39 case SIGUSR1: \ 40 case SIGUSR1: \
40 memstate = Normal; \ 41 memstate = Normal; \
41 break; \ 42 break; \
42 case SIGUSR2: \ 43 case SIGUSR2: \
43 memstate = Low; \ 44 memstate = Low; \
44 break; \ 45 break; \
45 } \ 46 } \
46} \ 47} \
47static void initMemalerter() \ 48static void initMemalerter() \
48{ \ 49{ \
49 struct sigaction sa; \ 50 struct sigaction sa; \
50 memset(&sa, '\0', sizeof sa); \ 51 memset(&sa, '\0', sizeof sa); \
51 sa.sa_handler = sig_handler; \ 52 sa.sa_handler = sig_handler; \
52 sa.sa_flags = SA_RESTART; \ 53 sa.sa_flags = SA_RESTART; \
53 if (sigaction(SIGHUP, &sa, NULL) < 0) { \ 54 if (sigaction(SIGHUP, &sa, NULL) < 0) { \
54 return; \ 55 return; \
55 } \ 56 } \
56 if (sigaction(SIGUSR1, &sa, NULL) < 0) { \ 57 if (sigaction(SIGUSR1, &sa, NULL) < 0) { \
57 return; \ 58 return; \
58 } \ 59 } \
59 if (sigaction(SIGUSR2, &sa, NULL) < 0) { \ 60 if (sigaction(SIGUSR2, &sa, NULL) < 0) { \
60 return; \ 61 return; \
61 } \ 62 } \
62 FILE *fo = fopen("/proc/sys/vm/freepg_signal_proc", "w"); \ 63 FILE *fo = fopen("/proc/sys/vm/freepg_signal_proc", "w"); \
63 \ 64 \
64 if (!fo) \ 65 if (!fo) \
65 return; \ 66 return; \
66 fprintf(fo, "qpe\n"); \ 67 fprintf(fo, "qpe\n"); \
67 fclose(fo); \ 68 fclose(fo); \
68} 69}