Fawkes API Fawkes Development Version
zoom.h
1
2/***************************************************************************
3 * zoom.h - Abstract class defining a camera zoom controller
4 *
5 * Created: Wed Apr 22 10:50:53 2009
6 * Copyright 2009 Tobias Kellner
7 * 2005-2009 Tim Niemueller [www.niemueller.de]
8 *
9 ****************************************************************************/
10
11/* This program is free software; you can redistribute it and/or modify
12 * it under the terms of the GNU General Public License as published by
13 * the Free Software Foundation; either version 2 of the License, or
14 * (at your option) any later version. A runtime exception applies to
15 * this software (see LICENSE.GPL_WRE file mentioned below for details).
16 *
17 * This program is distributed in the hope that it will be useful,
18 * but WITHOUT ANY WARRANTY; without even the implied warranty of
19 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
20 * GNU Library General Public License for more details.
21 *
22 * Read the full text in the LICENSE.GPL_WRE file in the doc directory.
23 */
24
25#ifndef _FIREVISION_CAMS_CONTROL_ZOOM_H_
26#define _FIREVISION_CAMS_CONTROL_ZOOM_H_
27
28#include <fvcams/control/control.h>
29
30namespace firevision {
31
32class CameraControlZoom : virtual public CameraControl
33{
34public:
35 virtual ~CameraControlZoom();
36
37 virtual void reset_zoom() = 0;
38 virtual void set_zoom(unsigned int zoom) = 0;
39 virtual unsigned int zoom() = 0;
40 virtual unsigned int zoom_max() = 0;
41 virtual unsigned int zoom_min() = 0;
42 virtual void set_zoom_speed_tele(unsigned int speed);
43 virtual void set_zoom_speed_wide(unsigned int speed);
44 virtual void set_zoom_digital_enabled(bool enabled);
45};
46
47} // end namespace firevision
48
49#endif // FIREVISION_CAMS_CONTROL_ZOOM_H__
Camera zoom control interface.
Definition: zoom.h:33
virtual unsigned int zoom_max()=0
Maximum zoom value.
virtual void reset_zoom()=0
Reset zoom.
virtual void set_zoom_speed_wide(unsigned int speed)
Set speed in wide range.
Definition: zoom.cpp:82
virtual void set_zoom_digital_enabled(bool enabled)
Set if digital zoom may be used.
Definition: zoom.cpp:92
virtual void set_zoom(unsigned int zoom)=0
Set new camera-specific zoom value.
virtual unsigned int zoom()=0
Get current zoom value.
virtual ~CameraControlZoom()
Empty virtual destructor.
Definition: zoom.cpp:63
virtual unsigned int zoom_min()=0
Minimum zoom value.
virtual void set_zoom_speed_tele(unsigned int speed)
Set speed in tele range.
Definition: zoom.cpp:72
Camera control interface base class.
Definition: control.h:31