00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 #ifndef _C_MSGBUILDCONTEXTFACTORY_H
00021 #define _C_MSGBUILDCONTEXTFACTORY_H
00022
00023 #include "C_MsgBuildContext.hpp"
00024
00025 class C_MsgBuildContextFactory {
00026 public:
00027 C_MsgBuildContextFactory() {} ;
00028 virtual ~C_MsgBuildContextFactory() {} ;
00029
00030 virtual C_MsgBuildContext* create_context() = 0 ;
00031 virtual void delete_context(C_MsgBuildContext**) = 0 ;
00032 virtual C_MsgBuildContext::T_ContextFunction get_function (char *) = 0 ;
00033 virtual C_MsgBuildContext::T_ContextStringFunction get_string_function
00034 (char *) = 0 ;
00035
00036 } ;
00037
00038 typedef C_MsgBuildContextFactory* (*T_CreateContextFactory) () ;
00039 typedef void (*T_DeleteContextFactory) (C_MsgBuildContextFactory**);
00040 typedef struct _factory_info_t {
00041 T_CreateContextFactory m_create ;
00042 T_DeleteContextFactory m_delete ;
00043 } T_FactoryInfo, *T_pFactoryInfo ;
00044
00045 #endif // _C_MSGBUILDCONTEXTFACTORY_H