home *** CD-ROM | disk | FTP | other *** search
/ PC Pro 2002 April / pcpro0402.iso / essentials / graphics / Gimp / gimp-src-20001226.exe / src / gimp / unofficial-plug-ins / mathmap / macros.h < prev    next >
Encoding:
C/C++ Source or Header  |  2000-04-21  |  1.2 KB  |  51 lines

  1. /* -*- c -*- */
  2.  
  3. /*
  4.  * macros.h
  5.  *
  6.  * MathMap
  7.  *
  8.  * Copyright (C) 1997-2000 Mark Probst
  9.  *
  10.  * This program is free software; you can redistribute it and/or
  11.  * modify it under the terms of the GNU General Public License
  12.  * as published by the Free Software Foundation; either version 2
  13.  * of the License, or (at your option) any later version.
  14.  *
  15.  * This program is distributed in the hope that it will be useful,
  16.  * but WITHOUT ANY WARRANTY; without even the implied warranty of
  17.  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  18.  * GNU General Public License for more details.
  19.  *
  20.  * You should have received a copy of the GNU General Public License
  21.  * along with this program; if not, write to the Free Software
  22.  * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  23.  */
  24.  
  25. #ifndef __MACROS_H__
  26. #define __MACROS_H__
  27.  
  28. #include "tuples.h"
  29.  
  30. #define MAX_MACRO_LENGTH     63
  31.  
  32. struct _exprtree;
  33.  
  34. typedef struct _exprtree* (*macro_function_t) (struct _exprtree *args);
  35.  
  36. typedef struct _macro_t
  37. {
  38.     char name[MAX_MACRO_LENGTH + 1];
  39.     tuple_info_t info;
  40.  
  41.     macro_function_t function;
  42.  
  43.     struct _macro_t *next;
  44. } var_macro_t;
  45.  
  46. macro_function_t lookup_variable_macro (const char *name, tuple_info_t *info);
  47.  
  48. void init_macros (void);
  49.  
  50. #endif
  51.