Home About Applications Software License Documentation Download Community



Main Page | Class Hierarchy | Class List | Directories | File List | Class Members | File Members

parameter.h

Go to the documentation of this file.
00001 #ifndef I_PARAMETER
00002 #define I_PARAMETER
00003 
00004 #include "environ.h"
00005 
00006 struct tag_CObject;
00007 struct tag_CObjPersistent;
00008 struct tag_CObjClass;
00009 struct ATTRIBUTETYPE;
00010 
00011 typedef bool (TATTRIBUTETYPE_CONVERT)(struct tag_CObjPersistent *object,
00012                                       const struct ATTRIBUTETYPE *dest_type,
00013                                       const struct ATTRIBUTETYPE *src_type,
00014                                       int dest_index, int src_index,
00015                                       void *dest, const void *src);
00016 
00017 typedef bool (TATTRIBUTEMETHOD)(struct tag_CObjPersistent *object, void *data, int attribute_index);
00018 
00019 typedef struct ATTRIBUTETYPE {
00020    int size;
00021    TATTRIBUTETYPE_CONVERT *convert;
00022 } TAttributeType;
00023 
00024 typedef enum {
00025    PT_Attribute,
00026    PT_AttributeEnum,
00027    PT_AttributeArray,
00028    PT_Element,
00029    PT_ElementObject,
00030    PT_ElementObjectList,
00031    PT_Data,
00032    PT_Menu,
00033    PT_Void,
00034 } EParameterType;
00035 
00036 typedef enum {
00037    PO_INHERIT      = 1,
00038    PO_HASDEFAULT   = 2,
00039    PO_NODELIMSTRIP = 4,
00040    PO_ELEMENT_STRIPSPACES = 8,
00041    PO_ELEMENT_PAIR        = 16,
00042 } EParameterOption;
00043 
00044 typedef struct {
00045    struct tag_CObjClass *obj_class;
00046    EParameterType type;
00047    const TAttributeType *data_type;
00048    int enum_count;
00049    const char **enum_name;
00050    const char *name;
00051    int offset;
00052    TATTRIBUTEMETHOD *method;
00053    int options;
00054    const char *delim;
00055    const char *path;
00056    
00057    int index;                           /*>>>for quick reference*/
00058 } TParameter;
00059 
00060 typedef TParameter TAttribute;
00061 
00062 #endif /*I_PARAMETER*/

Generated on Sat Feb 26 15:54:37 2005 for Keystone by  doxygen 1.4.1