Fawkes API  Fawkes Development Version
color.h
1 
2 /***************************************************************************
3  * color.h - Abstract class defining a camera color controller
4  *
5  * Created: Wed Apr 22 11:19:04 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_COLOR_H_
26 #define __FIREVISION_CAMS_CONTROL_COLOR_H_
27 
28 #include <fvcams/control/control.h>
29 
30 namespace firevision {
31 #if 0 /* just to make Emacs auto-indent happy */
32 }
33 #endif
34 
35 class CameraControlColor : virtual public CameraControl
36 {
37  public:
38  virtual ~CameraControlColor();
39 
40  virtual bool auto_gain() = 0;
41  virtual void set_auto_gain(bool enabled) = 0;
42  virtual bool auto_white_balance() = 0;
43  virtual void set_auto_white_balance(bool enabled) = 0;
44  virtual unsigned int exposure_auto() = 0;
45  virtual void set_exposure_auto(unsigned int enabled) = 0;
46  virtual void set_auto_all(bool enabled);
47 
48  virtual int red_balance() = 0;
49  virtual void set_red_balance(int red_balance) = 0;
50  virtual int blue_balance() = 0;
51  virtual void set_blue_balance(int blue_balance) = 0;
52 
53  virtual int u_balance() = 0;
54  virtual void set_u_balance(int u_balance) = 0;
55  virtual int v_balance() = 0;
56  virtual void set_v_balance(int v_balance) = 0;
57 
58  virtual unsigned int brightness() = 0;
59  virtual void set_brightness(unsigned int brightness) = 0;
60  virtual unsigned int contrast() = 0;
61  virtual void set_contrast(unsigned int contrast) = 0;
62  virtual unsigned int saturation() = 0;
63  virtual void set_saturation(unsigned int saturation) = 0;
64  virtual int hue() = 0;
65  virtual void set_hue(int hue) = 0;
66  virtual unsigned int exposure() = 0;
67  virtual void set_exposure(unsigned int exposure) = 0;
68  virtual unsigned int gain() = 0;
69  virtual void set_gain(unsigned int gain) = 0;
70 };
71 
72 } // end namespace firevision
73 
74 #endif // __FIREVISION_CAMS_CONTROL_COLOR_H_
virtual void set_brightness(unsigned int brightness)=0
Set new brightness.
virtual unsigned int contrast()=0
Get current contrast.
virtual void set_auto_white_balance(bool enabled)=0
Enable/disable auto white balance.
virtual void set_gain(unsigned int gain)=0
Set new gain.
virtual void set_v_balance(int v_balance)=0
Set v balance.
Camera color control interface.
Definition: color.h:35
virtual unsigned int gain()=0
Get current gain.
virtual void set_red_balance(int red_balance)=0
Set red balance.
virtual unsigned int brightness()=0
Get current brightness.
virtual void set_contrast(unsigned int contrast)=0
Set new contrast.
virtual unsigned int exposure_auto()=0
Return whether auto exposure is enabled.
virtual unsigned int exposure()=0
Get current exposure.
virtual int hue()=0
Get current hue.
Camera control interface base class.
Definition: control.h:33
virtual void set_auto_all(bool enabled)
Enable/disable all automatic settings.
Definition: color.cpp:165
virtual void set_saturation(unsigned int saturation)=0
Set new saturation.
virtual bool auto_gain()=0
Return whether auto gain is enabled.
virtual int red_balance()=0
Get current red balance.
virtual ~CameraControlColor()
Empty virtual destructor.
Definition: color.cpp:155
virtual int v_balance()=0
Get current v balance.
virtual void set_blue_balance(int blue_balance)=0
Set blue balance.
virtual void set_u_balance(int u_balance)=0
Set u balance.
virtual unsigned int saturation()=0
Get current saturation.
virtual int blue_balance()=0
Get current blue balance.
virtual void set_exposure(unsigned int exposure)=0
Set new exposure.
virtual int u_balance()=0
Get current u balance.
virtual bool auto_white_balance()=0
Return whether auto white balance is enabled.
virtual void set_hue(int hue)=0
Set new hue.
virtual void set_auto_gain(bool enabled)=0
Enable/disable auto gain.
virtual void set_exposure_auto(unsigned int enabled)=0
Enable/disable auto exposure.