7 int xd3_main_cmdline (int ARGC, char **ARGV);
10 %cstring_input_binary(const char *input, unsigned int input_size);
11 %cstring_input_binary(const char *source, unsigned int source_size);
13 %define %max_output_withsize(TYPEMAP, SIZE, MAXSIZE)
14 %typemap(in) MAXSIZE (unsigned int alloc_size) {
15 $1 = alloc_size = PyInt_AsLong(obj2);
17 %typemap(in,numinputs=0) (TYPEMAP, SIZE) {
19 %typemap(check) (TYPEMAP, SIZE) {
20 // alloc_size input is #7th position in xd3_xxcode_memory()
21 $1 = malloc(alloc_size7);
24 %typemap(argout,fragment="t_output_helper") (TYPEMAP, SIZE) {
27 // alloc_size7 now carries actual size
28 o = PyString_FromStringAndSize($1,alloc_size7);
29 $result = t_output_helper($result,o);
31 $result = t_output_helper($result,Py_None);
35 %typemap(default) int flags {
40 %max_output_withsize(char *output_buf, unsigned int *output_size, unsigned int max_output);
42 int xd3_encode_memory (const uint8_t *input,
44 const uint8_t *source,
46 uint8_t *output_buffer,
51 int xd3_decode_memory (const uint8_t *input,
53 const uint8_t *source,
60 int xd3_main_cmdline (int ARGC, char **ARGV);
62 /* Is this the right way? */