diff options
Diffstat (limited to 'c/plugin.h')
-rw-r--r-- | c/plugin.h | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/c/plugin.h b/c/plugin.h new file mode 100644 index 0000000..92deed2 --- /dev/null +++ b/c/plugin.h @@ -0,0 +1,49 @@ +/* Copyright (C) 2009 Luke Shumaker + + This file is part of rvs. + + rvs 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, or (at your + option) any later version. + + rvs is distributed in the hope that it will be useful, but + WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + See the GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with rvs; see the file COPYING. + If not, write to the Free Software Foundation, + 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. +*/ + +struct plugin +{ + char *name; + + struct plugin_command *child; + struct plugin *next; +}; + +struct plugin_command +{ + char *name; + + /*plugin ID*/ + struct plugin *plugin; /* which plugin does it belong to? */ + struct plugin_command *p_next; /* next command in this plugin (linked list)*/ + + /*dependancy tree*/ + struct plugin_command *depend; /* what does this depend on? */ + char *depends; /* what does this depend on? */ + struct plugin_command *child; /* what depends on this? (linked list) */ + struct plugin_command *d_next; /* next command w/ same dependancy (linked list) */ +}; + +struct plugin_tree +{ + struct plugin *plugins; + struct plugin_command *depend; +}; + |