41 #ifndef __PLUGGABLEOBSERVER_HPP__
42 #define __PLUGGABLEOBSERVER_HPP__
57 #define DECLARE_OBSERVER_PLUGIN \
60 DLLEXPORT std::string WAREABIVERSION_PROC_DECL(); \
61 DLLEXPORT openfluid::ware::PluggableObserver* WAREBODY_PROC_DECL(); \
62 DLLEXPORT openfluid::ware::ObserverSignature* WARESIGNATURE_PROC_DECL(); \
76 #define DEFINE_OBSERVER_CLASS(pluginclassname) \
77 std::string WAREABIVERSION_PROC_DECL() \
79 return std::string(openfluid::config::FULL_VERSION); \
82 openfluid::ware::PluggableObserver* WAREBODY_PROC_DECL() \
84 return new pluginclassname(); \
92 namespace openfluid {
namespace ware {
107 void initializeWare(
const WareID_t& SimID);
117 virtual void onPrepared()=0;
123 virtual void onInitializedRun()=0;
128 virtual void onStepCompleted()=0;
133 virtual void onFinalizedRun()=0;
std::map< WareParamKey_t, WareParamValue_t > WareParams_t
Definition: PluggableWare.hpp:82
Definition: ObserverSignature.hpp:78
Definition: SimulationInspectorWare.hpp:55
std::string WareID_t
Definition: WareSignature.hpp:86
Definition: PluggableObserver.hpp:95
#define DLLEXPORT
Definition: dllexport.hpp:51