COMPASS  5.4.4
End-to-end AO simulation tool using GPU acceleration
sutra_centroider_cog.h
Go to the documentation of this file.
1 // -----------------------------------------------------------------------------
2 // This file is part of COMPASS <https://anr-compass.github.io/compass/>
3 //
4 // Copyright (C) 2011-2023 COMPASS Team <https://github.com/ANR-COMPASS>
5 // All rights reserved.
6 
7 // -----------------------------------------------------------------------------
8 
16 
17 
18 #ifndef _SUTRA_CENTROIDER_COG_H_
19 #define _SUTRA_CENTROIDER_COG_H_
20 
21 #include <sutra_centroider.h>
22 
23 template <class Tin, class T>
24 class SutraCentroiderCog : public SutraCentroider<Tin, T> {
25  public:
27  float offset, float scale, bool filter_TT, int device);
30 
31  string get_type();
32 
33  int get_cog(float *cube, float *intensities, T *centroids, int nvalid,
34  int npix, int ntot, cudaStream_t stream=0);
35  int get_cog(float *intensities, T *slopes, bool noise);
36  int get_cog();
37 };
38 
39 template <class T>
40 void get_centroids(int size, int threads, int blocks, int n, float *d_idata,
41  T *d_odata, T *ref, int *validx, int *validy,
42  float *intensities, float scale, float offset,
44  CarmaDevice *device, cudaStream_t stream=0);
45 
46 template <class T>
47 void get_centroids_async(int threads, int blocks, int n, CarmaStreams *streams,
48  T *d_idata, T *d_odata, T *alpha, float scale,
49  float offset);
50 
51 #endif // _SUTRA_CENTROIDER_COG_H_
this class provides the context in which CarmaObj are created
Definition: carma_context.h:79
this class provides the stream features to CarmaObj
Definition: carma_streams.h:24
this class provides the centroider_cog features to COMPASS
int get_cog(float *intensities, T *slopes, bool noise)
SutraCentroiderCog(const SutraCentroiderCog &centroider)
int get_cog(float *cube, float *intensities, T *centroids, int nvalid, int npix, int ntot, cudaStream_t stream=0)
SutraCentroiderCog(CarmaContext *context, SutraWfs *wfs, long nvalid, float offset, float scale, bool filter_TT, int device)
this class provides the centroider features to COMPASS
this class provides the wfs features to COMPASS
Definition: sutra_wfs.h:35
SlopeOrder
SlopeOrder slope_order(std::size_t value)
void get_centroids_async(int threads, int blocks, int n, CarmaStreams *streams, T *d_idata, T *d_odata, T *alpha, float scale, float offset)
void get_centroids(int size, int threads, int blocks, int n, float *d_idata, T *d_odata, T *ref, int *validx, int *validy, float *intensities, float scale, float offset, SlopeOrder slope_order, CarmaDevice *device, cudaStream_t stream=0)