#ifndef __CENTROIDING_H__ #define __CENTROIDING_H__ #ifndef __UTILITIES_H__ #include "utilities.h" #endif #ifndef __IMAGING_H__ #include "imaging.h" #endif struct centroiding { int _N_SIDE_LENSLET_, N_LENSLET, N_SOURCE; float *d__c, *d__cx, *d__cy, *d__mass; char *lenslet_mask, MASK_SET; int n_data, DEV_SHARED_MEM, DEV_MAX_THREADS; cublasHandle_t handle; cublasStatus_t status; void setup(int _N_SIDE_LENSLET, int _N_SOURCE); void cleanup(void); void get_data(imaging *wfs); void get_data(float *frame, int N); void get_data(float *frame, int N, float cx0, float cy0, float units); void get_data(float *frame, int N, float *cx0, float *cy0, float units, char *valid_lenset); void show_centroids(char *filename); void show_flux(char *filename); void fried_geometry(mask *dm, mask *pupil, int n, float threshold); void filter(float *F); void noisify(float stddev); void reset(void); }; #endif // __CENTROIDING_H__