mirror of
https://github.com/gryf/wmaker.git
synced 2025-12-20 21:08:08 +01:00
Change to the linux kernel coding style
for arq in `git ls-files *.c`; do
echo $arq;
indent -linux -l115 $arq;
done
The different line break at 115 columns is because
I use a widescreen monitor :-)
This commit is contained in:
@@ -1,5 +1,4 @@
|
||||
|
||||
|
||||
#include <X11/Xlib.h>
|
||||
#include "wraster.h"
|
||||
#include <stdio.h>
|
||||
@@ -10,7 +9,6 @@
|
||||
#include <time.h>
|
||||
#endif
|
||||
|
||||
|
||||
Display *dpy;
|
||||
Window win;
|
||||
RContext *ctx;
|
||||
@@ -18,16 +16,14 @@ RImage *imgh, *imgv, *imgd;
|
||||
Pixmap pix;
|
||||
char *ProgName;
|
||||
|
||||
|
||||
void
|
||||
print_help()
|
||||
void print_help()
|
||||
{
|
||||
printf("usage: %s [-options] color1 [color2 ...]\n", ProgName);
|
||||
puts("options:");
|
||||
puts(" -m match colors");
|
||||
puts(" -d dither colors (default)");
|
||||
puts(" -c <cpc> colors per channel to use");
|
||||
puts(" -v <vis-id> visual id to use");
|
||||
printf("usage: %s [-options] color1 [color2 ...]\n", ProgName);
|
||||
puts("options:");
|
||||
puts(" -m match colors");
|
||||
puts(" -d dither colors (default)");
|
||||
puts(" -c <cpc> colors per channel to use");
|
||||
puts(" -v <vis-id> visual id to use");
|
||||
}
|
||||
|
||||
#ifdef BENCH
|
||||
@@ -35,179 +31,175 @@ print_help()
|
||||
#endif
|
||||
int main(int argc, char **argv)
|
||||
{
|
||||
RContextAttributes attr;
|
||||
RColor **colors = NULL;
|
||||
int i, rmode = RDitheredRendering, ncolors = 0, cpc = 4;
|
||||
char **color_name;
|
||||
XColor color;
|
||||
XSetWindowAttributes val;
|
||||
int visualID = -1;
|
||||
RContextAttributes attr;
|
||||
RColor **colors = NULL;
|
||||
int i, rmode = RDitheredRendering, ncolors = 0, cpc = 4;
|
||||
char **color_name;
|
||||
XColor color;
|
||||
XSetWindowAttributes val;
|
||||
int visualID = -1;
|
||||
#ifdef BENCH
|
||||
double t1, t2, total, t, rt;
|
||||
struct timeval timev;
|
||||
double t1, t2, total, t, rt;
|
||||
struct timeval timev;
|
||||
#endif
|
||||
|
||||
ProgName = strrchr(argv[0],'/');
|
||||
if (!ProgName)
|
||||
ProgName = argv[0];
|
||||
else
|
||||
ProgName++;
|
||||
ProgName = strrchr(argv[0], '/');
|
||||
if (!ProgName)
|
||||
ProgName = argv[0];
|
||||
else
|
||||
ProgName++;
|
||||
|
||||
color_name = (char **) malloc(sizeof(char*) * argc);
|
||||
if(color_name == NULL) {
|
||||
fprintf(stderr, "Cannot allocate memory!\n");
|
||||
exit(1);
|
||||
}
|
||||
color_name = (char **)malloc(sizeof(char *) * argc);
|
||||
if (color_name == NULL) {
|
||||
fprintf(stderr, "Cannot allocate memory!\n");
|
||||
exit(1);
|
||||
}
|
||||
|
||||
if (argc>1) {
|
||||
for (i=1; i<argc; i++) {
|
||||
if (strcmp(argv[i], "-m")==0) {
|
||||
rmode = RBestMatchRendering;
|
||||
} else if (strcmp(argv[i], "-d")==0) {
|
||||
rmode = RDitheredRendering;
|
||||
} else if (strcmp(argv[i], "-c")==0) {
|
||||
i++;
|
||||
if (i>=argc) {
|
||||
fprintf(stderr, "too few arguments for %s\n", argv[i-1]);
|
||||
exit(0);
|
||||
}
|
||||
if (sscanf(argv[i], "%i", &cpc)!=1) {
|
||||
fprintf(stderr, "bad value for colors per channel: \"%s\"\n", argv[i]);
|
||||
exit(0);
|
||||
}
|
||||
} else if (strcmp(argv[i], "-v")==0) {
|
||||
i++;
|
||||
if (i>=argc) {
|
||||
fprintf(stderr, "too few arguments for %s\n", argv[i-1]);
|
||||
exit(0);
|
||||
}
|
||||
if (sscanf(argv[i], "%i", &visualID)!=1) {
|
||||
fprintf(stderr, "bad value for visual ID: \"%s\"\n", argv[i]);
|
||||
exit(0);
|
||||
}
|
||||
} else if (argv[i][0] != '-') {
|
||||
color_name[ncolors++] = argv[i];
|
||||
} else {
|
||||
print_help();
|
||||
exit(1);
|
||||
}
|
||||
}
|
||||
}
|
||||
if (argc > 1) {
|
||||
for (i = 1; i < argc; i++) {
|
||||
if (strcmp(argv[i], "-m") == 0) {
|
||||
rmode = RBestMatchRendering;
|
||||
} else if (strcmp(argv[i], "-d") == 0) {
|
||||
rmode = RDitheredRendering;
|
||||
} else if (strcmp(argv[i], "-c") == 0) {
|
||||
i++;
|
||||
if (i >= argc) {
|
||||
fprintf(stderr, "too few arguments for %s\n", argv[i - 1]);
|
||||
exit(0);
|
||||
}
|
||||
if (sscanf(argv[i], "%i", &cpc) != 1) {
|
||||
fprintf(stderr, "bad value for colors per channel: \"%s\"\n", argv[i]);
|
||||
exit(0);
|
||||
}
|
||||
} else if (strcmp(argv[i], "-v") == 0) {
|
||||
i++;
|
||||
if (i >= argc) {
|
||||
fprintf(stderr, "too few arguments for %s\n", argv[i - 1]);
|
||||
exit(0);
|
||||
}
|
||||
if (sscanf(argv[i], "%i", &visualID) != 1) {
|
||||
fprintf(stderr, "bad value for visual ID: \"%s\"\n", argv[i]);
|
||||
exit(0);
|
||||
}
|
||||
} else if (argv[i][0] != '-') {
|
||||
color_name[ncolors++] = argv[i];
|
||||
} else {
|
||||
print_help();
|
||||
exit(1);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (ncolors == 0) {
|
||||
print_help();
|
||||
exit(1);
|
||||
}
|
||||
if (ncolors == 0) {
|
||||
print_help();
|
||||
exit(1);
|
||||
}
|
||||
|
||||
dpy = XOpenDisplay("");
|
||||
if (!dpy) {
|
||||
puts("cant open display");
|
||||
exit(1);
|
||||
}
|
||||
attr.flags = RC_RenderMode | RC_ColorsPerChannel;
|
||||
dpy = XOpenDisplay("");
|
||||
if (!dpy) {
|
||||
puts("cant open display");
|
||||
exit(1);
|
||||
}
|
||||
attr.flags = RC_RenderMode | RC_ColorsPerChannel;
|
||||
|
||||
attr.render_mode = rmode;
|
||||
attr.colors_per_channel = cpc;
|
||||
attr.render_mode = rmode;
|
||||
attr.colors_per_channel = cpc;
|
||||
|
||||
if (visualID >= 0) {
|
||||
attr.flags |= RC_VisualID;
|
||||
attr.visualid = visualID;
|
||||
}
|
||||
if (visualID >= 0) {
|
||||
attr.flags |= RC_VisualID;
|
||||
attr.visualid = visualID;
|
||||
}
|
||||
|
||||
ctx = RCreateContext(dpy, DefaultScreen(dpy), &attr);
|
||||
ctx = RCreateContext(dpy, DefaultScreen(dpy), &attr);
|
||||
|
||||
if (!ctx) {
|
||||
printf("could not initialize graphics library context: %s\n",
|
||||
RMessageForError(RErrorCode));
|
||||
exit(1);
|
||||
}
|
||||
if (!ctx) {
|
||||
printf("could not initialize graphics library context: %s\n", RMessageForError(RErrorCode));
|
||||
exit(1);
|
||||
}
|
||||
|
||||
colors = malloc(sizeof(RColor*)*(ncolors+1));
|
||||
for (i=0; i<ncolors; i++) {
|
||||
if (!XParseColor(dpy, ctx->cmap, color_name[i], &color)) {
|
||||
printf("could not parse color \"%s\"\n", color_name[i]);
|
||||
exit(1);
|
||||
}
|
||||
else {
|
||||
colors[i] = malloc(sizeof(RColor));
|
||||
colors[i]->red = color.red >> 8;
|
||||
colors[i]->green = color.green >> 8;
|
||||
colors[i]->blue = color.blue >> 8;
|
||||
printf("0x%02x%02x%02x\n", colors[i]->red, colors[i]->green,
|
||||
colors[i]->blue);
|
||||
}
|
||||
}
|
||||
colors[i] = NULL;
|
||||
colors = malloc(sizeof(RColor *) * (ncolors + 1));
|
||||
for (i = 0; i < ncolors; i++) {
|
||||
if (!XParseColor(dpy, ctx->cmap, color_name[i], &color)) {
|
||||
printf("could not parse color \"%s\"\n", color_name[i]);
|
||||
exit(1);
|
||||
} else {
|
||||
colors[i] = malloc(sizeof(RColor));
|
||||
colors[i]->red = color.red >> 8;
|
||||
colors[i]->green = color.green >> 8;
|
||||
colors[i]->blue = color.blue >> 8;
|
||||
printf("0x%02x%02x%02x\n", colors[i]->red, colors[i]->green, colors[i]->blue);
|
||||
}
|
||||
}
|
||||
colors[i] = NULL;
|
||||
|
||||
val.background_pixel = ctx->black;
|
||||
val.colormap = ctx->cmap;
|
||||
val.backing_store = Always;
|
||||
val.background_pixel = ctx->black;
|
||||
val.colormap = ctx->cmap;
|
||||
val.backing_store = Always;
|
||||
#ifdef BENCH
|
||||
win = XCreateWindow(dpy, DefaultRootWindow(dpy), 10, 10, 250, 250,
|
||||
0, ctx->depth, InputOutput, ctx->visual,
|
||||
CWColormap|CWBackPixel|CWBackingStore, &val);
|
||||
win = XCreateWindow(dpy, DefaultRootWindow(dpy), 10, 10, 250, 250,
|
||||
0, ctx->depth, InputOutput, ctx->visual,
|
||||
CWColormap | CWBackPixel | CWBackingStore, &val);
|
||||
#else
|
||||
win = XCreateWindow(dpy, DefaultRootWindow(dpy), 10, 10, 750, 250,
|
||||
0, ctx->depth, InputOutput, ctx->visual,
|
||||
CWColormap|CWBackPixel|CWBackingStore, &val);
|
||||
win = XCreateWindow(dpy, DefaultRootWindow(dpy), 10, 10, 750, 250,
|
||||
0, ctx->depth, InputOutput, ctx->visual,
|
||||
CWColormap | CWBackPixel | CWBackingStore, &val);
|
||||
#endif
|
||||
XMapRaised(dpy, win);
|
||||
XFlush(dpy);
|
||||
XMapRaised(dpy, win);
|
||||
XFlush(dpy);
|
||||
|
||||
#ifdef BENCH
|
||||
rt = 0;
|
||||
gettimeofday(&timev, NULL);
|
||||
t = (double)timev.tv_sec + (((double)timev.tv_usec)/1000000);
|
||||
for (i=0; i<9; i++) {
|
||||
if (i>0)
|
||||
printf("\nrepeating...\n\n");
|
||||
gettimeofday(&timev, NULL);
|
||||
t1 = (double)timev.tv_sec + (((double)timev.tv_usec)/1000000);
|
||||
if (i%3==0)
|
||||
imgh = RRenderMultiGradient(550, 550, colors, RGRD_HORIZONTAL);
|
||||
else if (i%3==1)
|
||||
imgh = RRenderMultiGradient(550, 550, colors, RGRD_VERTICAL);
|
||||
else
|
||||
imgh = RRenderMultiGradient(550, 550, colors, RGRD_DIAGONAL);
|
||||
rt = 0;
|
||||
gettimeofday(&timev, NULL);
|
||||
t = (double)timev.tv_sec + (((double)timev.tv_usec) / 1000000);
|
||||
for (i = 0; i < 9; i++) {
|
||||
if (i > 0)
|
||||
printf("\nrepeating...\n\n");
|
||||
gettimeofday(&timev, NULL);
|
||||
t1 = (double)timev.tv_sec + (((double)timev.tv_usec) / 1000000);
|
||||
if (i % 3 == 0)
|
||||
imgh = RRenderMultiGradient(550, 550, colors, RGRD_HORIZONTAL);
|
||||
else if (i % 3 == 1)
|
||||
imgh = RRenderMultiGradient(550, 550, colors, RGRD_VERTICAL);
|
||||
else
|
||||
imgh = RRenderMultiGradient(550, 550, colors, RGRD_DIAGONAL);
|
||||
|
||||
gettimeofday(&timev, NULL);
|
||||
t2 = (double)timev.tv_sec + (((double)timev.tv_usec)/1000000);
|
||||
total = t2 - t1;
|
||||
printf("gradient rendered in %f sec\n", total);
|
||||
gettimeofday(&timev, NULL);
|
||||
t2 = (double)timev.tv_sec + (((double)timev.tv_usec) / 1000000);
|
||||
total = t2 - t1;
|
||||
printf("gradient rendered in %f sec\n", total);
|
||||
|
||||
RConvertImage(ctx, imgh, &pix);
|
||||
gettimeofday(&timev, NULL);
|
||||
t1 = (double)timev.tv_sec + (((double)timev.tv_usec)/1000000);
|
||||
total = t1 - t2;
|
||||
rt += total;
|
||||
printf("image converted in %f sec\n", total);
|
||||
RConvertImage(ctx, imgh, &pix);
|
||||
gettimeofday(&timev, NULL);
|
||||
t1 = (double)timev.tv_sec + (((double)timev.tv_usec) / 1000000);
|
||||
total = t1 - t2;
|
||||
rt += total;
|
||||
printf("image converted in %f sec\n", total);
|
||||
|
||||
XCopyArea(dpy, pix, win, ctx->copy_gc, 0, 0, 250, 250, 0, 0);
|
||||
XCopyArea(dpy, pix, win, ctx->copy_gc, 0, 0, 250, 250, 0, 0);
|
||||
|
||||
XFlush(dpy);
|
||||
}
|
||||
t1 = (double)timev.tv_sec + (((double)timev.tv_usec)/1000000);
|
||||
printf("------------------------------------------\n");
|
||||
printf("%i images processed in %f sec\n", i, t1-t);
|
||||
printf("average time per convertion %f sec\n", rt/i);
|
||||
printf("------------------------------------------\n");
|
||||
XFlush(dpy);
|
||||
}
|
||||
t1 = (double)timev.tv_sec + (((double)timev.tv_usec) / 1000000);
|
||||
printf("------------------------------------------\n");
|
||||
printf("%i images processed in %f sec\n", i, t1 - t);
|
||||
printf("average time per convertion %f sec\n", rt / i);
|
||||
printf("------------------------------------------\n");
|
||||
#else
|
||||
imgh = RRenderMultiGradient(250, 250, colors, RGRD_HORIZONTAL);
|
||||
imgv = RRenderMultiGradient(250, 250, colors, RGRD_VERTICAL);
|
||||
imgd = RRenderMultiGradient(250, 250, colors, RGRD_DIAGONAL);
|
||||
RConvertImage(ctx, imgh, &pix);
|
||||
XCopyArea(dpy, pix, win, ctx->copy_gc, 0, 0, 250, 250, 0, 0);
|
||||
imgh = RRenderMultiGradient(250, 250, colors, RGRD_HORIZONTAL);
|
||||
imgv = RRenderMultiGradient(250, 250, colors, RGRD_VERTICAL);
|
||||
imgd = RRenderMultiGradient(250, 250, colors, RGRD_DIAGONAL);
|
||||
RConvertImage(ctx, imgh, &pix);
|
||||
XCopyArea(dpy, pix, win, ctx->copy_gc, 0, 0, 250, 250, 0, 0);
|
||||
|
||||
RConvertImage(ctx, imgv, &pix);
|
||||
XCopyArea(dpy, pix, win, ctx->copy_gc, 0, 0, 250, 250, 250, 0);
|
||||
RConvertImage(ctx, imgv, &pix);
|
||||
XCopyArea(dpy, pix, win, ctx->copy_gc, 0, 0, 250, 250, 250, 0);
|
||||
|
||||
RConvertImage(ctx, imgd, &pix);
|
||||
XCopyArea(dpy, pix, win, ctx->copy_gc, 0, 0, 250, 250, 500, 0);
|
||||
RConvertImage(ctx, imgd, &pix);
|
||||
XCopyArea(dpy, pix, win, ctx->copy_gc, 0, 0, 250, 250, 500, 0);
|
||||
|
||||
XFlush(dpy);
|
||||
XFlush(dpy);
|
||||
#endif
|
||||
|
||||
getchar();
|
||||
return 0;
|
||||
getchar();
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user