summaryrefslogtreecommitdiffstats
path: root/src/sc.h
diff options
context:
space:
mode:
authorCharles Edward Pax <charles.pax@gmail.com>2017-07-27 21:00:29 +0800
committerCharles Edward Pax <charles.pax@gmail.com>2017-07-27 21:00:29 +0800
commitcc59fbab670fb5be758f774616b16045c3117af2 (patch)
tree93f5ee51925f2c84b2823d0d84580e2d2e34e7aa /src/sc.h
parent7e6da4f0de31702ddc0ec0eea92c7bf68594dcf2 (diff)
Doxygen comments in some headers.
Diffstat (limited to 'src/sc.h')
-rw-r--r--src/sc.h49
1 files changed, 48 insertions, 1 deletions
diff --git a/src/sc.h b/src/sc.h
index 84bb434..15a247a 100644
--- a/src/sc.h
+++ b/src/sc.h
@@ -1,3 +1,47 @@
+/*******************************************************************************
+ * Copyright (c) 2013-2017, Andrés Martinelli <andmarti@gmail.com *
+ * All rights reserved. *
+ * *
+ * This file is a part of SC-IM *
+ * *
+ * SC-IM is a spreadsheet program that is based on SC. The original authors *
+ * of SC are James Gosling and Mark Weiser, and mods were later added by *
+ * Chuck Martin. *
+ * *
+ * Redistribution and use in source and binary forms, with or without *
+ * modification, are permitted provided that the following conditions are met: *
+ * 1. Redistributions of source code must retain the above copyright *
+ * notice, this list of conditions and the following disclaimer. *
+ * 2. Redistributions in binary form must reproduce the above copyright *
+ * notice, this list of conditions and the following disclaimer in the *
+ * documentation and/or other materials provided with the distribution. *
+ * 3. All advertising materials mentioning features or use of this software *
+ * must display the following acknowledgement: *
+ * This product includes software developed by Andrés Martinelli *
+ * <andmarti@gmail.com>. *
+ * 4. Neither the name of the Andrés Martinelli nor the *
+ * names of other contributors may be used to endorse or promote products *
+ * derived from this software without specific prior written permission. *
+ * *
+ * THIS SOFTWARE IS PROVIDED BY ANDRES MARTINELLI ''AS IS'' AND ANY *
+ * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED *
+ * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE *
+ * DISCLAIMED. IN NO EVENT SHALL ANDRES MARTINELLI BE LIABLE FOR ANY *
+ * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES *
+ * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;*
+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND *
+ * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT *
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE *
+ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. *
+ *******************************************************************************/
+
+/**
+ * \file sc.h
+ * \author Andrés Martinelli <andmarti@gmail.com>
+ * \date 2017-07-18
+ * \brief Header file for sc.c
+ */
+
#ifndef SC_H_
#define SC_H_
@@ -66,6 +110,9 @@ extern struct ent ** ATBL(struct ent ***,int ,int );
#define VALID_CELL(p, r, c) ((p = *ATBL(tbl, r, c)) && ((p->flags & is_valid) || p->label))
+// TODO Properly document these structs using doxygen tags. Possibly
+// not the same as functions. What is the standar way?
+
/* info for each cell, only alloc'd when something is stored in a cell */
struct ent {
double v; /* v && label are set in EvalAll() */
@@ -265,7 +312,7 @@ struct go_save {
#define NUM 1
#define STR 2
#define GROWAMT 30 /* default minimum amount to grow */
-#define GROWNEW 1 /* first time table */
+#define GROWNEW 1 /**< first time table */
#define GROWROW 2 /* add rows */
#define GROWCOL 3 /* add columns */
#define GROWBOTH 4 /* grow both */