COMPASS
5.4.4
End-to-end AO simulation tool using GPU acceleration
sutra_controller_cured.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_CONTROLLER_CURED_H_
18
#define _SUTRA_CONTROLLER_CURED_H_
19
20
#include <
sutra_controller.h
>
21
22
template
<
typename
Tcomp,
typename
Tout>
23
class
SutraControllerCured
:
public
SutraController
<Tcomp, Tout> {
24
public
:
25
int
ndivs
;
// number of subdivision levels for cured
26
bool
tt_flag
;
// flag for separate tt
27
28
// data for CuReD */
29
CarmaHostObj<Tcomp>
*
h_centroids
;
30
CarmaHostObj<Tcomp>
*
h_err
;
31
CarmaObj<Tcomp>
*
d_err
;
// current error
32
CarmaObj<Tcomp>
*
d_cenbuff
;
// centroids circular buffer
33
34
// data for CuReD */
35
CarmaObj<Tcomp>
*
d_imat
;
36
37
// structures needed to run CuReD */
38
// sysCure* h_syscure;
39
void
*
h_syscure
;
40
// parCure* h_parcure;
41
void
*
h_parcure
;
42
43
public
:
44
SutraControllerCured
(
CarmaContext
*context,
long
nslope
,
45
long
nactu
,
float
delay
,
SutraDms
*dms,
int
*idx_dms,
46
int
ndm,
int
*idx_centro,
int
ncentro);
47
SutraControllerCured
(
const
SutraControllerCured
&controller);
48
~SutraControllerCured
();
49
50
string
get_type
() {
return
"cured"
; }
51
52
int
comp_com
();
53
54
int
init_cured
(
int
nxsubs,
int
*isvalid,
int
ndivs
,
int
tt);
55
int
frame_delay
();
56
};
57
58
#endif
// _SUTRA_CONTROLLER_CURED_H_
CarmaContext
this class provides the context in which CarmaObj are created
Definition:
carma_context.h:79
CarmaHostObj< Tcomp >
CarmaObj< Tcomp >
SutraControllerCured
this class provides the controller_cured features to COMPASS
Definition:
sutra_controller_cured.h:23
SutraControllerCured::h_err
CarmaHostObj< Tcomp > * h_err
Definition:
sutra_controller_cured.h:30
SutraControllerCured::d_cenbuff
CarmaObj< Tcomp > * d_cenbuff
Definition:
sutra_controller_cured.h:32
SutraControllerCured::comp_com
int comp_com()
!!! YOU MUST set d_centroids before calling it!!!!
SutraControllerCured::h_parcure
void * h_parcure
Definition:
sutra_controller_cured.h:41
SutraControllerCured::SutraControllerCured
SutraControllerCured(const SutraControllerCured &controller)
SutraControllerCured::~SutraControllerCured
~SutraControllerCured()
SutraControllerCured::tt_flag
bool tt_flag
Definition:
sutra_controller_cured.h:26
SutraControllerCured::ndivs
int ndivs
Definition:
sutra_controller_cured.h:25
SutraControllerCured::SutraControllerCured
SutraControllerCured(CarmaContext *context, long nslope, long nactu, float delay, SutraDms *dms, int *idx_dms, int ndm, int *idx_centro, int ncentro)
SutraControllerCured::frame_delay
int frame_delay()
SutraControllerCured::get_type
string get_type()
Definition:
sutra_controller_cured.h:50
SutraControllerCured::init_cured
int init_cured(int nxsubs, int *isvalid, int ndivs, int tt)
SutraControllerCured::d_err
CarmaObj< Tcomp > * d_err
Definition:
sutra_controller_cured.h:31
SutraControllerCured::d_imat
CarmaObj< Tcomp > * d_imat
Definition:
sutra_controller_cured.h:35
SutraControllerCured::h_syscure
void * h_syscure
Definition:
sutra_controller_cured.h:39
SutraControllerCured::h_centroids
CarmaHostObj< Tcomp > * h_centroids
Definition:
sutra_controller_cured.h:29
SutraController
this class provides the controller features to COMPASS
Definition:
sutra_controller.h:48
SutraController::delay
Tcomp delay
Definition:
sutra_controller.h:54
SutraController::nactu
int nactu()
Definition:
sutra_controller.h:98
SutraController::nslope
int nslope()
Definition:
sutra_controller.h:99
SutraDms
Definition:
sutra_dm.h:139
sutra_controller.h
libsutra
include.h
sutra_controller_cured.h
Generated by
1.9.1