Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

Mask1dGaussD1.H

Go to the documentation of this file.
00001 /*---------------------------------------------------------------------+
00002  | Library QgarLib, graphics analysis and recognition                  |
00003  | Copyright (C) 2002  Qgar Project, LORIA                             |
00004  |                                                                     |
00005  | This library is free software; you can redistribute it and/or       |
00006  | modify it under the terms of the GNU Lesser General Public          |
00007  | License version 2.1, as published by the Free Software Foundation.  |
00008  |                                                                     |
00009  | This library is distributed in the hope that it will be useful,     |
00010  | but WITHOUT ANY WARRANTY; without even the implied warranty of      |
00011  | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.                |
00012  | See the GNU Lesser General Public License for more details.         |
00013  |                                                                     |
00014  | The GNU Lesser General Public License is included in the file       |
00015  | LICENSE.LGPL, in the root directory of the Qgar packaging. See      |
00016  | http://www.gnu.org/licenses/lgpl.html for the terms of the licence. |
00017  | To receive a paper copy, write to the Free Software Foundation,     |
00018  | Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.       |
00019  |                                                                     |
00020  | Contact Project Qgar for any information:                           |
00021  |   LORIA - équipe Qgar                                               |
00022  |   B.P. 239, 54506 Vandoeuvre-lès-Nancy Cedex, France                |
00023  |   email: qgar-contact@loria.fr                                      |
00024  |   http://www.qgar.org/                                              |
00025  *---------------------------------------------------------------------*/
00026 
00027 
00028 #ifndef __MASK1DGAUSSD1_H_INCLUDED__
00029 #define __MASK1DGAUSSD1_H_INCLUDED__
00030 
00031 
00032 /**
00033  * @file   Mask1dGaussD1.H
00034  * @brief  Header file of class qgar::Mask1dGaussD1.
00035  *
00036  * @author <a href="mailto:qgar-develop@loria.fr?subject=Qgar fwd Karl Tombre">Karl Tombre</a>
00037  * @date   July 03, 2001  10:27
00038  * @since  Qgar 1.0
00039  */
00040 
00041 
00042 // For RCS/CVS use: Do not delete
00043 /* $Id: Mask1dGaussD1.H,v 1.9 2005/01/31 14:16:07 masini Exp $ */
00044 
00045 
00046 
00047 // QGAR
00048 #include <qgarlib/GenMask1d.H>
00049 
00050 
00051 
00052 namespace qgar
00053 {
00054 
00055 
00056 /**
00057  * @class Mask1dGaussD1 Mask1dGaussD1.H "qgarlib/Mask1dGaussD1.H"
00058  * @ingroup DS_MASK
00059  * @brief First derivative of a 1D Gaussian mask.
00060  *
00061  * The code implementing this class is an adaptation of code written by
00062  * Carsten Steger at TU Muenchen, Germany. Here is the copyright notice
00063  * from his code:
00064 @verbatim
00065  +----------------------------------------------------------------------+
00066  | Copyright (C) 1996 Carsten Steger                                    |
00067  |                                                                      |
00068  | This program is free software; you can redistribute it and/or modify |
00069  | it under the terms of the GNU General Public License as published by |
00070  | the Free Software Foundation; either version 2, or (at your option)  |
00071  | any later version.                                                   |
00072  |                                                                      |
00073  | This program is distributed in the hope that it will be useful, but  |
00074  | WITHOUT ANY WARRANTY; without even the implied warranty of           |
00075  | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU    |
00076  | General Public License for more details.                             |
00077  |                                                                      |
00078  | You should have received a copy of the GNU General Public License    |
00079  | along with this program; if not, write to the Free Software          |
00080  | Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.            |
00081  +----------------------------------------------------------------------+
00082 @endverbatim
00083  *
00084  * @author <a href="mailto:qgar-develop@loria.fr?subject=Qgar fwd Karl Tombre">Karl Tombre</a>
00085  * @date   July 03, 2001  10:27
00086  * @since  Qgar 1.0
00087  */
00088 class Mask1dGaussD1
00089 
00090   : public DMask1d
00091 
00092 {
00093 // -------------------------------------------------------------------
00094 // P U B L I C    M E M B E R S
00095 // -------------------------------------------------------------------
00096 public:
00097 
00098   /** @name Constructors */
00099   //        ============
00100   //@{
00101   /**
00102    * @brief Copy constructor.
00103    *
00104    * See also qgar::Mask1dGaussD1::operator=,
00105    *          qgar::GenMask1d::deepCopy,
00106    *      and qgar::GenMask1d::shallowCopy.
00107    *
00108    * @warning Perform a deep copy: The coefficent map of the source mask
00109    * is duplicated.
00110    */
00111   Mask1dGaussD1(const Mask1dGaussD1& aMask);
00112 
00113   /**
00114    * @brief Initialize from given sigma (default <b>1.0</b>).
00115    * @param aSigma sigma of the Gaussian
00116    */
00117   Mask1dGaussD1(double aSigma = 1.0);
00118   //@}
00119 
00120   /** @name Destructor */
00121   //        ==========
00122   //@{
00123   /**
00124    * @brief Virtual destructor.
00125    */
00126   virtual ~Mask1dGaussD1();
00127   //@}
00128 
00129   /** @name Operators */
00130   //        =========
00131   //@{
00132   /**
00133    * @brief Assignment.
00134    * @param aMask mask to assign
00135    *
00136    * See also qgar::Mask1dGaussD1(Mask1dGaussD1<T>&),
00137    *          qgar::GenMask1d::deepCopy,
00138    *      and qgar::GenMask1d::shallowCopy.
00139    *
00140    * @warning Perform a <b>deep copy</b>: The coefficient map 
00141    * of the source mask is duplicated. Before the copy is performed, 
00142    * the destination mask is not supposed to have the same size
00143    * as the destination mask.
00144    */
00145   Mask1dGaussD1& operator=(const Mask1dGaussD1& aMask);
00146   //@}
00147 
00148 // -------------------------------------------------------------------
00149 }; // class Mask1dGaussD1
00150 
00151 
00152 } // namespace qgar
00153 
00154 #endif /* __MASK1DGAUSSD1_H_INCLUDED__ */