Added initial solution to windows to import static application symbols into plugin dll :

pass handles to intialised interfaces via callback

git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-win_plugin_solve@4630 b45a01b8-16f6-495d-af2f-9b41ad6348cc
This commit is contained in:
chrisparker126 2011-10-03 20:32:41 +00:00
parent c4cc7a6bb7
commit 341320da97
14 changed files with 179 additions and 51 deletions

View file

@ -29,6 +29,8 @@
#include <stdint.h>
#include <string>
#include <vector>
#include "retroshare/rspeers.h"
#include "retroshare/rsfiles.h"
class RsPluginHandler ;
extern RsPluginHandler *rsPlugins ;
@ -52,6 +54,23 @@ class pqiService ;
#define PLUGIN_STATUS_NULL_PLUGIN 0x0004
#define PLUGIN_STATUS_LOADED 0x0005
class RsPluginHandler;
/*!
*
* convenience class to store gui interfaces
*
*/
class RsPlugInInterfaces {
public:
RsPlugInInterfaces() { mPeers = NULL; mFiles = NULL; }
RsPeers* mPeers;
RsFiles* mFiles;
};
class RsPlugin
{
public:
@ -67,6 +86,8 @@ class RsPlugin
virtual std::string getShortPluginDescription() const = 0 ;
virtual std::string getPluginName() const = 0 ;
virtual void getPluginVersion(int& major,int& minor,int& svn_rev) const = 0 ;
virtual void setPlugInHandler(RsPluginHandler* pgHandler) = 0;
virtual void setInterfaces(RsPlugInInterfaces& interfaces) = 0;
};
class RsPluginHandler