IDreamEvaluator

Parent Previous Next

///////////////////////////////////////////////////////////////////////////////////////////////////

// Interface IDreamEvaluator


[

 object,

 uuid(FF5B9D3D-C36B-49BB-A0A2-E6818BB79367),

 local,

 helpstring("IDreamEvaluator - interface to DREAM Evaluator"),

 pointer_default(unique)

]

interface IDreamEvaluator : IDreamDataSource

{

 [helpstring("Plugin initialization - the first function called before using the evaluator")]

 HRESULT InitPlugin([in] IDreamPluginInfo* pIPluginInfo);


 [helpstring("Prepare a directory for parallel calculation")]

 HRESULT PrepareWorkDir([in] BSTR strSourceDir, [in] BSTR strDestinationDir);


 [helpstring("Prepare input data needed for the calculation. Called only once.")]

 HRESULT InitData([in] IDreamPluginInfo* pIPluginInfo,

                  [in] IDreamInputParViewer* pIDreamInputParams);


 [helpstring("Calculate the likelihood of each proposal during DREAM calculation")]

 HRESULT EvaluateProposal([in] IDreamInputParViewer* pInputPar, [in] int sim,

                          [in] IDreamMatrix* x, [in, out] IDreamMatrix* res,

                          [in] BSTR strWorkingDir, [in] BSTR strModelDataDir,

                          [in] BSTR strModelBinDir);


 [helpstring("Get description of the last error.")]

 HRESULT GetLastError([out] BSTR* strErrorText);


 [helpstring("Called after finishing the calculation.")]

 HRESULT OnCalculationFinished();

};