40 #ifndef __OPENFLUID_WARE_PLUGGABLEOBSERVER_HPP__
41 #define __OPENFLUID_WARE_PLUGGABLEOBSERVER_HPP__
57 #define DECLARE_OBSERVER_PLUGIN
68 #define DEFINE_OBSERVER_CLASS(pluginclassname) \
71 OPENFLUID_PLUGIN std::string WAREABIVERSION_PROC_DECL() \
73 return std::string(openfluid::config::VERSION_FULL); \
76 OPENFLUID_PLUGIN openfluid::ware::PluggableObserver* WAREBODY_PROC_DECL() \
78 return new pluginclassname(); \
87 namespace openfluid {
namespace ware {
102 void initializeWare(
const WareID_t& SimID);
112 virtual void onPrepared()=0;
118 virtual void onInitializedRun()=0;
123 virtual void onStepCompleted()=0;
128 virtual void onFinalizedRun()=0;
std::map< WareParamKey_t, WareParamValue_t > WareParams_t
Definition: TypeDefs.hpp:130
#define OPENFLUID_API
Definition: dllexport.hpp:87
std::string WareID_t
Definition: TypeDefs.hpp:50
Definition: PluggableObserver.hpp:90
Definition: SimulationInspectorWare.hpp:54
Definition: ObserverSignature.hpp:52