
/*
 *
 *  Material Modeling Platform Package
 *  
 *  Copyright(c) 2000, The Japan Research Institute, Ltd.
 *  All rights reserved.
 *
 */

/*   symbol table header for C-parser */
#ifndef YUT_OBJECT_H_
#define YUT_OBJECT_H_

typedef	struct Objectlist {
	int	depth ;
	int	area ;		/* Object definition area */
       	int	start ;		/* Object definition start */
       	int	end ;		/* Object definition end */
	char	*name ;		/* Object name		*/
       	struct	Objectlist  *next; /* to link to another */
       	struct	Objectlist  *prev; /* to link to another */
}	Objectlist ;

typedef struct Objectdef {
	int		lookup ;
	int		area ;
	int		start ;
	int		end ;
	char		name[128] ;
	Objectlist	*olist ;
	Objectlist	*startlist ;
	Objectlist	*endlist ;
} Objectdef;

#if defined(__cplusplus)
extern "C" {
#endif

void            yut_initobj(Objectdef*);
void            yut_freeobj(Objectdef*);
Objectlist	*yut_getnextobj(Objectdef*), *yut_constobj(Objectdef*);

#if defined(__cplusplus)
};
#endif /* end of extren C */
#endif
