00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018 #ifndef AXIS2_PHASES_INFO_H
00019 #define AXIS2_PHASES_INFO_H
00020
00031 #include <axis2_const.h>
00032 #include <axis2_error.h>
00033 #include <axis2_defines.h>
00034 #include <axis2_env.h>
00035 #include <axis2_allocator.h>
00036 #include <axis2_string.h>
00037 #include <axis2_array_list.h>
00038 #include <axis2_op.h>
00039 #include <axis2_phase.h>
00040
00041 #ifdef __cplusplus
00042 extern "C"
00043 {
00044 #endif
00045
00046
00048 typedef struct axis2_phases_info_ops axis2_phases_info_ops_t;
00050 typedef struct axis2_phases_info axis2_phases_info_t;
00051
00056 struct axis2_phases_info_ops
00057 {
00063 axis2_status_t (AXIS2_CALL *
00064 free)(
00065 axis2_phases_info_t *phases_info,
00066 const axis2_env_t *env);
00067
00074 axis2_status_t (AXIS2_CALL *
00075 set_in_phases)(
00076 axis2_phases_info_t *phases_info,
00077 const axis2_env_t *env,
00078 axis2_array_list_t *in_phases);
00079
00086 axis2_status_t (AXIS2_CALL *
00087 set_out_phases)(
00088 axis2_phases_info_t *phases_info,
00089 const axis2_env_t *env,
00090 axis2_array_list_t *out_phases);
00091
00098 axis2_status_t (AXIS2_CALL *
00099 set_in_faultphases)(
00100 axis2_phases_info_t *phases_info,
00101 const axis2_env_t *env,
00102 axis2_array_list_t *in_faultphases);
00103
00110 axis2_status_t (AXIS2_CALL *
00111 set_out_faultphases)(
00112 axis2_phases_info_t *phases_info,
00113 const axis2_env_t *env,
00114 axis2_array_list_t *out_faultphases);
00115
00120 axis2_array_list_t *(AXIS2_CALL *
00121 get_in_phases)(
00122 const axis2_phases_info_t *phases_info,
00123 const axis2_env_t *env);
00124
00129 axis2_array_list_t *(AXIS2_CALL *
00130 get_out_phases)(
00131 const axis2_phases_info_t *phases_info,
00132 const axis2_env_t *env);
00133
00138 axis2_array_list_t *(AXIS2_CALL *
00139 get_in_faultphases)(
00140 const axis2_phases_info_t *phases_info,
00141 const axis2_env_t *env);
00142
00147 axis2_array_list_t *(AXIS2_CALL *
00148 get_out_faultphases)(
00149 const axis2_phases_info_t *phases_info,
00150 const axis2_env_t *env);
00151
00156 axis2_array_list_t *(AXIS2_CALL *
00157 get_op_in_phases)(
00158 const axis2_phases_info_t *phases_info,
00159 const axis2_env_t *env);
00160
00165 axis2_array_list_t *(AXIS2_CALL *
00166 get_op_out_phases)(
00167 const axis2_phases_info_t *phases_info,
00168 const axis2_env_t *env);
00169
00174 axis2_array_list_t *(AXIS2_CALL *
00175 get_op_in_faultphases)(
00176 const axis2_phases_info_t *phases_info,
00177 const axis2_env_t *env);
00178
00183 axis2_array_list_t *(AXIS2_CALL *
00184 get_op_out_faultphases)(
00185 const axis2_phases_info_t *phases_info,
00186 const axis2_env_t *env);
00187
00194 axis2_status_t (AXIS2_CALL *
00195 set_op_phases)(
00196 axis2_phases_info_t *phases_info,
00197 const axis2_env_t *env,
00198 struct axis2_op *axis2_opt);
00199
00200 };
00201
00205 struct axis2_phases_info
00206 {
00208 axis2_phases_info_ops_t *ops;
00209 };
00210
00215 AXIS2_EXTERN axis2_phases_info_t *AXIS2_CALL
00216 axis2_phases_info_create (
00217 const axis2_env_t *env);
00218
00219 axis2_array_list_t *AXIS2_CALL
00220 axis2_phases_info_copy_flow(
00221 const axis2_env_t *env,
00222 const axis2_array_list_t *flow_to_copy);
00223
00224
00227 #define AXIS2_PHASES_INFO_FREE(phases_info, env) \
00228 ((phases_info)->ops->free (phases_info, env))
00229
00232 #define AXIS2_PHASES_INFO_SET_IN_PHASES(phases_info, env, in_phases) \
00233 ((phases_info)->ops->set_in_phases(phases_info, env, in_phases))
00234
00237 #define AXIS2_PHASES_INFO_SET_OUT_PHASES(phases_info, env, out_phases) \
00238 ((phases_info)->ops->set_out_phases(phases_info, env, out_phases))
00239
00242 #define AXIS2_PHASES_INFO_SET_IN_FAULTPHASES(phases_info, env, in_faultphases) \
00243 ((phases_info)->ops->set_in_faultphases(phases_info, env, in_faultphases))
00244
00247 #define AXIS2_PHASES_INFO_SET_OUT_FAULTPHASES(phases_info, env, out_faultphases) \
00248 ((phases_info)->ops->set_out_faultphases(phases_info, env, out_faultphases))
00249
00252 #define AXIS2_PHASES_INFO_GET_IN_PHASES(phases_info, env) \
00253 ((phases_info)->ops->get_in_phases(phases_info, env))
00254
00257 #define AXIS2_PHASES_INFO_GET_OUT_PHASES(phases_info, env) \
00258 ((phases_info)->ops->get_out_phases(phases_info, env))
00259
00262 #define AXIS2_PHASES_INFO_GET_IN_FAULTPHASES(phases_info, env) \
00263 ((phases_info)->ops->get_in_faultphases(phases_info, env))
00264
00267 #define AXIS2_PHASES_INFO_GET_OUT_FAULTPHASES(phases_info, env) \
00268 ((phases_info)->ops->get_out_faultphases(phases_info, env))
00269
00272 #define AXIS2_PHASES_INFO_GET_OP_IN_PHASES(phases_info, env) \
00273 ((phases_info)->ops->get_op_in_phases(phases_info, env))
00274
00277 #define AXIS2_PHASES_INFO_GET_OP_OUT_PHASES(phases_info, env) \
00278 ((phases_info)->ops->get_op_out_phases(phases_info, env))
00279
00282 #define AXIS2_PHASES_INFO_GET_OP_IN_FAULTPHASES(phases_info, env) \
00283 ((phases_info)->ops->get_op_in_faultphases(phases_info, env))
00284
00287 #define AXIS2_PHASES_INFO_GET_OP_OUT_FAULTPHASES(phases_info, env) \
00288 ((phases_info)->ops->get_op_out_faultphases(phases_info, env))
00289
00292 #define AXIS2_PHASES_INFO_SET_OP_PHASES(phases_info, env, axis2_opt) \
00293 ((phases_info)->ops->set_op_phases(phases_info, env, axis2_opt))
00294
00295
00296
00298 #ifdef __cplusplus
00299 }
00300 #endif
00301
00302 #endif