00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017 #ifndef XML_SCHEMA_SIMPLE_CONTENT_EXTENSION_H
00018 #define XML_SCHEMA_SIMPLE_CONTENT_EXTENSION_H
00019
00029 #include <xml_schema_annotated.h>
00030 #include <xml_schema_obj_collection.h>
00031 #include <xml_schema_any_attribute.h>
00032 #include <axis2_hash.h>
00033 #include <axis2_qname.h>
00041 #ifdef __cplusplus
00042 extern "C"
00043 {
00044 #endif
00045
00046 typedef struct xml_schema_simple_content_extension
00047 xml_schema_simple_content_extension_t;
00048
00049 typedef struct xml_schema_simple_content_extension_ops
00050 xml_schema_simple_content_extension_ops_t;
00051
00052 struct xml_schema_simple_content_extension_ops
00053 {
00054 axis2_status_t (AXIS2_CALL *
00055 free) (void *sim_content_ext,
00056 const axis2_env_t *env);
00057
00058 xml_schema_annotated_t *(AXIS2_CALL *
00059 get_base_impl) (void *sim_content_ext,
00060 const axis2_env_t *env);
00061
00062 xml_schema_types_t (AXIS2_CALL *
00063 get_type)(void *sim_content_ext,
00064 const axis2_env_t *env);
00065
00066 axis2_hash_t* (AXIS2_CALL *
00067 super_objs)(void *sim_content_ext,
00068 const axis2_env_t *env);
00069
00070 xml_schema_any_attribute_t* (AXIS2_CALL *
00071 get_any_attribute)(
00072 void* sim_content_ext,
00073 const axis2_env_t *env);
00074
00075 axis2_status_t (AXIS2_CALL *
00076 set_any_attribute)(
00077 void *sim_content_ext,
00078 const axis2_env_t *env,
00079 xml_schema_any_attribute_t *any_attr);
00080
00081 xml_schema_obj_collection_t* (AXIS2_CALL *
00082 get_attributes)(
00083 void *sim_content_ext,
00084 const axis2_env_t *env);
00085
00086 axis2_qname_t* (AXIS2_CALL*
00087 get_base_type_name)(
00088 void *sim_content_ext,
00089 const axis2_env_t *env);
00090
00091 axis2_status_t (AXIS2_CALL *
00092 set_base_type_name)(
00093 void *sim_content_ext,
00094 const axis2_env_t *env,
00095 axis2_qname_t *qname);
00096
00097
00098
00099 };
00100
00101 struct xml_schema_simple_content_extension
00102 {
00103 xml_schema_annotated_t base;
00104 xml_schema_simple_content_extension_ops_t *ops;
00105 };
00106
00110 AXIS2_EXTERN xml_schema_simple_content_extension_t * AXIS2_CALL
00111 xml_schema_simple_content_extension_create(const axis2_env_t *env);
00112
00113
00114
00115 #define XML_SCHEMA_SIMPLE_CONTENT_EXTENSION_FREE(sim_content_ext, env) \
00116 (((xml_schema_simple_content_extension_t *)sim_content_ext)->ops->\
00117 free(sim_content_ext, env))
00118
00119 #define XML_SCHEMA_SIMPLE_CONTENT_EXTENSION_GET_BASE_IMPL(sim_content_ext, env) \
00120 (((xml_schema_simple_content_extension_t *)sim_content_ext)->ops->\
00121 get_base_impl(sim_content_ext, env))
00122
00123 #define XML_SCHEMA_SIMPLE_CONTENT_EXTENSION_GET_TYPE(sim_content_ext, env) \
00124 (((xml_schema_simple_content_extension_t *)sim_content_ext)->ops->\
00125 get_type(sim_content_ext, env))
00126
00127 #define XML_SCHEMA_SIMPLE_CONTENT_EXTENSION_SUPER_OBJS(sim_content_ext, env) \
00128 (((xml_schema_simple_content_extension_t *)sim_content_ext)->ops->\
00129 super_objs(sim_content_ext, env))
00130
00131 #define XML_SCHEMA_SIMPLE_CONTENT_EXTENSION_GET_ANY_ATTRIBUTE(sim_content_ext, env) \
00132 (((xml_schema_simple_content_extension_t *)sim_content_ext)->ops->\
00133 get_any_attribute(sim_content_ext, env))
00134
00135 #define XML_SCHEMA_SIMPLE_CONTENT_EXTENSION_SET_ANY_ATTRIBUTE(sim_content_ext, env, any_attr)\
00136 (((xml_schema_simple_content_extension_t *)sim_content_ext)->ops->\
00137 set_any_attribute(sim_content_ext, env, any_attr ))
00138
00139 #define XML_SCHEMA_SIMPLE_CONTENT_EXTENSION_GET_ATTRIBUTES(sim_content_ext, env) \
00140 (((xml_schema_simple_content_extension_t *)sim_content_ext)->ops->\
00141 get_attributes(sim_content_ext, env))
00142
00143 #define XML_SCHEMA_SIMPLE_CONTENT_EXTENSION_GET_BASE_TYPE_NAME(sim_content_ext, env)\
00144 (((xml_schema_simple_content_extension_t *)sim_content_ext)->ops->\
00145 get_base_type_name(sim_content_ext, env))
00146
00147 #define XML_SCHEMA_SIMPLE_CONTENT_EXTENSION_SET_BASE_TYPE_NAME(sim_content_ext, \
00148 env, base_type_name) \
00149 (((xml_schema_simple_content_extension_t *)sim_content_ext)->ops->\
00150 set_base_type_name(sim_content_ext, env, base_type_name))
00151
00152
00154 #ifdef __cplusplus
00155 }
00156 #endif
00157 #endif