2#ifndef LSST_AFW_TABLE_slots_h_INCLUDED
3#define LSST_AFW_TABLE_slots_h_INCLUDED
An ellipse core with quadrupole moments as parameters.
Tag types used to declare specialized field types.
SlotDefinition specialization for centroids.
CentroidSlotDefinition(std::string const &name)
Construct a SlotDefinition from the name of the slot (e.g. "Centroid")
Eigen::Matrix< float, 2, 2 > ErrValue
Type returned by accessing the slot uncertainty.
CentroidSlotDefinition & operator=(CentroidSlotDefinition const &)=default
CentroidSlotDefinition(CentroidSlotDefinition const &)=default
Key< Flag > getFlagKey() const
Return the cached Key used to access the slot failure flag.
~CentroidSlotDefinition()=default
CentroidSlotDefinition & operator=(CentroidSlotDefinition &&)=default
CentroidSlotDefinition(CentroidSlotDefinition &&)=default
ErrKey getErrKey() const
Return the cached Key used to access the slot uncertainty.
bool isValid() const
Return true if the key associated with the measurement is valid.
MeasKey getMeasKey() const
Return the cached Key used to access the slot measurement.
void setKeys(std::string const &alias, Schema const &schema)
Update the cached Keys following an change of aliases in the given Schema.
SlotDefinition specialization for fluxes.
Key< Flag > getFlagKey() const
Return the cached Key used to access the slot failure flag.
~FluxSlotDefinition()=default
FluxSlotDefinition & operator=(FluxSlotDefinition const &)=default
bool isValid() const
Return true if the key associated with the measurement is valid.
MeasKey getMeasKey() const
Return the cached Key used to access the slot measurement.
FluxSlotDefinition & operator=(FluxSlotDefinition &&)=default
void setKeys(std::string const &alias, Schema const &schema)
Update the cached Keys following an change of aliases in the given Schema.
FluxSlotDefinition(FluxSlotDefinition &&)=default
FluxSlotDefinition(std::string const &name)
Construct a SlotDefinition from the name of the slot (e.g. "PsfFlux")
FluxSlotDefinition(FluxSlotDefinition const &)=default
ErrKey getErrKey() const
Return the cached Key used to access the slot uncertainty.
bool isValid() const noexcept
Return true if the key was initialized to valid offset.
bool isValid() const noexcept
Return True if both the x and y Keys are valid.
A FunctorKey used to get or set a geom::ellipses::Quadrupole from a tuple of constituent Keys.
bool isValid() const noexcept
Return True if all the constituent Keys are valid.
Defines the fields and offsets for a table.
SlotDefinition specialization for shapes.
ShapeSlotDefinition(ShapeSlotDefinition const &)=default
Eigen::Matrix< float, 3, 3 > ErrValue
Type returned by accessing the slot uncertainty.
ShapeSlotDefinition & operator=(ShapeSlotDefinition &&)=default
void setKeys(std::string const &alias, Schema const &schema)
Update the cached Keys following an change of aliases in the given Schema.
ErrKey getErrKey() const
Return the cached Key used to access the slot uncertainty.
MeasKey getMeasKey() const
Return the cached Key used to access the slot measurement.
ShapeSlotDefinition(std::string const &name)
Construct a SlotDefinition from the name of the slot (e.g. "Shape")
Key< Flag > getFlagKey() const
Return the cached Key used to access the slot failure flag.
bool isValid() const
Return true if the key associated with the measurement is valid.
ShapeSlotDefinition & operator=(ShapeSlotDefinition const &)=default
~ShapeSlotDefinition()=default
ShapeSlotDefinition(ShapeSlotDefinition &&)=default
Base class for helper classes that define slots on SourceTable/SourceRecord.
std::string getName() const
Return the name of the slot (e.g. "Centroid" or "PsfFlux")
~SlotDefinition()=default
SlotDefinition & operator=(SlotDefinition &&)=default
SlotDefinition & operator=(SlotDefinition const &)=default
SlotDefinition(std::string const &name)
Construct a SlotDefinition from the name of the slot (e.g. "Centroid" or "PsfFlux")
SlotDefinition(SlotDefinition &&)=default
std::string getAlias() const
Return the alias field prefix used to lookup Keys for the slot.
SlotDefinition(SlotDefinition const &)=default
Class for storing generic metadata.
PointKey< double > Point2DKey
Point< double, 2 > Point2D
An aggregate containing all of the current slots used in SourceTable.
CentroidSlotDefinition defCentroid
FluxSlotDefinition defModelFlux
SlotSuite(Schema const &schema)
Initialize the slots.
FluxSlotDefinition defCalibFlux
FluxSlotDefinition defApFlux
FluxSlotDefinition defPsfFlux
ShapeSlotDefinition defShape
FluxSlotDefinition defGaussianFlux
void handleAliasChange(std::string const &alias, Schema const &schema)
Handle a callback from an AliasMap informing the table that an alias has changed.