libocas.h
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016 #include "lib/common.h"
00017
00018 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00019
00020 typedef struct {
00022 uint32_t nIter;
00024 uint32_t nCutPlanes;
00026 uint32_t nNZAlpha;
00028 float64_t trn_err;
00030 float64_t Q_P;
00032 float64_t Q_D;
00034 float64_t output_time;
00036 float64_t sort_time;
00038 float64_t add_time;
00040 float64_t w_time;
00042 float64_t solver_time;
00044 float64_t ocas_time;
00045
00050 int8_t exitflag;
00051 } ocas_return_value_T;
00052 #endif // DOXYGEN_SHOULD_SKIP_THIS
00053
00054 ocas_return_value_T svm_ocas_solver(
00055 float64_t C,
00056 uint32_t nData,
00057 float64_t TolRel,
00058 float64_t TolAbs,
00059 float64_t QPBound,
00060 uint32_t BufSize,
00061 uint8_t Method,
00062 void (*compute_W)(float64_t*, float64_t*, float64_t*, uint32_t, void*),
00063 float64_t (*update_W)(float64_t, void*),
00064 void (*add_new_cut)(float64_t*, uint32_t*, uint32_t, uint32_t, void*),
00065 void (*compute_output)( float64_t*, void* ),
00066 void (*sort)(float64_t*, uint32_t*, uint32_t),
00067 void* user_data);
00068
00069 void qsort_index(float64_t* value, uint32_t* index, uint32_t size);