LSST Applications
21.0.0-172-gfb10e10a+18fedfabac,22.0.0+297cba6710,22.0.0+80564b0ff1,22.0.0+8d77f4f51a,22.0.0+a28f4c53b1,22.0.0+dcf3732eb2,22.0.1-1-g7d6de66+2a20fdde0d,22.0.1-1-g8e32f31+297cba6710,22.0.1-1-geca5380+7fa3b7d9b6,22.0.1-12-g44dc1dc+2a20fdde0d,22.0.1-15-g6a90155+515f58c32b,22.0.1-16-g9282f48+790f5f2caa,22.0.1-2-g92698f7+dcf3732eb2,22.0.1-2-ga9b0f51+7fa3b7d9b6,22.0.1-2-gd1925c9+bf4f0e694f,22.0.1-24-g1ad7a390+a9625a72a8,22.0.1-25-g5bf6245+3ad8ecd50b,22.0.1-25-gb120d7b+8b5510f75f,22.0.1-27-g97737f7+2a20fdde0d,22.0.1-32-gf62ce7b1+aa4237961e,22.0.1-4-g0b3f228+2a20fdde0d,22.0.1-4-g243d05b+871c1b8305,22.0.1-4-g3a563be+32dcf1063f,22.0.1-4-g44f2e3d+9e4ab0f4fa,22.0.1-42-gca6935d93+ba5e5ca3eb,22.0.1-5-g15c806e+85460ae5f3,22.0.1-5-g58711c4+611d128589,22.0.1-5-g75bb458+99c117b92f,22.0.1-6-g1c63a23+7fa3b7d9b6,22.0.1-6-g50866e6+84ff5a128b,22.0.1-6-g8d3140d+720564cf76,22.0.1-6-gd805d02+cc5644f571,22.0.1-8-ge5750ce+85460ae5f3,master-g6e05de7fdc+babf819c66,master-g99da0e417a+8d77f4f51a,w.2021.48
LSST Data Management Base Package
|
A generic endpoint for data in the format used by ast::Mapping. More...
#include <Endpoint.h>
Public Types | |
using | Point = std::vector< double > |
using | Array = ndarray::Array< double, 2, 2 > |
Public Member Functions | |
GenericEndpoint (GenericEndpoint const &)=default | |
GenericEndpoint (GenericEndpoint &&)=default | |
GenericEndpoint & | operator= (GenericEndpoint const &)=delete |
GenericEndpoint & | operator= (GenericEndpoint &&)=delete |
GenericEndpoint (int nAxes) | |
Construct a GenericEndpoint with the specified number of axes. More... | |
~GenericEndpoint () override=default | |
int | getNPoints (Array const &arr) const override |
Return the number of points in an array. More... | |
std::vector< double > | dataFromPoint (Point const &point) const override |
ndarray::Array< double, 2, 2 > | dataFromArray (Array const &arr) const override |
Point | pointFromData (std::vector< double > const &data) const override |
Get a single point from raw data. More... | |
Array | arrayFromData (ndarray::Array< double, 2, 2 > const &data) const override |
Get an array of points from raw data. More... | |
int | getNAxes () const |
virtual bool | operator== (BaseEndpoint const &other) const noexcept |
Determine whether two endpoints represent the same conversion. More... | |
bool | operator!= (BaseEndpoint const &other) const noexcept |
Determine whether two endpoints do not represent the same conversion. More... | |
virtual std::vector< double > | dataFromPoint (Point const &point) const=0 |
Get raw data from a single point. More... | |
virtual ndarray::Array< double, 2, 2 > | dataFromArray (Array const &arr) const=0 |
Get raw data from an array of points. More... | |
virtual std::shared_ptr< ast::Frame > | makeFrame () const |
Create a Frame that can be used with this end point in a Transform. More... | |
virtual void | normalizeFrame (std::shared_ptr< ast::Frame > framePtr) const |
Adjust and check the frame as needed. More... | |
Static Public Member Functions | |
static std::string | getClassPrefix () |
Get the class name prefix, e.g. "Point2" for "Point2Endpoint". More... | |
Protected Member Functions | |
void | _assertNAxes (int nAxes) const |
int | _getNAxes (ndarray::Array< double, 2, 2 > const &data) const |
int | _getNAxes (ndarray::Array< double, 1, 1 > const &data) const |
int | _getNAxes (std::vector< double > const &data) const |
int | _getNPoints (ndarray::Array< double, 2, 2 > const &data) const |
A generic endpoint for data in the format used by ast::Mapping.
Thus supports all ast frame classes and any number of axes, and thus can be used as an endpoint for any ast::Mapping.
Definition at line 226 of file Endpoint.h.
|
inherited |
Definition at line 70 of file Endpoint.h.
|
inherited |
Definition at line 69 of file Endpoint.h.
|
default |
|
default |
|
inlineexplicit |
Construct a GenericEndpoint with the specified number of axes.
[in] | nAxes | The number of axes in a point; must be > 0 |
lsst.pex.exceptions.InvalidParameterError | if nAxes <= 0 |
Definition at line 240 of file Endpoint.h.
|
overridedefault |
|
protectedinherited |
Definition at line 175 of file Endpoint.cc.
|
inlineprotectedinherited |
Definition at line 179 of file Endpoint.h.
|
inlineprotectedinherited |
Definition at line 177 of file Endpoint.h.
|
inlineprotectedinherited |
Definition at line 181 of file Endpoint.h.
|
inlineprotectedinherited |
Definition at line 183 of file Endpoint.h.
|
overridevirtual |
Get an array of points from raw data.
[in] | data | Raw data for an array of points, as a 2-D ndarray array [nPoints, nAxes] in C order, so the in-memory view is, for example, x0, y0, x1, y1, x2, y2, ... |
lsst::pex::exceptions::InvalidParameterError | if the array has the wrong nAxes dimension |
Implements lsst::afw::geom::BaseEndpoint< std::vector< double >, ndarray::Array< double, 2, 2 > >.
Definition at line 101 of file Endpoint.cc.
|
override |
Definition at line 91 of file Endpoint.cc.
|
pure virtualinherited |
Get raw data from an array of points.
[in] | arr | Array of points |
lsst::pex::exceptions::InvalidParameterError | if the array has the wrong nAxes dimension |
|
override |
Definition at line 86 of file Endpoint.cc.
|
pure virtualinherited |
Get raw data from a single point.
[in] | point | data for a single point |
lsst::pex::exceptions::InvalidParameterError | if the point has the wrong number of axes |
|
inlinestatic |
Get the class name prefix, e.g. "Point2" for "Point2Endpoint".
Definition at line 255 of file Endpoint.h.
|
inlineinherited |
Definition at line 79 of file Endpoint.h.
|
inlineoverridevirtual |
Return the number of points in an array.
Implements lsst::afw::geom::BaseEndpoint< std::vector< double >, ndarray::Array< double, 2, 2 > >.
Definition at line 244 of file Endpoint.h.
|
virtualinherited |
Create a Frame that can be used with this end point in a Transform.
Definition at line 154 of file Endpoint.cc.
|
inlinevirtualinherited |
Adjust and check the frame as needed.
Do not bother to check the number of axes because that is done elsewhere.
The base implementation does nothing.
Definition at line 163 of file Endpoint.h.
|
inlinenoexceptinherited |
Determine whether two endpoints do not represent the same conversion.
Definition at line 109 of file Endpoint.h.
|
delete |
|
delete |
|
virtualnoexceptinherited |
Determine whether two endpoints represent the same conversion.
other | the endpoint to compare |
true
iff this object and other
are of exactly the same class and all visible properties are identical. This implementation requires that the objects have the same number of axes.Definition at line 101 of file Endpoint.cc.
|
overridevirtual |
Get a single point from raw data.
[in] | data | Data as a vector of length NAxes |
Implements lsst::afw::geom::BaseEndpoint< std::vector< double >, ndarray::Array< double, 2, 2 > >.
Definition at line 96 of file Endpoint.cc.