23 #ifndef AFW_TABLE_aggregates_h_INCLUDED
24 #define AFW_TABLE_aggregates_h_INCLUDED
29 namespace lsst {
namespace afw {
33 template <
typename T,
int N>
class Point;
62 std::string
const &
name,
63 std::string
const & doc,
64 std::string
const & unit
131 std::string
const &
name,
132 std::string
const & doc
204 std::string
const &
name,
205 std::string
const & doc,
278 std::string
const &
name,
279 std::string
const & doc,
280 std::string
const & unit
331 template <
typename T,
int N>
354 std::string
const & prefix,
356 std::string
const & unit,
357 bool diagonalOnly=
false
376 std::string
const & prefix,
379 bool diagonalOnly=
false
423 virtual Eigen::Matrix<T,N,N>
get(
BaseRecord const & record)
const;
426 virtual void set(
BaseRecord & record, Eigen::Matrix<T,N,N>
const & value)
const;
455 #endif // !AFW_TABLE_aggregates_h_INCLUDED
bool isValid() const
Return true if the key was initialized to valid offset.
Key< double > getIxy() const
Return a constituent Key.
CoordKey()
Default constructor; instance will not be usable unless subsequently assigned to. ...
An ellipse core with quadrupole moments as parameters.
Defines the fields and offsets for a table.
PointKey< double > getCenter() const
Return constituent FunctorKeys.
A coordinate class intended to represent absolute positions (2-d specialization). ...
EllipseKey(QuadrupoleKey const &qKey, PointKey< double > const &pKey)
Construct from individual Keys.
A proxy type for name lookups in a Schema.
QuadrupoleKey(SubSchema const &s)
Construct from a subschema with appropriate subfields.
Key< T > getY() const
Return the underlying y Key.
static PointKey addFields(Schema &schema, std::string const &name, std::string const &doc, std::string const &unit)
std::vector< std::string > NameArray
table::Key< std::string > name
QuadrupoleKey getCore() const
Return constituent FunctorKeys.
EllipseKey()
Default constructor; instance will not be usable unless subsequently assigned to. ...
Key< double > getIyy() const
Return a constituent Key.
static CovarianceMatrixKey addFields(Schema &schema, std::string const &prefix, NameArray const &names, std::string const &unit, bool diagonalOnly=false)
afw::table::Schema schema
QuadrupoleKey()
Default constructor; instance will not be usable unless subsequently assigned to. ...
virtual void set(BaseRecord &record, geom::Point< T, 2 > const &value) const
Set a Point in the given record.
EllipseKey(SubSchema const &s)
Construct from a subschema, assuming (xx, yy, xy, x, y) subfields.
bool isValid() const
Return True if all the constituent Keys are valid.
Key< double > getIxx() const
Return a constituent Key.
PointKey< int > Point2IKey
bool operator!=(PointKey< T > const &other) const
Compare the FunctorKey for equality with another, using the underlying x and y Keys.
bool operator!=(CoordKey const &lhs, CoordKey const &rhs)
Compare CoordKeys for equality using the constituent Keys.
bool operator==(CoordKey const &lhs, CoordKey const &rhs)
Compare CoordKeys for equality using the constituent Keys.
PointKey< double > Point2DKey
static CoordKey addFields(afw::table::Schema &schema, std::string const &name, std::string const &doc)
Key< T > getX() const
Return the underlying x Key.
bool isValid() const
Return True if both the x and y Keys are valid.
afw::table::Key< double > sigma
A FunctorKey used to get or set a geom::Point from an (x,y) pair of int or double Keys...
static QuadrupoleKey addFields(Schema &schema, std::string const &name, std::string const &doc, CoordinateType coordType=CoordinateType::PIXEL)
std::vector< Key< T > > SigmaKeyArray
bool operator==(PointKey< T > const &other) const
Compare the FunctorKey for equality with another, using the underlying x and y Keys.
bool isValid() const
Return True if all the constituent Keys are valid.
An ellipse defined by an arbitrary BaseCore and a center point.
bool operator!=(QuadrupoleKey const &other) const
Compare the FunctorKey for equality with another, using the underlying Ixx, Iyy, Ixy Keys...
Key< geom::Angle > getDec() const
Return a constituent Key.
std::vector< Key< T > > CovarianceKeyArray
virtual void set(BaseRecord &record, coord::IcrsCoord const &value) const
Set an IcrsCoord in the given record.
bool operator==(CovarianceMatrixKey const &other) const
Compare the FunctorKey for equality with another, using its constituent Keys.
CoordKey(Key< geom::Angle > const &ra, Key< geom::Angle > const &dec)
Construct from a pair of Keys.
T getElement(BaseRecord const &record, int i, int j) const
Return the element in row i and column j.
virtual void set(BaseRecord &record, geom::ellipses::Quadrupole const &value) const
Set a Quadrupole in the given record.
bool operator!=(EllipseKey const &other) const
Compare the FunctorKey for equality with another, using the underlying Ixx, Iyy, Ixy Keys...
Base class for all records.
bool operator!=(CovarianceMatrixKey const &other) const
Compare the FunctorKey for equality with another, using its constituent Keys.
A class used as a handle to a particular field in a table.
PointKey()
Default constructor; instance will not be usable unless subsequently assigned to. ...
bool operator==(EllipseKey const &other) const
Compare the FunctorKey for equality with another, using the underlying Ixx, Iyy, Ixy Keys...
virtual void set(BaseRecord &record, Eigen::Matrix< T, N, N > const &value) const
Set a covariance matrix in the given record (uses only the lower triangle of the given matrix) ...
PointKey(SubSchema const &s)
Construct from a subschema, assuming x and y subfields.
PointKey(Key< T > const &x, Key< T > const &y)
Construct from a pair of Keys.
virtual void set(BaseRecord &record, geom::ellipses::Ellipse const &value) const
Set an Ellipse in the given record.
bool isValid() const
Return True if all the constituent sigma Keys are valid.
CoordKey(SubSchema const &s)
Construct from a subschema, assuming ra and dec subfields.
A FunctorKey used to get or set a geom::ellipses::Ellipse from an (xx,yy,xy,x,y) tuple of Keys...
QuadrupoleKey(Key< double > const &ixx, Key< double > const &iyy, Key< double > const &ixy)
Construct from individual Keys.
A FunctorKey used to get or set a geom::ellipses::Quadrupole from a tuple of constituent Keys...
A class to handle Icrs coordinates (inherits from Coord)
static EllipseKey addFields(Schema &schema, std::string const &name, std::string const &doc, std::string const &unit)
Key< geom::Angle > getRa() const
Return a constituent Key.
bool operator==(QuadrupoleKey const &other) const
Compare the FunctorKey for equality with another, using the underlying Ixx, Iyy, Ixy Keys...
CovarianceMatrixKey()
Construct an invalid instance; must assign before subsequent use.
void setElement(BaseRecord &record, int i, int j, T value) const
Set the element in row i and column j.
A FunctorKey used to get or set celestial coordiantes from a pair of Angle keys.