Tellurium Plugin C++ API  1.0.0
 All Classes Files Functions Variables Friends Pages
telCPlugin.h
Go to the documentation of this file.
1 
41 #ifndef telCPluginH
42 #define telCPluginH
43 #include "telPlugin.h"
44 #include "telStringList.h"
45 //---------------------------------------------------------------------------
46 
47 namespace tlp
48 {
49 
53 typedef bool (*executeF)(bool);
54 
58 typedef bool (*destroyF)();
59 typedef char* (*getACharStarF)();
60 typedef void* (*getAPropertyF)(const char*);
65 class CORE_DECLSPEC CPlugin : public Plugin
66 {
67  friend PluginManager;
68  public:
70  CPlugin(const string& name, const string& cat = gNoneString,
71  RoadRunner* aRR = NULL);
72 
74  virtual ~CPlugin();
75  string getImplementationLanguage();
76  virtual bool execute(bool useThread = false);
77  tlp::StringList getPropertyNames();
78  PropertyBase* getProperty(const string& param);
79 
82  string getLastError();
83 
84  protected:
85 
90  executeF executeFunction;
91 
96  destroyF destroyFunction;
97 
101  getACharStarF getCPropertyNames;
102 
103  getAPropertyF getCProperty;
104 
105  getACharStarF getCLastError;
106 };
107 
108 }
109 #endif