/**********************************************************
 * This file has been automatically created by "typemaker2"
 * from the file "tm_item.xml".
 * Please do not edit this file, all changes will be lost.
 * Better edit the mentioned source file instead.
 **********************************************************/

#ifndef TM_ITEM_H
#define TM_ITEM_H


#ifdef __cplusplus
extern "C" {
#endif

/* needed system headers */
#include <gwenhywfar/types.h>
#include <gwenhywfar/list1.h>
#include <gwenhywfar/list2.h>
#include <gwenhywfar/xml.h>

typedef struct TYPEMAKER2_ITEM TYPEMAKER2_ITEM;
GWEN_LIST_FUNCTION_DEFS(TYPEMAKER2_ITEM, Typemaker2_Item)
GWEN_LIST2_FUNCTION_DEFS(TYPEMAKER2_ITEM, Typemaker2_Item)




/** Constructor. */
TYPEMAKER2_ITEM *Typemaker2_Item_new(void);

/** Destructor. */
void Typemaker2_Item_free(TYPEMAKER2_ITEM *p_struct);

TYPEMAKER2_ITEM *Typemaker2_Item_dup(const TYPEMAKER2_ITEM *p_struct);

TYPEMAKER2_ITEM *Typemaker2_Item_copy(TYPEMAKER2_ITEM *p_struct, const TYPEMAKER2_ITEM *p_src);

/** Getter.
 * Use this function to get the member "name"
*/
const char *Typemaker2_Item_GetName(const TYPEMAKER2_ITEM *p_struct);

/** Getter.
 * Use this function to get the member "value"
*/
const char *Typemaker2_Item_GetValue(const TYPEMAKER2_ITEM *p_struct);

/** Setter.
 * Use this function to set the member "name"
*/
void Typemaker2_Item_SetName(TYPEMAKER2_ITEM *p_struct, const char *p_src);

/** Setter.
 * Use this function to set the member "value"
*/
void Typemaker2_Item_SetValue(TYPEMAKER2_ITEM *p_struct, const char *p_src);

TYPEMAKER2_ITEM_LIST *Typemaker2_Item_List_dup(const TYPEMAKER2_ITEM_LIST *p_src);

void Typemaker2_Item_ReadXml(TYPEMAKER2_ITEM *p_struct, GWEN_XMLNODE *p_db);

void Typemaker2_Item_WriteXml(const TYPEMAKER2_ITEM *p_struct, GWEN_XMLNODE *p_db);

void Typemaker2_Item_toXml(const TYPEMAKER2_ITEM *p_struct, GWEN_XMLNODE *p_db);

TYPEMAKER2_ITEM *Typemaker2_Item_fromXml(GWEN_XMLNODE *p_db);

#ifdef __cplusplus
}
#endif

#endif

