00001 #ifndef PV_2WAY_ENGINE_FACTORY_H_INCLUDED
00002 #define PV_2WAY_ENGINE_FACTORY_H_INCLUDED
00003
00004 #ifndef PV_2WAY_BASIC_TYPES_H_INCLUDED
00005 #include "pv_2way_basic_types.h"
00006 #endif
00007
00008 class PVCommandStatusObserver;
00009 class PVInformationalEventObserver;
00010 class PVErrorEventObserver;
00011 class CPV2WayInterface;
00012
00013 class CPV2WayEngineFactory
00014 {
00015 public:
00016 OSCL_IMPORT_REF static void Init();
00017
00018 OSCL_IMPORT_REF static void Cleanup();
00019
00031 OSCL_IMPORT_REF static CPV2WayInterface *CreateTerminal(PV2WayTerminalType aTerminalType,
00032 PVCommandStatusObserver* aCmdStatusObserver,
00033 PVInformationalEventObserver *aInfoEventObserver,
00034 PVErrorEventObserver *aErrorEventObserver);
00035
00045 OSCL_IMPORT_REF static void DeleteTerminal(CPV2WayInterface* terminal);
00046 };
00047
00048 #endif // PV_2WAY_ENGINE_FACTORY_H_INCLUDED