0.014 release
[imager-screenshot.git] / Screenshot.xs
1 #include "EXTERN.h"
2 #include "perl.h"
3 #include "XSUB.h"
4 #include "ppport.h"
5 #include "imext.h"
6 #include "imperl.h"
7 #include "imss.h"
8 #ifdef SS_WIN32
9 #include "svwin32.h"
10 #endif
11
12 DEFINE_IMAGER_CALLBACKS;
13
14 #define imss__x11_open imss_x11_open
15
16 MODULE = Imager::Screenshot  PACKAGE = Imager::Screenshot PREFIX = imss
17
18 PROTOTYPES: DISABLE
19
20 #ifdef SS_WIN32
21
22 Imager::ImgRaw
23 imss_win32(hwnd, include_decor = 0, left = 0, top = 0, right = 0, bottom = 0, monitor = 0)
24         SSHWND hwnd
25         int include_decor
26         int left
27         int top
28         int right
29         int bottom
30         int monitor
31
32 #endif
33
34 #ifdef SS_X11
35
36 Imager::ImgRaw
37 imss_x11(display, window_id, left = 0, top = 0, right = 0, bottom = 0, direct = 0)
38         unsigned long display
39         int window_id
40         int left
41         int top
42         int right
43         int bottom
44         int direct
45
46 unsigned long
47 imss_x11_open(display_name = NULL)
48         const char *display_name
49
50 void
51 imss_x11_close(display)
52         unsigned long display
53
54 #endif
55
56 #ifdef SS_DARWIN
57
58 Imager::ImgRaw
59 imss_darwin(left = 0, top = 0, right = 0, bottom = 0)
60         int left
61         int top
62         int right
63         int bottom
64
65 #endif
66
67 BOOT:
68         PERL_INITIALIZE_IMAGER_CALLBACKS;