Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027 #ifndef DINVERC_H
00028 #define DINVERC_H
00029
00030 #ifdef __cplusplus
00031 #include "AbstractForward.h"
00032 #include "DinverInterface.h"
00033
00034 namespace DinverCore {
00035
00036 extern "C" {
00037 class AbstractForward;
00038 #else
00039 typedef void AbstractForward;
00040 #endif
00041
00042 typedef AbstractForward * DinverForward;
00043
00044 const char * dinver_plugin_tag();
00045 const char * dinver_plugin_title();
00046 const char * dinver_plugin_version();
00047 const char * dinver_plugin_description();
00048
00049 void dinver_init_global();
00050 void dinver_init_run(DinverForward run);
00051 void dinver_forward(int nd, float * model, int * ok, float * misfit);
00052
00053 void dinver_set_parameter_count(DinverForward forward, int n);
00054 void dinver_set_range(DinverForward forward, int paramIndex, float min, float max, int scale, float precision);
00055 void dinver_add_less_than_condition(DinverForward forward, int p1Index, float a, int p2Index, float b);
00056 void dinver_add_greater_than_condition(DinverForward forward, int p1Index, float a, int p2Index, float b);
00057
00058 #ifdef __cplusplus
00059 }
00060
00061 }
00062 #endif
00063
00064 #endif // DINVERC_H