]>
Commit | Line | Data |
---|---|---|
b00687b2 TC |
1 | #include "EXTERN.h" |
2 | #include "perl.h" | |
3 | #include "XSUB.h" | |
4 | #include "imext.h" | |
5 | #include "imperl.h" | |
6 | #include "imicon.h" | |
7 | ||
8 | DEFINE_IMAGER_CALLBACKS; | |
9 | ||
10 | MODULE = Imager::File::ICO PACKAGE = Imager::File::ICO | |
11 | ||
12 | PROTOTYPES: DISABLE | |
13 | ||
14 | Imager::ImgRaw | |
15 | i_readico_single(ig, index) | |
16 | Imager::IO ig | |
17 | int index | |
18 | ||
19 | void | |
20 | i_readico_multi(ig) | |
21 | Imager::IO ig | |
22 | PREINIT: | |
23 | i_img **imgs; | |
24 | int count; | |
25 | int i; | |
26 | PPCODE: | |
27 | imgs = i_readico_multi(ig, &count); | |
28 | if (imgs) { | |
29 | EXTEND(SP, count); | |
30 | for (i = 0; i < count; ++i) { | |
31 | SV *sv = sv_newmortal(); | |
32 | sv_setref_pv(sv, "Imager::ImgRaw", (void *)imgs[i]); | |
33 | PUSHs(sv); | |
34 | } | |
35 | myfree(imgs); | |
36 | } | |
37 | ||
38 | ||
39 | BOOT: | |
40 | PERL_INITIALIZE_IMAGER_CALLBACKS; |