Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members

Arithmetic.hpp

Go to the documentation of this file.
00001 /* ImLib3D
00002  * Copyright (c) 2001, ULP-IPB Strasbourg.
00003  *
00004  * This program is free software; you can redistribute it and/or modify
00005  * it under the terms of the GNU General Public License as published by
00006  * the Free Software Foundation; either version 2 of the License, or (at
00007  * your option) any later version.
00008  * 
00009  * This program is distributed in the hope that it will be useful, but
00010  * WITHOUT ANY WARRANTY; without even the implied warranty of
00011  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00012  * General Public License for more details.
00013  * 
00014  * You should have received a copy of the GNU General Public License
00015  * along with this program; if not, write to the Free Software
00016  * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
00017  */
00032 #ifndef _Arithmetic_hpp
00033 #define _Arithmetic_hpp
00034 
00035 #include<ImLib3D/ImageProcessor.hpp>
00036 
00037 namespace IP3D
00038 {
00047     template <class ImageType>
00048     void Addition(const ImageType& im1, const ImageType& im2, ImageType& imDest);
00049     template <class ImageType>
00050     static void Apply(const ImageType& im1, const typename ImageType::value_type& scalarValue, ImageType& imDest);
00051 };
00052 
00053 namespace IP3D
00054 {
00063     template <class ImageType>
00064     void AdditionWithConstant(const ImageType& im1, const typename ImageType::value_type& scalarValue, ImageType& imDest);
00065 };
00066 
00067 
00068 namespace IP3D
00069 {
00078     template <class ImageType>
00079     void Difference(const ImageType& im1, const ImageType& im2, ImageType& imDest);
00080 };
00081 namespace IP3D
00082 {
00091     template <class ImageType>
00092     void DifferenceWithConstant(const ImageType& im1, const typename ImageType::value_type& scalarValue, ImageType& imDest);
00093 };
00094 
00095 
00096 namespace IP3D
00097 {
00106     template <class ImageType>
00107     void Multiplication(const ImageType& im1, const ImageType& im2, ImageType& imDest);
00108 };
00109 
00110 namespace IP3D
00111 {
00120     template <class ImageType>
00121     void MultiplicationWithConstant(const ImageType& im1, double scalarValue, ImageType& imDest);
00122 };
00123 
00124 
00125 namespace IP3D
00126 {
00135     template <class ImageType>
00136     void Division(const ImageType& im1, const ImageType& im2, ImageType& imDest);
00137 };
00138 
00139 namespace IP3D
00140 {
00149     template <class ImageType>
00150     void MaxImage(const ImageType& im1, const ImageType& im2, ImageType& imDest);
00151 };
00152 
00153 namespace IP3D
00154 {
00162     template <class ImageType>
00163     void Abs(const ImageType& im1, ImageType& imDest);
00164 };
00165 
00166 #include<ImLib3D/Arithmetic.hxx>
00167 
00168 #endif  //_Arithmetic_hpp

Generated on Fri Jun 17 13:35:14 2005 for ImLib3D by  doxygen 1.4.2