/usr/share/doc/libsimage-dev/examples/simage-read-line-test.c is in libsimage-dev 1.7.1~2c958a6.dfsg-4.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
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 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 | /*
* Copyright (c) Kongsberg Oil & Gas Technologies
*
* Permission to use, copy, modify, and distribute this software for any
* purpose with or without fee is hereby granted, provided that the above
* copyright notice and this permission notice appear in all copies.
*
* THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
* WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
* MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
* ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
* WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
* ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
* OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/*
* simage-read-line-test.c
* A simple program for testing line-by-line image access.
*/
#include <simage.h>
#include <assert.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
static void
usage(const char * argv0)
{
fprintf(stdout, "Usage:\n %s <infile>\n");
}
int main(int argc, char ** argv)
{
int i;
int w, h, nc;
char * infile;
char * addalpha = NULL;
unsigned char * row = NULL;
s_image * image = NULL;
if (argc < 2) {
usage(argv[0]);
return -1;
}
image = s_image_open(argv[1], 1);
if (!image) {
fprintf(stdout,"Unable to open file: %s\n" ,argv[1]);
return -1;
}
w = s_image_width(image);
h = s_image_height(image);
nc = s_image_components(image);
fprintf(stdout,"testing file: %s, %d %d %d\n", argv[1], w, h, nc);
row = (unsigned char*) malloc(w*nc);
fprintf(stdout,"testing step: %s, %d %d %d\n", argv[1], w, h, nc);
for (i = 0; i < h; i += 146) {
if (!s_image_read_line(image, i, row)) {
fprintf(stdout,"failed to read line %d\n", i);
}
}
fprintf(stdout,"testing normal: %s, %d %d %d\n", argv[1], w, h, nc);
for (i = 0; i < h; i++) {
if (!s_image_read_line(image, i, row)) {
fprintf(stdout,"failed to read line %d\n", i);
}
}
fprintf(stdout,"testing backwards: %s, %d %d %d\n", argv[1], w, h, nc);
for (i = h-1; i >=0; i--) {
if (!s_image_read_line(image, i, row)) {
fprintf(stdout,"failed to read line %d\n", i);
}
}
free(row);
return 0;
}
|