00001 /** @file psBinaryOp.h 00002 * 00003 * @brief Provides binary functions for simple matrix and vector element operations. Functions 00004 * include: 00005 * 00006 * Addition (+) 00007 * Subtraction (-) 00008 * Multiplication (*) 00009 * Division (/) 00010 * Power (^) 00011 * Minimum (min) 00012 * Maximum (max) 00013 * Absolute value (abs) 00014 * Exponent (exp) 00015 * Natural Log (ln) 00016 * Power of 10 (ten) 00017 * Log (log) 00018 * Sine (sin or dsin) 00019 * Cosine (cos or dcos) 00020 * Tangent (tan or dtan) 00021 * Arcsine (asin or dasin) 00022 * Arccosine (acos or dacos) 00023 * Arctan (atan or datan) 00024 * 00025 * Currently only vector-vector and image-image binary operations are supported. 00026 * 00027 * @ingroup MatrixArithmetic 00028 * 00029 * @author Ross Harman, MHPCC 00030 * @author Robert DeSonia, MHPCC 00031 * 00032 * @version $Revision: 1.1.1.1 $ $Name: $ 00033 * @date $Date: 2005/06/15 21:08:12 $ 00034 * 00035 * Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii 00036 */ 00037 00038 #ifndef PSBINARY_OP_H 00039 #define PSBINARY_OP_H 00040 00041 /// @addtogroup MatrixArithmetic 00042 /// @{ 00043 00044 /** Perform simple binary arithmetic with images or vectors 00045 * 00046 * Performs addition, subtraction, multiplication, division, power, minumum, and maximum arithmetic 00047 * operations with images and vectors. Uses the form: 00048 * 00049 * out = in1 op in2, 00050 * 00051 * Where op is: "=", "+", "-", "*", "/", "^", "min", or "max" 00052 * 00053 * This function only supports vector-vector or image-image operations. 00054 * 00055 * @return psType* : Pointer to either psImage or psVector. 00056 */ 00057 psType* psBinaryOp( 00058 psPtr out, ///< Output type, either psImage or psVector. 00059 psPtr in1, ///< First input, either psImage or psVector. 00060 char *op, ///< Operator. 00061 psPtr in2 ///< Second input, either psImage or psVector. 00062 ); 00063 00064 /// @} 00065 00066 #endif // #ifndef PSBINARY_OP_H
1.4.1