Index: trunk/archive/pslib/include/psMatrix.h
===================================================================
--- trunk/archive/pslib/include/psMatrix.h	(revision 160)
+++ trunk/archive/pslib/include/psMatrix.h	(revision 239)
@@ -25,5 +25,5 @@
 /** Invert matrix.  Not using restrict, to allow inversion to be done in-place */
 psMatrix *
-psInvertMatrix(psMatrix *out,		//!< Matrix to return, or NULL
+psMatrixInvert(psMatrix *out,		//!< Matrix to return, or NULL
 	       const psMatrix *myMatrix, //!< Matrix to be inverted
 	       float *restrict determinant //!< Determinant to return, or NULL
@@ -32,15 +32,24 @@
 /** Matrix determinant */
 float
-psDeterminant(const psMatrix *restrict myMatrix //!< Matrix to get determinant for
-	      );
+psMatrixDeterminant(const psMatrix *restrict myMatrix //!< Matrix to get determinant for
+		    );
 
-/** Matrix Multiplication.  Not using restrict, to allow matrix1 == matrix2, and to do multiplication
- * in-place
- */
-psMatrix
-psMatrixMultiply(psMatrix *out,		//!< Matrix to return, or NULL
-		 const psMatrix *matrix1, //!< Matrix 1
-		 const psMatrix *matrix2 //!< Matrix 2
-		 );
+/** Matrix operations */
+psMatrix *
+psMatrixOp(psMatrix *out,		//!< Matrix to return, or NULL
+	   const psMatrix *matrix1,	//!< Matrix 1
+	   const char *op,		//!< Operation to perform
+	   const psMatrix *matrix2	//!< Matrix 2
+	   );
+
+/** Transpose Matrix */
+psMatrix *
+psMatrixTranspose(psMatrix *out,	//!< Matrix to return, or NULL
+		  const psMatrix *myMatrix //!< Matrix to transpose
+		  );
+
+/** Convert matrix to vector.  Mainly for a 1-d matrix. */
+psVector *
+psMatrixToVector(psMatrix *myMatrix	//!< Matrix to convert
 
 #endif
