/* GPS+: Service plugin for Miranda IM Copyright 2007-2008 persei persei@miranda.im http://persei.miranda.im http://svn.miranda.im/mainrepo/gps+ This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ #include "common.h" struct MM_INTERFACE mmi; HINSTANCE hInst; PLUGINLINK *pluginLink; PLUGININFOEX pluginInfo={ sizeof(PLUGININFOEX), "GPS+", __VERSION_DWORD, "Provides GPS position information from receiver and statuses support", "persei", "persei@miranda.im", "© 2005-2008 persei", "http://persei.miranda.im/", UNICODE_AWARE, 0, //doesn't replace anything built-in // {E500A600-7046-4100-98F1-BEC395D555FB} { 0xe500a600, 0x7046, 0x4100, { 0x98, 0xf1, 0xbe, 0xc3, 0x95, 0xd5, 0x55, 0xfb } } }; // {563BC9A2-5264-409f-B890-155D07F905A7} #define MIID_NAV_INFO { 0x563bc9a2, 0x5264, 0x409f, { 0xb8, 0x90, 0x15, 0x5d, 0x7, 0xf9, 0x5, 0xa7 } } // {70F2DF68-317A-463d-8A2F-16205D7C73C6} #define MIID_GPS_INFO { 0x70f2df68, 0x317a, 0x463d, { 0x8a, 0x2f, 0x16, 0x20, 0x5d, 0x7c, 0x73, 0xc6 } } BOOL WINAPI DllMain(HINSTANCE hinstDLL, DWORD fdwReason, LPVOID lpvReserved) { hInst = hinstDLL; return TRUE; } extern "C" __declspec(dllexport) PLUGININFOEX* MirandaPluginInfoEx(DWORD mirandaVersion) { return &pluginInfo; } static const MUUID interfaces[] = {MIID_NAV_INFO, MIID_GPS_INFO, MIID_LAST}; extern "C" __declspec(dllexport) const MUUID* MirandaPluginInterfaces(void) { return interfaces; } extern "C" int __declspec(dllexport) Load(PLUGINLINK *link) { pluginLink = link; mir_getMMI( &mmi ); InitOptions(); InitGPS(); InitServices(); return 0; } extern "C" int __declspec(dllexport) Unload(void) { gps.Disconnect(); return 0; }