00001 /* AbiSource Application Framework 00002 * Copyright (C) 2001 Mike Nordell. Portions 00003 * Copyright (C) 1998 AbiSource, Inc. Other Portions 00004 * Copyright (C) 2001 Dom 00005 * This program is free software; you can redistribute it and/or 00006 * modify it under the terms of the GNU General Public License 00007 * as published by the Free Software Foundation; either version 2 00008 * of the License, or (at your option) any later version. 00009 * 00010 * This program is distributed in the hope that it will be useful, 00011 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00012 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00013 * GNU General Public License for more details. 00014 * 00015 * You should have received a copy of the GNU General Public License 00016 * along with this program; if not, write to the Free Software 00017 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 00018 * 02110-1301 USA. 00019 */ 00020 00021 #ifndef XAP_WIN32MODULE_H 00022 #define XAP_WIN32MODULE_H 00023 00024 #include "xap_Module.h" 00025 00031 class ABI_EXPORT XAP_Win32Module : public XAP_Module 00032 { 00033 00034 friend class XAP_ModuleManager; 00035 00036 protected: 00037 00038 XAP_Win32Module(); 00039 virtual ~XAP_Win32Module(); 00040 00041 virtual bool load(const char* name); 00042 virtual bool unload(); 00043 00044 public: 00045 virtual bool resolveSymbol(const char* symbol_name, void** symbol); 00046 virtual bool getModuleName(char** dest) const; 00047 virtual bool getErrorMsg(char** dest) const; 00048 00049 class XAP_Win32ModuleImpl* pimpl; 00050 }; 00051 00052 #endif /* XAP_WIN32MODULE_H */