ARX  1.0
The next-generation open source augmented reality toolkit.
Loading...
Searching...
No Matches
imageFormat.h
Go to the documentation of this file.
1/*
2 * AR2/imageFormat.h
3 * artoolkitX
4 *
5 * This file is part of artoolkitX.
6 *
7 * artoolkitX is free software: you can redistribute it and/or modify
8 * it under the terms of the GNU Lesser General Public License as published by
9 * the Free Software Foundation, either version 3 of the License, or
10 * (at your option) any later version.
11 *
12 * artoolkitX is distributed in the hope that it will be useful,
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 * GNU Lesser General Public License for more details.
16 *
17 * You should have received a copy of the GNU Lesser General Public License
18 * along with artoolkitX. If not, see <http://www.gnu.org/licenses/>.
19 *
20 * As a special exception, the copyright holders of this library give you
21 * permission to link this library with independent modules to produce an
22 * executable, regardless of the license terms of these independent modules, and to
23 * copy and distribute the resulting executable under terms of your choice,
24 * provided that you also meet, for each linked independent module, the terms and
25 * conditions of the license of that module. An independent module is a module
26 * which is neither derived from nor based on this library. If you modify this
27 * library, you may extend this exception to your version of the library, but you
28 * are not obligated to do so. If you do not wish to do so, delete this exception
29 * statement from your version.
30 *
31 * Copyright 2018 Realmax, Inc.
32 * Copyright 2015 Daqri, LLC.
33 * Copyright 2006-2015 ARToolworks, Inc.
34 *
35 * Author(s): Hirokazu Kato, Philip Lamb
36 *
37 */
38
39#ifndef AR2_IMAGE_FORMAT_H
40#define AR2_IMAGE_FORMAT_H
41#ifdef __cplusplus
42extern "C" {
43#endif
44
45#include <stdio.h>
46#include <ARX/AR2/config.h>
47
48#define AR2_DEFAULT_JPEG_IMAGE_QUALITY 80
49
50
51typedef struct {
53 int nc;
54 int xsize;
55 int ysize;
56 float dpi;
58
59/* jpeg.c */
60
61AR2_EXTERN AR2JpegImageT *ar2ReadJpegImage ( const char *filename, const char *ext );
63AR2_EXTERN int ar2WriteJpegImage ( const char *filename, const char *ext, AR2JpegImageT *jpegImage, int quality );
64AR2_EXTERN int ar2WriteJpegImage2( FILE *fp, AR2JpegImageT *jpegImage, int quality );
65AR2_EXTERN int ar2FreeJpegImage ( AR2JpegImageT **jpegImage );
66
67#ifdef __cplusplus
68}
69#endif
70#endif
unsigned char ARUint8
Definition: ar.h:92
#define AR2_EXTERN
Definition: config.h:56
AR2_EXTERN AR2JpegImageT * ar2ReadJpegImage2(FILE *fp)
Definition: jpeg.c:110
AR2_EXTERN AR2JpegImageT * ar2ReadJpegImage(const char *filename, const char *ext)
Definition: jpeg.c:85
AR2_EXTERN int ar2WriteJpegImage2(FILE *fp, AR2JpegImageT *jpegImage, int quality)
Definition: jpeg.c:80
AR2_EXTERN int ar2FreeJpegImage(AR2JpegImageT **jpegImage)
Definition: jpeg.c:125
AR2_EXTERN int ar2WriteJpegImage(const char *filename, const char *ext, AR2JpegImageT *jpegImage, int quality)
Definition: jpeg.c:56
Definition: imageFormat.h:51
float dpi
Definition: imageFormat.h:56
int nc
Definition: imageFormat.h:53
ARUint8 * image
Definition: imageFormat.h:52
int xsize
Definition: imageFormat.h:54
int ysize
Definition: imageFormat.h:55