00001 /* @file psBinaryOp.h 00002 * 00003 * @brief Provides binary functions for simple matrix and vector element operations. 00004 * 00005 * Functions include: 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 * @author Ross Harman, MHPCC 00028 * @author Robert DeSonia, MHPCC 00029 * 00030 * @version $Revision: 1.5 $ $Name: $ 00031 * @date $Date: 2007/01/23 22:47:23 $ 00032 * 00033 * Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii 00034 */ 00035 00036 #ifndef PSBINARY_OP_H 00037 #define PSBINARY_OP_H 00038 00039 /// @addtogroup MathOps Mathematical Operations 00040 /// @{ 00041 00042 /** Perform simple binary arithmetic with images or vectors 00043 * 00044 * Performs addition, subtraction, multiplication, division, power, minumum, and maximum arithmetic 00045 * operations with images and vectors. Uses the form: 00046 * 00047 * out = in1 op in2, 00048 * 00049 * Where op is: "=", "+", "-", "*", "/", "^", "min", or "max" 00050 * 00051 * This function only supports vector-vector or image-image operations. 00052 * 00053 * @return psType* : Pointer to either psImage or psVector. 00054 */ 00055 psMathType* psBinaryOp( 00056 psPtr out, ///< Output type, either psImage or psVector. 00057 const psPtr in1, ///< First input, either psImage or psVector. 00058 const char *op, ///< Operator. 00059 const psPtr in2 ///< Second input, either psImage or psVector. 00060 ); 00061 00062 /// @} 00063 #endif // #ifndef PSBINARY_OP_H
1.5.1