COMPASS  5.4.4
End-to-end AO simulation tool using GPU acceleration
sutra_target.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 #ifndef _SUTRA_TARGET_H_
18 #define _SUTRA_TARGET_H_
19 
20 #include <sutra_source.h>
21 #include <map>
22 #include <string>
23 #include <vector>
24 
25 using std::vector;
26 
27 typedef std::pair<std::string, int> type_screen;
28 
29 class SutraTarget {
30  public:
31  int ntargets;
32  vector<SutraSource *> d_targets;
33 
34  public:
36  float *xpos, float *ypos, float *lambda, float *mag, float zerop,
37  long *sizes, int Npts, int device);
39 
40  int get_phase(int ntarget, float *dest);
41 };
42 
43 #endif // _SUTRA_TARGET_H_
this class provides the context in which CarmaObj are created
Definition: carma_context.h:79
this class provides the target features to COMPASS
Definition: sutra_target.h:29
SutraTarget(CarmaContext *context, SutraTelescope *d_tel, int ntargets, float *xpos, float *ypos, float *lambda, float *mag, float zerop, long *sizes, int Npts, int device)
int get_phase(int ntarget, float *dest)
vector< SutraSource * > d_targets
Definition: sutra_target.h:32
this class provides the telescope features to COMPASS
std::pair< std::string, int > type_screen
Definition: sutra_target.h:27