41#define MASK_PLUGINLDR wxT( "PLUGIN_LOADER" )
45#define LINK_ITEM( funcPtr, funcType, funcName ) \
46 funcPtr = (funcType) m_PluginLoader.GetSymbol( wxT( funcName ) )
49typedef char const* (*GET_PLUGIN_CLASS) ( void );
52 unsigned char*,
unsigned char* );
55 unsigned char,
unsigned char );
57typedef const char* (*GET_PLUGIN_NAME) ( void );
60 unsigned char*,
unsigned char* );
73 unsigned char* Patch,
unsigned char* Revision )
const = 0;
82 virtual bool Open(
const wxString& aFullFileName ) = 0;
99 unsigned char* Patch,
unsigned char* Revision );
103 unsigned char Patch,
unsigned char Revision );
109 bool GetVersion(
unsigned char* Major,
unsigned char* Minor,
110 unsigned char* Patch,
unsigned char* Revision );
120 bool open(
const wxString& aFullFileName,
const char* aPluginClass );
virtual void GetLoaderVersion(unsigned char *Major, unsigned char *Minor, unsigned char *Patch, unsigned char *Revision) const =0
Return the version information of the Plugin Loader for plugin compatibility checking.
CHECK_CLASS_VERSION m_checkClassVersion
std::string GetLastError(void) const
Return the value of the internal error string.
char const * GetKicadPluginClass(void)
GET_PLUGIN_CLASS m_getPluginClass
GET_CLASS_VERSION m_getClassVersion
virtual void Close(void)=0
Clean up and closes/unloads the plugin.
virtual bool Open(const wxString &aFullFileName)=0
Open a plugin of the given class, performs version compatibility checks, and links all required funct...
bool CheckClassVersion(unsigned char Major, unsigned char Minor, unsigned char Patch, unsigned char Revision)
GET_PLUGIN_NAME m_getPluginName
void GetPluginInfo(std::string &aPluginInfo)
bool open(const wxString &aFullFileName, const char *aPluginClass)
Open a plugin of the specified class and links the extensions required by kicad_plugin.
bool GetClassVersion(unsigned char *Major, unsigned char *Minor, unsigned char *Patch, unsigned char *Revision)
wxDynamicLibrary m_PluginLoader
bool GetVersion(unsigned char *Major, unsigned char *Minor, unsigned char *Patch, unsigned char *Revision)
const char * GetKicadPluginName(void)
virtual ~KICAD_PLUGIN_LDR()
void close(void)
Nullify internal pointers in preparation for closing the plugin.
bool reopen(void)
Reopen a plugin.
const wxChar *const tracePluginLoader
Flag to enable plugin loader trace output.
void(* GET_VERSION)(unsigned char *, unsigned char *, unsigned char *, unsigned char *)
void(* GET_CLASS_VERSION)(unsigned char *, unsigned char *, unsigned char *, unsigned char *)
bool(* CHECK_CLASS_VERSION)(unsigned char, unsigned char, unsigned char, unsigned char)
char const *(* GET_PLUGIN_CLASS)(void)
const char *(* GET_PLUGIN_NAME)(void)