lsst.gauss2d.fit
g199a45376c+7362695278
Toggle main menu visibility
Loading...
Searching...
No Matches
sersicparametricellipse.h
1
#ifndef LSST_GAUSS2D_FIT_SERSICPARAMETRICELLIPSE_H
2
#define LSST_GAUSS2D_FIT_SERSICPARAMETRICELLIPSE_H
3
4
#include <memory>
5
6
#include "lsst/gauss2d/ellipse.h"
7
8
#include "parameters.h"
9
#include "parametricellipse.h"
10
11
namespace
lsst::gauss2d::fit {
15
class
SersicParametricEllipse
:
public
ParametricEllipse
{
16
public
:
24
explicit
SersicParametricEllipse
(std::shared_ptr<ReffXParameterD> size_x,
25
std::shared_ptr<ReffYParameterD> size_y,
26
std::shared_ptr<RhoParameterD> rho =
nullptr
);
27
explicit
SersicParametricEllipse
(
double
size_x = 0,
double
size_y = 0,
double
rho = 0);
28
29
ParamRefs&
get_parameters
(ParamRefs& params,
ParamFilter
* filter =
nullptr
)
const override
;
30
ParamCRefs&
get_parameters_const
(ParamCRefs& params,
ParamFilter
* filter =
nullptr
)
const override
;
31
32
double
get_rho
()
const override
;
33
double
get_size_x
()
const override
;
34
double
get_size_y
()
const override
;
35
std::array<double, 3>
get_xyr
()
const override
;
36
37
RhoParameterD
& get_rho_param()
const override
;
38
SizeXParameterD
& get_size_x_param()
const override
;
39
SizeYParameterD
& get_size_y_param()
const override
;
40
41
std::shared_ptr<ReffXParameterD> get_reff_x_param_ptr();
42
std::shared_ptr<ReffYParameterD> get_reff_y_param_ptr();
43
std::shared_ptr<RhoParameterD> get_rho_param_ptr()
override
;
44
std::shared_ptr<SizeXParameterD> get_size_x_param_ptr()
override
;
45
std::shared_ptr<SizeYParameterD> get_size_y_param_ptr()
override
;
46
47
void
set_rho(
double
rho)
override
;
48
void
set_size_x(
double
size_x)
override
;
49
void
set_size_y(
double
size_y)
override
;
50
51
std::string repr(
bool
name_keywords =
false
,
52
std::string_view namespace_separator = Object::CC_NAMESPACE_SEPARATOR)
const override
;
53
std::string str()
const override
;
54
55
private
:
56
std::shared_ptr<ReffXParameterD> _size_x;
57
std::shared_ptr<ReffYParameterD> _size_y;
58
std::shared_ptr<RhoParameterD> _rho;
59
};
60
}
// namespace lsst::gauss2d::fit
61
62
#endif
lsst::gauss2d::fit::ParametricEllipse
Definition
parametricellipse.h:36
lsst::gauss2d::fit::SersicParametricEllipse::get_rho
double get_rho() const override
Get the rho value.
Definition
sersicparametricellipse.cc:33
lsst::gauss2d::fit::SersicParametricEllipse::SersicParametricEllipse
SersicParametricEllipse(std::shared_ptr< ReffXParameterD > size_x, std::shared_ptr< ReffYParameterD > size_y, std::shared_ptr< RhoParameterD > rho=nullptr)
Definition
sersicparametricellipse.cc:14
lsst::gauss2d::fit::SersicParametricEllipse::get_size_y
double get_size_y() const override
Get the size_y value.
Definition
sersicparametricellipse.cc:35
lsst::gauss2d::fit::SersicParametricEllipse::get_size_x
double get_size_x() const override
Get the size_x value.
Definition
sersicparametricellipse.cc:34
lsst::gauss2d::fit::SersicParametricEllipse::get_parameters
ParamRefs & get_parameters(ParamRefs ¶ms, ParamFilter *filter=nullptr) const override
Definition
sersicparametricellipse.cc:26
lsst::gauss2d::fit::SersicParametricEllipse::get_xyr
std::array< double, 3 > get_xyr() const override
Get the array of size_x, size_y, rho.
Definition
sersicparametricellipse.cc:36
lsst::gauss2d::fit::SersicParametricEllipse::get_parameters_const
ParamCRefs & get_parameters_const(ParamCRefs ¶ms, ParamFilter *filter=nullptr) const override
Same as get_parameters(), but for const refs.
Definition
sersicparametricellipse.cc:29
lsst::gauss2d::fit::ParamFilter
Definition
param_filter.h:17
lsst::gauss2d::fit::RhoParameterD
Definition
parameters.h:119
lsst::gauss2d::fit::SizeXParameterD
Definition
parameters.h:35
lsst::gauss2d::fit::SizeYParameterD
Definition
parameters.h:39
include
lsst
gauss2d
fit
sersicparametricellipse.h
Generated by
1.17.0