summaryrefslogtreecommitdiff
path: root/wrapper/mingwms.cpp
blob: e0d9458606101b80602db7d4fc45a9ba460b4ae8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
//  MSPlugins - MINGW Milkshape wrapper
//
//  Copyright (C) 2005  Ian Cowburn (ianc@noddybox.demon.co.uk)
//
//  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
//
//  -------------------------------------------------------------------------
//
static const char rcs_id[]="$Id$";

#include <msPlugin.h>
#include "mingwms.h"

class MingwPlugin : public cMsPlugIn
{
public:
    MingwPlugin(int type, const char * (*GetName)(), int (*Exectute)(msModel*))
    {
    	m_type=type;
	m_getname=GetName;
	m_execute=Exectute;
    }

    int GetType()
    {
    	return m_type;
    }

    const char *GetTitle()
    {
    	return m_getname();
    }

    int Execute(msModel *p)
    {
    	return m_execute(p);
    }

private:
    int 		m_type;
    const char *	(*m_getname)();
    int			(*m_execute)(msModel*);
};

extern "C"
{

SPEC void *CreateMINGWPlugin (int tool_type,
			 const char * (*GetName)(),
			 int (*Exectute)(msModel*))
{
    return static_cast<void*>(new MingwPlugin(tool_type,GetName,Exectute));
}

}


// END OF FILE