focus.cpp

00001
00002 /***************************************************************************
00003  *  focus.cpp - Abstract class defining a camera focus controller
00004  *
00005  *  Created: Wed Apr 22 10:37:16 2009
00006  *  Copyright  2009      Tobias Kellner
00007  *             2005-2009 Tim Niemueller [www.niemueller.de]
00008  *
00009  ****************************************************************************/
00010
00011 /*  This program is free software; you can redistribute it and/or modify
00012  *  it under the terms of the GNU General Public License as published by
00013  *  the Free Software Foundation; either version 2 of the License, or
00014  *  (at your option) any later version. A runtime exception applies to
00015  *  this software (see LICENSE.GPL_WRE file mentioned below for details).
00016  *
00017  *  This program is distributed in the hope that it will be useful,
00018  *  but WITHOUT ANY WARRANTY; without even the implied warranty of
00019  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00020  *  GNU Library General Public License for more details.
00021  *
00022  *  Read the full text in the LICENSE.GPL_WRE file in the doc directory.
00023  */
00024
00025 #include <cams/control/focus.h>
00026 
00027 /** @class CameraControlFocus <cams/control/focus.h>
00028  * Camera focus control interface.
00029  * Some cameras feature an adjustable focus.
00030  *
00031  * This interface shall be implemented by such cameras.
00032  *
00033  * @author Tim Niemueller
00034  * @author Tobias Kellner
00035  *
00036  * @fn bool CameraControlFocus::auto_focus() = 0
00037  * Check if auto focus is enabled.
00038  * @return true, if the camera is in auto focus mode, false otherwise
00039  * @throws NotImplementedException Not implemented by this control
00040  *
00041  * @fn void CameraControlFocus::set_auto_focus(bool enabled) = 0
00042  * Enable or disable auto focus.
00043  * @param enabled if true, enable auto focus, otherwise disable
00044  * @throws NotImplementedException Not implemented by this control
00045  *
00046  * @fn unsigned int CameraControlFocus::focus()
00047  * Get current focus value.
00048  * @return current focus value.
00049  *
00050  * @fn void CameraControlFocus::set_focus(unsigned int focus)
00051  * Set new focus value.
00052  * @param focus new focus value
00053  *
00054  * @fn unsigned int CameraControlFocus::focus_min()
00055  * Get minimum focus value.
00056  * @return minimum focus value.
00057  *
00058  * @fn unsigned int CameraControlFocus::focus_max()
00059  * Get maximum focus value.
00060  * @return maximum focus value.
00061  */
00062 
00063 /** Empty virtual destructor. */
00064 CameraControlFocus::~CameraControlFocus()
00065 {
00066 }