===== setgraphbufsize =====
====Syntax of setgraphbufsize ====
#include
unsigned setgraphbufsize(unsigned bufsize);
==== Description of setgraphbufsize ====
Some of the graphics routines (such as floodfill) use a memory buffer
that is allocated when initgraph is called and released when closegraph
is called. The default size of this buffer, allocated by _graphgetmem, is
4,096 bytes.
You might want to make this buffer smaller (to save memory space) or
bigger (if, for example, a call to floodfill produces error -7: Out of
flood memory).
setgraphbufsize tells initgraph how much memory to allocate for this
internal graphics buffer when it calls _graphgetmem.
You must call setgraphbufsize before calling initgraph. Once initgraph
has been called, all calls to setgraphbufsize are ignored until after the
next call to closegraph.
==== Example of setgraphbufsize ====
/* setgraphbufsize example */
#include
#include
#include
#include
#define BUFSIZE 1000 /* internal graphics buffer size */
int main(void)
{
/* request autodetection */
int gdriver = DETECT, gmode, errorcode;
int x, y, oldsize;
char msg[80];
/* _set size of internal graphics buffer before calling initgraph */
oldsize = setgraphbufsize(BUFSIZE);
/* initialize graphics and local variables */
initgraph(&gdriver, &gmode, "");
/* read result of initialization */
errorcode = graphresult();
if (errorcode != grOk) { /* an error occurred */
printf("Graphics error: %s\n", grapherrormsg(errorcode));
printf("Press any key to halt:");
getch();
exit(1); /* terminate with an error code */
}
x = getmaxx() / 2;
y = getmaxy() / 2;
/* output some messages */
sprintf(msg, "Graphics buffer size: %d", BUFSIZE);
settextjustify(CENTER_TEXT, CENTER_TEXT);
outtextxy(x, y, msg);
sprintf(msg, "Old graphics buffer size: %d", oldsize);
outtextxy(x, y+textheight("W"), msg);
/* clean up */
getch();
closegraph();
return 0;
}
==== See also ====
[[closegraph]]
[[initgraph]]
[[sector]]
===== output of setgraphbufsize example =====
no output of example at the moment
do not hesitate and add it...