gla.h
1 #ifndef NOSYSTEMHEADERS
2 #include "ltfat.h"
3 #ifndef _phaseret_dgtrealwrapper_h_included
4 #define _phaseret_dgtrealwrapper_h_included
5 #include "dgtrealwrapper.h"
6 #endif
7 #endif
8 
9 #include "ltfat/types.h"
10 #include "phaseret/types.h"
11 
12 #ifdef __cplusplus
13 extern "C" {
14 #endif
15 
16 typedef struct PHASERET_NAME(gla_plan) PHASERET_NAME(gla_plan);
17 
61 typedef int
62 PHASERET_NAME(gla_callback_status)(PHASERET_NAME(dgtreal_plan)* p,
63  void* userdata, LTFAT_COMPLEX c[],
64  ltfat_int L, ltfat_int W, ltfat_int a, ltfat_int M, double* alpha, ltfat_int iter);
65 
91 typedef int
92 PHASERET_NAME(gla_callback_cmod)(void* userdata, LTFAT_COMPLEX c[], ltfat_int L, ltfat_int W, ltfat_int a, ltfat_int M);
93 
117 typedef int
118 PHASERET_NAME(gla_callback_fmod)(void* userdata, LTFAT_REAL f[], ltfat_int L, ltfat_int W, ltfat_int a, ltfat_int M);
119 
120 
158 PHASERET_API int
159 PHASERET_NAME(gla)(const LTFAT_COMPLEX cinit[], const LTFAT_REAL g[],
160  ltfat_int L, ltfat_int gl, ltfat_int W,
161  ltfat_int a, ltfat_int M, ltfat_int iter, LTFAT_COMPLEX c[]);
162 
214 PHASERET_API int
215 PHASERET_NAME(gla_init)(const LTFAT_COMPLEX cinit[], const LTFAT_REAL g[],
216  ltfat_int L, ltfat_int gl, ltfat_int W, ltfat_int a,
217  ltfat_int M, const double alpha, LTFAT_COMPLEX c[],
218  phaseret_dgtreal_params* params,
219  PHASERET_NAME(gla_plan)** p);
220 
244 PHASERET_API int
245 PHASERET_NAME(gla_execute)(PHASERET_NAME(gla_plan)* p, ltfat_int iter);
246 
276 PHASERET_API int
277 PHASERET_NAME(gla_execute_newarray)(PHASERET_NAME(gla_plan)* p,
278  const LTFAT_COMPLEX cinit[], ltfat_int iter,
279  LTFAT_COMPLEX c[]);
280 
297 PHASERET_API int
298 PHASERET_NAME(gla_done)(PHASERET_NAME(gla_plan)** p);
299 
322 PHASERET_API int
323 PHASERET_NAME(gla_set_status_callback)(PHASERET_NAME(gla_plan)* p,
324  PHASERET_NAME(gla_callback_status)* callback,
325  void* userdata);
326 
349 PHASERET_API int
350 PHASERET_NAME(gla_set_cmod_callback)(PHASERET_NAME(gla_plan)* p,
351  PHASERET_NAME(gla_callback_cmod)* callback,
352  void* userdata);
353 
376 PHASERET_API int
377 PHASERET_NAME(gla_set_fmod_callback)(PHASERET_NAME(gla_plan)* p,
378  PHASERET_NAME(gla_callback_fmod)* callback,
379  void* userdata);
380 
383 int
384 PHASERET_NAME(fastupdate)(LTFAT_COMPLEX* c, LTFAT_COMPLEX* t, double alpha, ltfat_int L);
385 
386 #ifdef __cplusplus
387 }
388 #endif
int gla(const LTFAT_COMPLEX cinit[], const LTFAT_REAL g[], ltfat_int L, ltfat_int gl, ltfat_int W, ltfat_int a, ltfat_int M, ltfat_int iter, LTFAT_COMPLEX c[])
int gla_set_fmod_callback(gla_plan *p, gla_callback_fmod *callback, void *userdata)
int gla_callback_status(dgtreal_plan *p, void *userdata, LTFAT_COMPLEX c[], ltfat_int L, ltfat_int W, ltfat_int a, ltfat_int M, double *alpha, ltfat_int iter)
Definition: gla.h:62
int gla_execute_newarray(gla_plan *p, const LTFAT_COMPLEX cinit[], ltfat_int iter, LTFAT_COMPLEX c[])
int gla_callback_cmod(void *userdata, LTFAT_COMPLEX c[], ltfat_int L, ltfat_int W, ltfat_int a, ltfat_int M)
Definition: gla.h:92
int gla_execute(gla_plan *p, ltfat_int iter)
int gla_set_status_callback(gla_plan *p, gla_callback_status *callback, void *userdata)
int gla_callback_fmod(void *userdata, LTFAT_REAL f[], ltfat_int L, ltfat_int W, ltfat_int a, ltfat_int M)
Definition: gla.h:118
int gla_init(const LTFAT_COMPLEX cinit[], const LTFAT_REAL g[], ltfat_int L, ltfat_int gl, ltfat_int W, ltfat_int a, ltfat_int M, const double alpha, LTFAT_COMPLEX c[], phaseret_dgtreal_params *params, gla_plan **p)
int gla_done(gla_plan **p)
int gla_set_cmod_callback(gla_plan *p, gla_callback_cmod *callback, void *userdata)