• Main Page
  • Data Structures
  • Files
  • File List
  • Globals

ne_evo.h

Go to the documentation of this file.
00001 /*===========================================================================
00002  NetEvo Foundation Library
00003  Copyright (C) 2009, 2010 Thomas E. Gorochowski <tgorochowski@me.com>
00004  Bristol Centre for Complexity Sciences, University of Bristol, Bristol, UK
00005  ---------------------------------------------------------------------------- 
00006  NetEvo is a computing framework designed to allow researchers to investigate 
00007  evolutionary aspects of dynamical complex networks. By providing tools to 
00008  easily integrate each of these factors in a coherent way, it is hoped a 
00009  greater understanding can be gained of key attributes and features displayed 
00010  by complex systems.
00011  
00012  NetEvo is open-source software released under the Open Source Initiative 
00013  (OSI) approved Non-Profit Open Software License ("Non-Profit OSL") 3.0. 
00014  Detailed information about this licence can be found in the COPYING file 
00015  included as part of the source distribution.
00016  
00017  This library is distributed in the hope that it will be useful, but
00018  WITHOUT ANY WARRANTY; without even the implied warranty of
00019  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
00020  ============================================================================*/
00029 #ifndef NE_EVO_H
00030 #define NE_EVO_H
00031 
00032 
00033 #include "ne_std.h"
00034 #include "ne_sys.h"
00035 
00037 typedef enum { 
00038    NE_STEP_PAUSE = 1, 
00039    NE_STEP_DYN   = 2, 
00040    NE_STEP_EVO   = 3  
00041 } ne_evo_step_t;
00042 
00043 
00044 /* Function to output a stream for an initial topology - types are all 0 */
00045 ne_err_code_t ne_evo_initial (ne_sys_t *sys, FILE *evoFile);
00046 
00047 /* Update string to add node. */
00048 ne_err_code_t ne_evo_add_node (char *str, ne_int_t type);
00049 /* Update string to delete a given node. */
00050 ne_err_code_t ne_evo_del_node (char *str, ne_int_t node);
00051 /* Update string to add edge. */
00052 ne_err_code_t ne_evo_add_edge (char *str, ne_int_t startNode, ne_int_t endNode, ne_int_t type);
00053 /* Update string to delete a given edge. */
00054 ne_err_code_t ne_evo_del_edge (char *str, ne_int_t startNode, ne_int_t endNode);
00055 /* Update string to set node type. */
00056 ne_err_code_t ne_evo_set_node_type (char *str, ne_int_t node, ne_int_t type);
00057 /* Update string to set edge type. */
00058 ne_err_code_t ne_evo_set_edge_type (char *str, ne_int_t startNode, ne_int_t endNode, ne_int_t type);
00059 /* Get string to for a type of step. See enum ne_evo_step_t for full list.*/
00060 char * ne_evo_step (ne_evo_step_t type);
00061 
00062 
00063 #endif /* NE_EVO_H */

Generated on Thu Aug 26 2010 11:04:24 for NetEvo by  doxygen 1.7.1