lsst.meas.algorithms
g4a7591d645+fa9daf83c6
Toggle main menu visibility
Loading...
Searching...
No Matches
include
lsst
meas
algorithms
PcaPsf.h
Go to the documentation of this file.
1
// -*- lsst-c++ -*-
2
/*
3
* LSST Data Management System
4
* Copyright 2008-2013 LSST Corporation.
5
*
6
* This product includes software developed by the
7
* LSST Project (http://www.lsst.org/).
8
*
9
* This program is free software: you can redistribute it and/or modify
10
* it under the terms of the GNU General Public License as published by
11
* the Free Software Foundation, either version 3 of the License, or
12
* (at your option) any later version.
13
*
14
* This program is distributed in the hope that it will be useful,
15
* but WITHOUT ANY WARRANTY; without even the implied warranty of
16
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17
* GNU General Public License for more details.
18
*
19
* You should have received a copy of the LSST License Statement and
20
* the GNU General Public License along with this program. If not,
21
* see <http://www.lsstcorp.org/LegalNotices/>.
22
*/
23
24
#ifndef LSST_MEAS_ALGORITHMS_PcaPsf_h_INCLUDED
25
#define LSST_MEAS_ALGORITHMS_PcaPsf_h_INCLUDED
26
27
#include "
lsst/geom/Point.h
"
28
#include "
lsst/meas/algorithms/KernelPsf.h
"
29
30
namespace
lsst
{
31
namespace
meas
{
32
namespace
algorithms
{
33
37
class
PcaPsf
:
public
afw::table::io::PersistableFacade
<PcaPsf>,
public
KernelPsf
{
38
public
:
45
explicit
PcaPsf
(
std::shared_ptr<afw::math::LinearCombinationKernel>
kernel,
46
geom::Point2D
const
& averagePosition =
geom::Point2D
());
47
49
std::shared_ptr<afw::detection::Psf>
clone
()
const override
;
50
52
std::shared_ptr<afw::detection::Psf>
resized
(
int
width,
int
height)
const override
;
53
55
std::shared_ptr<afw::math::LinearCombinationKernel const>
getKernel
()
const
;
56
57
private
:
58
// Name used in table persistence; the rest of is implemented by KernelPsf.
59
std::string
getPersistenceName
()
const override
{
return
"PcaPsf"
; }
60
};
61
62
}
// namespace algorithms
63
}
// namespace meas
64
}
// namespace lsst
65
66
#endif
// !LSST_MEAS_ALGORITHMS_PcaPsf_h_INCLUDED
KernelPsf.h
Point.h
std::string
lsst::afw::table::io::PersistableFacade
lsst::meas::algorithms::KernelPsf::KernelPsf
KernelPsf(afw::math::Kernel const &kernel, geom::Point2D const &averagePosition=geom::Point2D())
Construct a KernelPsf with a clone of the given kernel.
Definition
KernelPsf.cc:33
lsst::meas::algorithms::PcaPsf::PcaPsf
PcaPsf(std::shared_ptr< afw::math::LinearCombinationKernel > kernel, geom::Point2D const &averagePosition=geom::Point2D())
Constructor for a PcaPsf.
lsst::meas::algorithms::PcaPsf::resized
std::shared_ptr< afw::detection::Psf > resized(int width, int height) const override
Return a clone with specified kernel dimensions.
lsst::meas::algorithms::PcaPsf::getPersistenceName
std::string getPersistenceName() const override
Definition
PcaPsf.h:59
lsst::meas::algorithms::PcaPsf::getKernel
std::shared_ptr< afw::math::LinearCombinationKernel const > getKernel() const
PcaPsf always has a LinearCombinationKernel, so we can override getKernel to make it more useful.
lsst::meas::algorithms::PcaPsf::clone
std::shared_ptr< afw::detection::Psf > clone() const override
Polymorphic deep copy; should usually be unnecessary as Psfs are immutable.x.
lsst::geom::Point2D
Point< double, 2 > Point2D
lsst::meas::algorithms
Definition
mainpage.dox:13
lsst::meas
lsst
std::shared_ptr
Generated on
for lsst.meas.algorithms by
1.17.0