StarPeak ToolKit |
|
About SPTK Downloads Documentation Examples Supported Platforms and Plugins |
00001 /*************************************************************************** 00002 sptkplugin.h - description 00003 ------------------- 00004 begin : Sat Jan 4 2003 00005 copyright : (C) 2003 by Sven Broenstrup 00006 email : starpeak@sptk.org 00007 ***************************************************************************/ 00008 00009 /*************************************************************************** 00010 * * 00011 * StarPeak OnlineMedia., hereby disclaims all copyright interest in * 00012 * the library `SPTK' written by Sven Broenstrup. * 00013 * * 00014 * Permission is hereby granted, free of charge, to any person obtaining * 00015 * a copy of this software and associated documentation files (the * 00016 * "Software"), to deal in the Software without restriction, including * 00017 * without limitation the rights to use, copy, modify, merge, publish, * 00018 * distribute, sublicense, and/or sell copies of the Software, and to * 00019 * permit persons to whom the Software is furnished to do so, subject to * 00020 * the following conditions: * 00021 * * 00022 * The above copyright notice and this permission notice shall be * 00023 * included in all copies or substantial portions of the Software. * 00024 * * 00025 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, * 00026 * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF * 00027 * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.* 00028 * IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR * 00029 * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, * 00030 * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR * 00031 * OTHER DEALINGS IN THE SOFTWARE. * 00032 * * 00033 ***************************************************************************/ 00034 00035 #ifndef SPTKPLUGIN_H 00036 #define SPTKPLUGIN_H 00037 00038 #include <string> 00039 #include "sptkobject.h" 00040 00045 class sptkPlugin : public sptkObject 00046 { 00047 public: 00048 sptkPlugin(std::string pluginName=""); 00049 ~sptkPlugin(); 00054 int openPlugin (std::string pluginName); 00059 sptkObject *createObject(std::string typeOfObject); 00064 std::string getError (); 00069 std::string getPluginName(); 00070 00071 private: 00076 void *getSymbol(std::string typeOfObject); 00077 00079 void *documentType; 00081 std::string pluginName; 00082 }; 00083 00084 #endif