00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018 #ifndef AXIOM_DATA_SOURCE_H
00019 #define AXIOM_DATA_SOURCE_H
00020
00026 #include <axutil_env.h>
00027 #include <axiom_node.h>
00028 #include <axiom_output.h>
00029 #include <axutil_stream.h>
00030
00031 #ifdef __cplusplus
00032 extern "C"
00033 {
00034 #endif
00035
00047 typedef struct axiom_data_source axiom_data_source_t;
00048
00049
00061 AXIS2_EXTERN axiom_data_source_t * AXIS2_CALL
00062 axiom_data_source_create(const axutil_env_t *env,
00063 axiom_node_t *parent,
00064 axiom_node_t ** node);
00065
00073 AXIS2_EXTERN void AXIS2_CALL
00074 axiom_data_source_free(struct axiom_data_source *om_data_source,
00075 const axutil_env_t *env);
00076
00085 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00086 axiom_data_source_serialize(struct axiom_data_source *om_data_source,
00087 const axutil_env_t *env,
00088 axiom_output_t *om_output);
00097 AXIS2_EXTERN axutil_stream_t * AXIS2_CALL
00098 axiom_data_source_get_stream(struct axiom_data_source *om_data_source,
00099 const axutil_env_t *env);
00100
00101
00104 #ifdef __cplusplus
00105 }
00106 #endif
00107
00108 #endif