summaryrefslogtreecommitdiff
path: root/mtx.h
diff options
context:
space:
mode:
authorRichard Braun <syn@sceen.net>2006-05-29 19:45:51 +0000
committerRichard Braun <syn@sceen.net>2006-05-29 19:45:51 +0000
commit0a458560bcc488327f4a12f4918a0b5015c04330 (patch)
treeadd917e8dd6ba839faaa3e00479d12a3e8de8ff1 /mtx.h
parent65947c8a9e7444377abd4be7e3895bd905045f8e (diff)
Implemented matrix interpretation. Began Doxygenation.
Diffstat (limited to 'mtx.h')
-rw-r--r--mtx.h60
1 files changed, 50 insertions, 10 deletions
diff --git a/mtx.h b/mtx.h
index fcc308d..eb55154 100644
--- a/mtx.h
+++ b/mtx.h
@@ -18,39 +18,74 @@
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
+/**
+ * \file mtx.h
+ * \brief Global header.
+ *
+ * This header includes API definitions and is used to solve inclusion loops.
+ */
+
#ifndef _MTX_H
#define _MTX_H
#include <stdint.h>
-/*
- * Software version and notice.
+/**
+ * \def MTX_VERSION
+ * \brief Software version.
*/
#define MTX_VERSION "0.1"
+
+/**
+ * \def MTX_NOTICE
+ * \brief Software notice.
+ */
#define MTX_NOTICE "mtx " MTX_VERSION "\n" \
"Copyright (C) 2005-2006 Richard Braun.\n" \
"This is free software. You may redistribute copies of it under the terms of\n" \
"the GNU General Public License <http://www.gnu.org/licenses/gpl.html>.\n" \
"There is NO WARRANTY, to the extent permitted by law.\n"
-/*
- * Default precision used for decimal floating point representation.
+/**
+ * \def MTX_DEFAULT_PRECISION
+ * \brief Default precision.
+ *
+ * Used for decimal floating point representation.
*/
#define MTX_DEFAULT_PRECISION 8
-/*
- * The maximum usable base for conversions.
+/**
+ * \def MTX_MAX_BASE
+ * \brief Maximum usable base for conversions.
*/
#define MTX_MAX_BASE 16
-/*
- * Default base.
+/**
+ * \def MTX_DEFAULT_BASE
+ * \brief Default base.
*/
#define MTX_DEFAULT_BASE 10
-/*
- * Definition of mtx_int_t type, defaulting to 32 bits words.
+/**
+ * \def MTX_INT_BITS
+ * \brief Number of bits in mtx_int_t words.
+ *
+ * If USE_64BITS_WORDS is defined, mtx_int_t words will be 64 bits large,
+ * otherwise they'll be 32 bits large.
+ */
+
+/**
+ * \def MTX_INT_HALF
+ * \brief Half of 2^MTX_INT_BITS.
+ *
+ * This macro is used to get the most significant bit of mtx_int_t words.
*/
+
+/**
+ * \typedef uint64_t mtx_int_t
+ * \brief Type definition for words used in MtxInteger.
+ */
+
#ifdef USE_64BITS_WORDS
#define MTX_INT_BITS 64
#define MTX_INT_HALF 0x8000000000000000ull
@@ -67,6 +102,11 @@ typedef uint32_t mtx_int_t;
/*
* Declare types which cause inclusion loops here.
*/
+
+/**
+ * \typedef std::vector<std::string> mtx_expression_t
+ * \brief Vector of strings used to store lexical elements.
+ */
typedef std::vector<std::string> mtx_expression_t;
class MtxMatrix;
class MtxSymbol;