sgpemv2/src/backend/plugin.hh
tchernobog 8b1da4e1c7 - Fix plugin.hh visibility attributes
- Improve option parsing
- Strange SIGSEGV still happening (a different one, though)


git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@736 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-07-06 09:49:35 +00:00

62 lines
2 KiB
C++

// src/backend/plugin.hh - Copyright 2005, 2006, University
// of Padova, dept. of Pure and Applied
// Mathematics
//
// This file is part of SGPEMv2.
//
// This 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.
//
// SGPEMv2 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 SGPEMv2; if not, write to the Free Software
// Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
#ifndef SGPEMV2__PLUGIN_HH
#define SGPEMV2__PLUGIN_HH 1
#include "config.h"
#ifdef __cplusplus
extern "C"
{
#endif
/** \file plugin.hh
* All loadable modules that want to act as plugins
* for SGPEMv2 should implement this interface.
* Only the header file containing this interface
* should be provided by the backend library. Every plugin
* will then implement its set of static functions.
* Thus every plugin will export these very symbols
* outside its DSO.
*/
/** \brief Called when a plugin is loaded and enabled
*
* Sets up the plugin's initial state and
* performs needed actions before its usage can start.
*/
SG_DLLEXPORT void sgpem__Plugin__on_init();
SG_DLLEXPORT void sgpem__Plugin__on_exit();
SG_DLLEXPORT const char* sgpem__Plugin__describe();
SG_DLLEXPORT const char* sgpem__Plugin__get_name();
SG_DLLEXPORT const char* sgpem__Plugin__get_author();
SG_DLLEXPORT float sgpem__Plugin__get_version();
// To know why SG_DLLEXPORT must go *before* the return
// value, see http://gcc.gnu.org/ml/gcc-help/2005-04/msg00340.html
#ifdef __cplusplus
}
#endif
#endif