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

Loading...
Searching...
No Matches
video1394Private.h
Go to the documentation of this file.
1/*
2 * video1394Private.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 2004-2015 ARToolworks, Inc.
34 *
35 * Author(s): Hirokazu Kato, Philip Lamb
36 *
37 */
38
39#ifndef AR_VIDEO_1394_PRIVATE_H
40#define AR_VIDEO_1394_PRIVATE_H
41
42#include "video1394.h"
43
44#include <dc1394/camera.h>
45#include <pthread.h>
46
47#ifdef __cplusplus
48 extern "C" {
49#endif
50
51 typedef struct {
52 AR2VideoBufferT in;
53 AR2VideoBufferT wait;
54 AR2VideoBufferT out;
55 pthread_mutex_t mutex;
56} AR2VideoBuffer1394T;
57
58 struct _AR2VideoParam1394T {
59 int mode;
60 int rate;
61 int speed;
62 int format7;
63 int debug;
64
65 uint32_t guid[2];
66 int width;
67 int height;
68 int bits;
69 int dma_buf_num;
70 int internal_id;
71 int status;
72 dc1394camera_t *camera;
73 dc1394video_mode_t int_mode;
74 dc1394video_modes_t modes;
75 dc1394framerate_t int_rate;
76 dc1394framerates_t rates;
77 dc1394speed_t int_speed;
78 dc1394operation_mode_t int_opmode;
79 dc1394featureset_t features;
80 pthread_t capture;
81 AR2VideoBuffer1394T buffer;
82};
83
84 void ar2Video1394FormatConversion(ARUint8 *src, ARUint8 *dst, int mode, int width, int height);
85
86 int ar2VideoGetValue1394 (AR2VideoParam1394T *vid, int paramName, int *value);
87 int ar2VideoSetValue1394 (AR2VideoParam1394T *vid, int paramName, int value);
88 int ar2VideoGetAutoOn1394 (AR2VideoParam1394T *vid, int paramName, int *value);
89 int ar2VideoSetAutoOn1394 (AR2VideoParam1394T *vid, int paramName, int value);
90 int ar2VideoGetFeatureOn1394 (AR2VideoParam1394T *vid, int paramName, int *value);
91 int ar2VideoSetFeatureOn1394 (AR2VideoParam1394T *vid, int paramName, int value);
92 int ar2VideoGetMaxValue1394 (AR2VideoParam1394T *vid, int paramName, int *value);
93 int ar2VideoGetMinValue1394 (AR2VideoParam1394T *vid, int paramName, int *value);
94
95 int ar2VideoGetAbsValue1394 (AR2VideoParam1394T *vid, int paramName, ARdouble *value);
96 int ar2VideoSetAbsValue1394 (AR2VideoParam1394T *vid, int paramName, ARdouble value);
97 int ar2VideoGetAbsMaxValue1394 (AR2VideoParam1394T *vid, int paramName, ARdouble *value);
98 int ar2VideoGetAbsMinValue1394 (AR2VideoParam1394T *vid, int paramName, ARdouble *value);
99
100#ifdef __cplusplus
101}
102#endif
103#endif // AR_VIDEO_1394_PRIVATE_H
ARUint8
unsigned char ARUint8
Definition: ar.h:92
ARdouble
double ARdouble
Definition: ar.h:99
_AR2VideoParam1394T
Definition: video1394Private.h:58
_AR2VideoParam1394T::internal_id
int internal_id
Definition: video1394Private.h:70
_AR2VideoParam1394T::camera
dc1394camera_t * camera
Definition: video1394Private.h:72
_AR2VideoParam1394T::int_mode
dc1394video_mode_t int_mode
Definition: video1394Private.h:73
_AR2VideoParam1394T::int_opmode
dc1394operation_mode_t int_opmode
Definition: video1394Private.h:78
_AR2VideoParam1394T::rates
dc1394framerates_t rates
Definition: video1394Private.h:76
_AR2VideoParam1394T::height
int height
Definition: video1394Private.h:67
_AR2VideoParam1394T::speed
int speed
Definition: video1394Private.h:61
_AR2VideoParam1394T::debug
int debug
Definition: video1394Private.h:63
_AR2VideoParam1394T::features
dc1394featureset_t features
Definition: video1394Private.h:79
_AR2VideoParam1394T::mode
int mode
Definition: video1394Private.h:59
_AR2VideoParam1394T::int_speed
dc1394speed_t int_speed
Definition: video1394Private.h:77
_AR2VideoParam1394T::guid
uint32_t guid[2]
Definition: video1394Private.h:65
_AR2VideoParam1394T::bits
int bits
Definition: video1394Private.h:68
_AR2VideoParam1394T::modes
dc1394video_modes_t modes
Definition: video1394Private.h:74
_AR2VideoParam1394T::capture
pthread_t capture
Definition: video1394Private.h:80
_AR2VideoParam1394T::width
int width
Definition: video1394Private.h:66
_AR2VideoParam1394T::rate
int rate
Definition: video1394Private.h:60
_AR2VideoParam1394T::format7
int format7
Definition: video1394Private.h:62
_AR2VideoParam1394T::int_rate
dc1394framerate_t int_rate
Definition: video1394Private.h:75
_AR2VideoParam1394T::dma_buf_num
int dma_buf_num
Definition: video1394Private.h:69
_AR2VideoParam1394T::buffer
AR2VideoBuffer1394T buffer
Definition: video1394Private.h:81
_AR2VideoParam1394T::status
int status
Definition: video1394Private.h:71
AR2VideoBuffer1394T
Definition: video1394Private.h:51
AR2VideoBuffer1394T::out
AR2VideoBufferT out
Definition: video1394Private.h:54
AR2VideoBuffer1394T::in
AR2VideoBufferT in
Definition: video1394Private.h:52
AR2VideoBuffer1394T::wait
AR2VideoBufferT wait
Definition: video1394Private.h:53
AR2VideoBuffer1394T::mutex
pthread_mutex_t mutex
Definition: video1394Private.h:55
AR2VideoBufferT
A structure which carries information about a video frame retrieved by the video library.
Definition: ar.h:148
video1394.h
ar2VideoGetAbsMinValue1394
int ar2VideoGetAbsMinValue1394(AR2VideoParam1394T *vid, int paramName, ARdouble *value)
ar2VideoSetValue1394
int ar2VideoSetValue1394(AR2VideoParam1394T *vid, int paramName, int value)
ar2Video1394FormatConversion
void ar2Video1394FormatConversion(ARUint8 *src, ARUint8 *dst, int mode, int width, int height)
ar2VideoGetMaxValue1394
int ar2VideoGetMaxValue1394(AR2VideoParam1394T *vid, int paramName, int *value)
ar2VideoGetMinValue1394
int ar2VideoGetMinValue1394(AR2VideoParam1394T *vid, int paramName, int *value)
ar2VideoSetAbsValue1394
int ar2VideoSetAbsValue1394(AR2VideoParam1394T *vid, int paramName, ARdouble value)
ar2VideoSetAutoOn1394
int ar2VideoSetAutoOn1394(AR2VideoParam1394T *vid, int paramName, int value)
ar2VideoGetValue1394
int ar2VideoGetValue1394(AR2VideoParam1394T *vid, int paramName, int *value)
ar2VideoSetFeatureOn1394
int ar2VideoSetFeatureOn1394(AR2VideoParam1394T *vid, int paramName, int value)
ar2VideoGetAbsMaxValue1394
int ar2VideoGetAbsMaxValue1394(AR2VideoParam1394T *vid, int paramName, ARdouble *value)
ar2VideoGetAbsValue1394
int ar2VideoGetAbsValue1394(AR2VideoParam1394T *vid, int paramName, ARdouble *value)
ar2VideoGetFeatureOn1394
int ar2VideoGetFeatureOn1394(AR2VideoParam1394T *vid, int paramName, int *value)
ar2VideoGetAutoOn1394
int ar2VideoGetAutoOn1394(AR2VideoParam1394T *vid, int paramName, int *value)