summaryrefslogtreecommitdiff
path: root/Examples/GIFPlot/Perl5/simple/simple.i
blob: 457bc4c09f377e4656fb0761eb226198baf74685 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
/* This example shows a very simple interface wrapping a few 
   primitive declarations */

%module simple
%{
#include "gifplot.h"
%}

typedef unsigned char Pixel;

/* Here are a few useful functions */

ColorMap    *new_ColorMap(char *filename = 0);
void         delete_ColorMap(ColorMap *cmap);

FrameBuffer *new_FrameBuffer(unsigned int width, unsigned int height);
void         delete_FrameBuffer(FrameBuffer *frame);
void         FrameBuffer_clear(FrameBuffer *frame, Pixel color);
void         FrameBuffer_line(FrameBuffer *frame, int x1, int y1, int x2, int y2, Pixel color);
void         FrameBuffer_box(FrameBuffer *frame, int x1, int y1, int x2, int y2, Pixel color);
void         FrameBuffer_circle(FrameBuffer *frame, int x1, int y1, int radius, Pixel color);
int          FrameBuffer_writeGIF(FrameBuffer *f, ColorMap *c, char *filename);

/* And some useful constants */

#define BLACK   0
#define WHITE   1
#define RED     2
#define GREEN   3
#define BLUE    4
#define YELLOW  5
#define CYAN    6
#define MAGENTA 7