| ARX 1.0 The next-generation open source augmented reality toolkit.

Loading...
Searching...
No Matches
imageSet.h
Go to the documentation of this file.
1/*
2 * AR2/imageSet.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_SET_H
40#define AR2_IMAGE_SET_H
41#include <ARX/AR/ar.h>
42#include <ARX/AR2/config.h>
43
44#ifdef __cplusplus
45 extern "C" {
46#endif
47
48#if AR2_CAPABLE_ADAPTIVE_TEMPLATE
49#define AR2_BLUR_IMAGE_MAX 5
50#endif
51
52
53 typedef struct {
54#if AR2_CAPABLE_ADAPTIVE_TEMPLATE
55 ARUint8 *imgBWBlur[AR2_BLUR_IMAGE_MAX];
56#else
57 ARUint8 *imgBW;
58#endif
59 int xsize;
60 int ysize;
61 float dpi;
62} AR2ImageT;
63
64 typedef struct {
65 AR2ImageT **scale;
66 int32_t num;
67} AR2ImageSetT;
68
69/* image.c */
70 AR2_EXTERN AR2ImageSetT *ar2GenImageSet ( ARUint8 *image, int xsize, int ysize, int nc, float dpi, float dpi_list[], int dpi_num );
71 AR2_EXTERN AR2ImageSetT *ar2ReadImageSet ( char *filename );
72 AR2_EXTERN int ar2WriteImageSet ( char *filename, AR2ImageSetT *imageSet );
73 AR2_EXTERN int ar2FreeImageSet ( AR2ImageSetT **imageSet );
74
75#ifdef __cplusplus
76}
77#endif
78#endif
ar.h
artoolkitX core routines.
ARUint8
unsigned char ARUint8
Definition: ar.h:92
config.h
AR2_EXTERN
#define AR2_EXTERN
Definition: config.h:56
ar2ReadImageSet
AR2_EXTERN AR2ImageSetT * ar2ReadImageSet(char *filename)
Definition: imageSet.c:81
ar2WriteImageSet
AR2_EXTERN int ar2WriteImageSet(char *filename, AR2ImageSetT *imageSet)
Definition: imageSet.c:193
ar2FreeImageSet
AR2_EXTERN int ar2FreeImageSet(AR2ImageSetT **imageSet)
Definition: imageSet.c:239
ar2GenImageSet
AR2_EXTERN AR2ImageSetT * ar2GenImageSet(ARUint8 *image, int xsize, int ysize, int nc, float dpi, float dpi_list[], int dpi_num)
Definition: imageSet.c:57
AR2ImageSetT
Definition: imageSet.h:64
AR2ImageSetT::scale
AR2ImageT ** scale
Definition: imageSet.h:65
AR2ImageSetT::num
int32_t num
Definition: imageSet.h:66
AR2ImageT
Definition: imageSet.h:53
AR2ImageT::xsize
int xsize
Definition: imageSet.h:59
AR2ImageT::dpi
float dpi
Definition: imageSet.h:61
AR2ImageT::ysize
int ysize
Definition: imageSet.h:60
AR2ImageT::imgBW
ARUint8 * imgBW
Definition: imageSet.h:57