Fawkes API
Fawkes Development Version
Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
All
Classes
Namespaces
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Groups
Pages
sony_evid100p.h
1
2
/***************************************************************************
3
* sony_evid100p_control.h - Controller for Sony EVI-D100P
4
*
5
* Created: Tue Jun 07 15:52:46 2005
6
* Copyright 2005-2009 Tim Niemueller [www.niemueller.de]
7
*
8
****************************************************************************/
9
10
/* This program is free software; you can redistribute it and/or modify
11
* it under the terms of the GNU General Public License as published by
12
* the Free Software Foundation; either version 2 of the License, or
13
* (at your option) any later version. A runtime exception applies to
14
* this software (see LICENSE.GPL_WRE file mentioned below for details).
15
*
16
* This program is distributed in the hope that it will be useful,
17
* but WITHOUT ANY WARRANTY; without even the implied warranty of
18
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19
* GNU Library General Public License for more details.
20
*
21
* Read the full text in the LICENSE.GPL_WRE file in the doc directory.
22
*/
23
24
#ifndef __FIREVISION_CONTROL_SONYEVID100P_H_
25
#define __FIREVISION_CONTROL_SONYEVID100P_H_
26
27
#include <fvcams/control/pantilt.h>
28
#include <fvcams/control/zoom.h>
29
#include <fvcams/control/effect.h>
30
31
namespace
firevision {
32
#if 0
/* just to make Emacs auto-indent happy */
33
}
34
#endif
35
36
class
CameraArgumentParser;
37
class
ViscaControl;
38
39
class
SonyEviD100PControl
40
:
public
CameraControlPanTilt
,
41
public
CameraControlZoom
,
42
public
CameraControlEffect
43
{
44
45
public
:
46
47
static
const
unsigned
int
EFFECT_PASTEL
;
48
static
const
unsigned
int
EFFECT_NEGATIVE
;
49
static
const
unsigned
int
EFFECT_SEPIA
;
50
static
const
unsigned
int
EFFECT_BW
;
51
static
const
unsigned
int
EFFECT_SOLARIZE
;
52
static
const
unsigned
int
EFFECT_MOSAIC
;
53
static
const
unsigned
int
EFFECT_SLIM
;
54
static
const
unsigned
int
EFFECT_STRETCH
;
55
56
SonyEviD100PControl
(
const
CameraArgumentParser
*cap);
57
SonyEviD100PControl
(
const
char
*tty_port);
58
virtual
~
SonyEviD100PControl
();
59
60
void
open();
61
void
close();
62
void
process_pantilt();
63
64
// pan/tilt
65
bool
supports_pan();
66
bool
supports_tilt();
67
void
set_pan(
int
pan);
68
void
set_tilt(
int
tilt);
69
void
set_pan_tilt(
int
pan,
int
tilt);
70
void
set_pan_tilt_rad(
float
pan,
float
tilt);
71
int
pan();
72
int
tilt();
73
void
start_get_pan_tilt();
74
void
pan_tilt(
int
&pan,
int
&tilt);
75
void
pan_tilt_rad(
float
&pan,
float
&tilt);
76
int
min_pan();
77
int
max_pan();
78
int
min_tilt();
79
int
max_tilt();
80
void
reset_pan_tilt();
81
void
set_pan_tilt_limit(
int
pan_left,
int
pan_right,
82
int
tilt_up,
int
tilt_down);
83
void
reset_pan_tilt_limit();
84
85
// zoom
86
void
reset_zoom();
87
void
set_zoom(
unsigned
int
zoom);
88
unsigned
int
zoom();
89
unsigned
int
zoom_max();
90
unsigned
int
zoom_min();
91
void
set_zoom_speed_tele(
unsigned
int
speed);
92
void
set_zoom_speed_wide(
unsigned
int
speed);
93
void
set_zoom_digital_enabled(
bool
enabled);
94
95
unsigned
int
white_balance_mode();
96
97
// effect
98
bool
supports_effect(
unsigned
int
effect);
99
void
set_effect(
unsigned
int
effect);
100
unsigned
int
effect();
101
void
reset_effect();
102
103
104
static
const
int
MAX_PAN
;
105
static
const
int
MIN_PAN
;
106
static
const
int
MAX_TILT
;
107
static
const
int
MIN_TILT
;
108
109
static
const
float
MAX_PAN_DEG
;
110
static
const
float
MIN_PAN_DEG
;
111
static
const
float
MAX_TILT_DEG
;
112
static
const
float
MIN_TILT_DEG
;
113
114
static
const
float
MAX_PAN_RAD
;
115
static
const
float
MIN_PAN_RAD
;
116
static
const
float
MAX_TILT_RAD
;
117
static
const
float
MIN_TILT_RAD
;
118
119
static
const
float
PAN_STEPS_PER_DEG
;
120
static
const
float
TILT_STEPS_PER_DEG
;
121
122
static
const
float
PAN_STEPS_PER_RAD
;
123
static
const
float
TILT_STEPS_PER_RAD
;
124
125
private
:
126
ViscaControl
*visca;
127
char
*tty_port;
128
bool
opened;
129
130
int
pan_target;
131
int
tilt_target;
132
133
unsigned
int
_effect;
134
135
};
136
137
}
// end namespace firevision
138
139
#endif
src
libs
fvcams
control
sony_evid100p.h
Generated by
1.8.1.2