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

Loading...
Searching...
No Matches
arg_gl.h
Go to the documentation of this file.
1/*
2 * arg_gl.h
3 * artoolkitX
4 *
5 * Graphics Subroutines (OpenGL 1.x) for artoolkitX.
6 *
7 * This file is part of artoolkitX.
8 *
9 * artoolkitX is free software: you can redistribute it and/or modify
10 * it under the terms of the GNU Lesser General Public License as published by
11 * the Free Software Foundation, either version 3 of the License, or
12 * (at your option) any later version.
13 *
14 * artoolkitX is distributed in the hope that it will be useful,
15 * but WITHOUT ANY WARRANTY; without even the implied warranty of
16 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17 * GNU Lesser General Public License for more details.
18 *
19 * You should have received a copy of the GNU Lesser General Public License
20 * along with artoolkitX. If not, see <http://www.gnu.org/licenses/>.
21 *
22 * As a special exception, the copyright holders of this library give you
23 * permission to link this library with independent modules to produce an
24 * executable, regardless of the license terms of these independent modules, and to
25 * copy and distribute the resulting executable under terms of your choice,
26 * provided that you also meet, for each linked independent module, the terms and
27 * conditions of the license of that module. An independent module is a module
28 * which is neither derived from nor based on this library. If you modify this
29 * library, you may extend this exception to your version of the library, but you
30 * are not obligated to do so. If you do not wish to do so, delete this exception
31 * statement from your version.
32 *
33 * Copyright 2018 Realmax, Inc.
34 * Copyright 2015 Daqri, LLC.
35 * Copyright 2011-2015 ARToolworks, Inc.
36 *
37 * Author(s): Philip Lamb
38 *
39 */
40
41#include "arg_private.h"
42
43#if HAVE_GL
44
45#ifndef __arg_gl_h__
46#define __arg_gl_h__
47
48#ifdef __cplusplus
49 extern "C" {
50#endif
51
52 int arglSetupForCurrentContextGL(ARGL_CONTEXT_SETTINGS_REF contextSettings, AR_PIXEL_FORMAT pixelFormat);
53 void arglCleanupGL(ARGL_CONTEXT_SETTINGS_REF contextSettings);
54 void arglDispImageGL(ARGL_CONTEXT_SETTINGS_REF contextSettings, int32_t viewport[4]);
55 void arglDispImageStatefulGL(ARGL_CONTEXT_SETTINGS_REF contextSettings);
56 int arglDistortionCompensationSetGL(ARGL_CONTEXT_SETTINGS_REF contextSettings, int enable);
57 int arglSetPixelZoomGL(ARGL_CONTEXT_SETTINGS_REF contextSettings, float zoom);
58 int arglPixelFormatSetGL(ARGL_CONTEXT_SETTINGS_REF contextSettings, AR_PIXEL_FORMAT format);
59 int arglPixelFormatGetGL(ARGL_CONTEXT_SETTINGS_REF contextSettings, AR_PIXEL_FORMAT *format, int *size);
60 void arglSetRotate90GL(ARGL_CONTEXT_SETTINGS_REF contextSettings, int rotate90);
61 void arglSetFlipHGL(ARGL_CONTEXT_SETTINGS_REF contextSettings, int flipH);
62 void arglSetFlipVGL(ARGL_CONTEXT_SETTINGS_REF contextSettings, int flipV);
63 int arglPixelBufferSizeSetGL(ARGL_CONTEXT_SETTINGS_REF contextSettings, int bufWidth, int bufHeight);
64 int arglPixelBufferSizeGetGL(ARGL_CONTEXT_SETTINGS_REF contextSettings, int *bufWidth, int *bufHeight);
65 int arglPixelBufferDataUploadBiPlanarGL(ARGL_CONTEXT_SETTINGS_REF contextSettings, ARUint8 *bufDataPtr0, ARUint8 *bufDataPtr1);
66 int arglGLHasExtensionGL(const unsigned char *extName);
67
68#ifdef __cplusplus
69}
70#endif
71
72#endif // !__arg_gl_h__
73
74#endif // HAVE_GL
ARUint8
unsigned char ARUint8
Definition: ar.h:92
arg_private.h
_ARGL_CONTEXT_SETTINGS
Definition: arg_private.h:48