BGE: Add level mode to property actuator
[blender.git] / source / blender / makesdna / DNA_listBase.h
index 817edd4ef9dc6e3ce387705afcfca9daa2abcccf..f6035cd665362a441fecf01cadb032bb89da4b4f 100644 (file)
@@ -1,17 +1,10 @@
-/**
- * blenlib/BLI_listBase.h    mar 2001 Nzc
- *
- * $Id$ 
- *
- * ***** BEGIN GPL/BL DUAL LICENSE BLOCK *****
+/*
+ * ***** BEGIN GPL LICENSE BLOCK *****
  *
  * This program is free software; you can redistribute it and/or
  * modify it under the terms of the GNU General Public License
  * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version. The Blender
- * Foundation also sells licenses for use in proprietary software under
- * the Blender License.  See http://www.blender.org/BL/ for information
- * about this.
+ * of the License, or (at your option) any later version.
  *
  * This program is distributed in the hope that it will be useful,
  * but WITHOUT ANY WARRANTY; without even the implied warranty of
@@ -20,7 +13,7 @@
  *
  * You should have received a copy of the GNU General Public License
  * along with this program; if not, write to the Free Software Foundation,
- * Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
  *
  * The Original Code is Copyright (C) 2001-2002 by NaN Holding BV.
  * All rights reserved.
  *
  * Contributor(s): none yet.
  *
- * ***** END GPL/BL DUAL LICENSE BLOCK *****
+ * ***** END GPL LICENSE BLOCK *****
  *
- * These structs are the foundation for all linked lists in the
- * library system.
  *
  */
 
-#ifndef DNA_LISTBASE_H
-#define DNA_LISTBASE_H
+/** \file DNA_listBase.h
+ *  \ingroup DNA
+ *  \brief These structs are the foundation for all linked lists in the
+ *         library system.
+ *
+ * Doubly-linked lists start from a ListBase and contain elements beginning
+ * with Link.
+ */
+
+#ifndef __DNA_LISTBASE_H__
+#define __DNA_LISTBASE_H__
 
 #ifdef __cplusplus
 extern "C" {
 #endif
 
-typedef struct Link
-{
-       struct Link *next,*prev;
+/* generic - all structs which are put into linked lists begin with this */
+typedef struct Link {
+       struct Link *next, *prev;
 } Link;
 
+
+/* simple subclass of Link--use this when it is not worth defining a custom one... */
+typedef struct LinkData {
+       struct LinkData *next, *prev;
+       void *data;
+} LinkData;
+
 /* never change the size of this! genfile.c detects pointerlen with it */
-typedef struct ListBase 
-{
+typedef struct ListBase  {
        void *first, *last;
 } ListBase;
 
@@ -61,3 +67,4 @@ typedef struct ListBase
 #endif
 
 #endif
+