The great merge

git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@4141 626c5289-ae23-0410-ae9c-e8d60b6d4f22
This commit is contained in:
Dave Beazley 2002-11-30 22:01:28 +00:00
commit 516036631c
1508 changed files with 125983 additions and 44037 deletions

View file

@ -0,0 +1,2 @@
# see top-level Makefile.in
simple

View file

@ -0,0 +1,4 @@
simple_wrap.c
*.so
*.dll
*.gif

View file

@ -0,0 +1,24 @@
TOP = ../../..
SWIG = $(TOP)/../swig
SWIGOPT =
SRCS =
TARGET = simple
INTERFACE = simple.i
LIBS = -L../.. -lgifplot
INCLUDES = -I../../Include
all::
$(MAKE) -f $(TOP)/Makefile SRCS='$(SRCS)' SWIG='$(SWIG)' \
INCLUDES='$(INCLUDES)' LIBS='$(LIBS)' SWIGOPT='$(SWIGOPT)' \
TARGET='$(TARGET)' INTERFACE='$(INTERFACE)' pike
static::
$(MAKE) -f $(TOP)/Makefile SRCS='$(SRCS)' SWIG='$(SWIG)' \
INCLUDES='$(INCLUDES)' LIBS='$(LIBS)' SWIGOPT='$(SWIGOPT)' \
TARGET='mypike' INTERFACE='$(INTERFACE)' pike_static
clean::
$(MAKE) -f $(TOP)/Makefile pike_clean
rm -f *.gif
check: all

View file

@ -0,0 +1,5 @@
This is a very minimalistic example in which just a few functions
and constants from library are wrapped and used to draw some simple
shapes. The script 'runme.pike' runs the example.

View file

@ -0,0 +1,30 @@
int main()
{
// Draw some simple shapes
write("Drawing some basic shapes\n");
.simple.ColorMap cmap = .simple.new_ColorMap();
.simple.FrameBuffer f = .simple.new_FrameBuffer(400, 400);
// Clear the picture
.simple.FrameBuffer_clear(f, .simple.BLACK);
// Make a red box
.simple.FrameBuffer_box(f, 40, 40, 200, 200, .simple.RED);
// Make a blue circle
.simple.FrameBuffer_circle(f, 200, 200, 40, .simple.BLUE);
// Make green line
.simple.FrameBuffer_line(f, 10, 390, 390, 200, .simple.GREEN);
// Write an image out to disk
.simple.FrameBuffer_writeGIF(f, cmap, "image.gif");
write("Wrote image.gif\n");
.simple.delete_FrameBuffer(f);
.simple.delete_ColorMap(cmap);
return 0;
}

View file

@ -0,0 +1,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