lsst.afw
g3a5ebb7d8a+28b83bf6a5
Toggle main menu visibility
Loading...
Searching...
No Matches
include
lsst
afw
math
ProductBoundedField.h
Go to the documentation of this file.
1
// -*- LSST-C++ -*-
2
/*
3
* LSST Data Management System
4
* Copyright 2008-2014 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_AFW_MATH_ProductBoundedField_h_INCLUDED
25
#define LSST_AFW_MATH_ProductBoundedField_h_INCLUDED
26
27
#include "
lsst/afw/math/BoundedField.h
"
28
29
namespace
lsst
{
30
namespace
afw
{
31
namespace
math
{
32
36
class
ProductBoundedField
final :
public
table::io::PersistableFacade
<ProductBoundedField>,
37
public
BoundedField
{
38
public
:
39
50
explicit
ProductBoundedField
(
std::vector
<
std::shared_ptr<BoundedField const>
>
const
& factors);
51
52
ProductBoundedField
(
ProductBoundedField
const
&);
53
ProductBoundedField
(
ProductBoundedField
&&);
54
ProductBoundedField
&
operator=
(
ProductBoundedField
const
&) =
delete
;
55
ProductBoundedField
&
operator=
(
ProductBoundedField
&&) =
delete
;
56
~ProductBoundedField
()
override
;
57
59
double
evaluate
(
lsst::geom::Point2D
const
& position)
const override
;
60
62
ndarray::Array<double, 1, 1>
evaluate
(ndarray::Array<double const, 1>
const
& x,
63
ndarray::Array<double const, 1>
const
& y)
const override
;
64
65
using
BoundedField::evaluate
;
66
71
bool
isPersistable
() const noexcept override;
72
74
std
::shared_ptr<
BoundedField
> operator*(
double
const scale) const override;
75
77
bool
operator==(
BoundedField
const& rhs) const override;
78
80
std
::vector<
std
::shared_ptr<
BoundedField
const>>
getFactors
()
const
{
return
_factors; }
81
82
protected
:
83
84
std::string
getPersistenceName
()
const override
;
85
86
std::string
getPythonModule
()
const override
;
87
88
void
write
(
OutputArchiveHandle
& handle)
const override
;
89
90
private
:
91
92
std::string
toString
()
const override
;
93
94
std::vector<std::shared_ptr<BoundedField const>
> _factors;
95
};
96
}
// namespace math
97
}
// namespace afw
98
}
// namespace lsst
99
100
#endif
// !LSST_AFW_MATH_ProductBoundedField_h_INCLUDED
BoundedField.h
std::string
lsst::afw::math::BoundedField::BoundedField
BoundedField(BoundedField const &)=default
lsst::afw::math::BoundedField::evaluate
virtual double evaluate(lsst::geom::Point2D const &position) const =0
Evaluate the field at the given point.
lsst::afw::math::ProductBoundedField::ProductBoundedField
ProductBoundedField(std::vector< std::shared_ptr< BoundedField const > > const &factors)
Construct from a sequence of BoundedField factors.
Definition
ProductBoundedField.cc:69
lsst::afw::math::ProductBoundedField::toString
std::string toString() const override
Definition
ProductBoundedField.cc:208
lsst::afw::math::ProductBoundedField::isPersistable
bool isPersistable() const noexcept override
ProductBoundedField is persistable if and only if all of its factors are.
Definition
ProductBoundedField.cc:157
lsst::afw::math::ProductBoundedField::operator=
ProductBoundedField & operator=(ProductBoundedField const &)=delete
lsst::afw::math::ProductBoundedField::ProductBoundedField
ProductBoundedField(ProductBoundedField const &)
lsst::afw::math::ProductBoundedField::write
void write(OutputArchiveHandle &handle) const override
Write the object to one or more catalogs.
Definition
ProductBoundedField.cc:168
lsst::afw::math::ProductBoundedField::operator=
ProductBoundedField & operator=(ProductBoundedField &&)=delete
lsst::afw::math::ProductBoundedField::ProductBoundedField
ProductBoundedField(ProductBoundedField &&)
lsst::afw::math::ProductBoundedField::getPersistenceName
std::string getPersistenceName() const override
Return the unique name used to persist this object and look up its factory.
Definition
ProductBoundedField.cc:162
lsst::afw::math::ProductBoundedField::getFactors
std::vector< std::shared_ptr< BoundedField const > > getFactors() const
Return the factors of the product.
Definition
ProductBoundedField.h:80
lsst::afw::math::ProductBoundedField::evaluate
double evaluate(lsst::geom::Point2D const &position) const override
Evaluate the field at the given point.
Definition
ProductBoundedField.cc:77
lsst::afw::math::ProductBoundedField::~ProductBoundedField
~ProductBoundedField() override
lsst::afw::math::ProductBoundedField::getPythonModule
std::string getPythonModule() const override
Return the fully-qualified Python module that should be imported to guarantee that its factory is reg...
Definition
ProductBoundedField.cc:166
lsst::afw::table::io::PersistableFacade
A CRTP facade class for subclasses of Persistable.
Definition
Persistable.h:176
lsst::afw::table::io::Persistable::OutputArchiveHandle
io::OutputArchiveHandle OutputArchiveHandle
Definition
Persistable.h:108
lsst::afw::math
Definition
statistics.dox:6
lsst::afw
Definition
imageAlgorithm.dox:1
lsst::geom::Point2D
Point< double, 2 > Point2D
lsst
std
STL namespace.
std::shared_ptr
std::vector
Generated on
for lsst.afw by
1.17.0