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
Public Types | Public Member Functions | Protected Member Functions | Friends | List of all members
lsst::afw::table::SourceRecord Class Reference

Record class that contains measurements made on a single exposure. More...

#include <Source.h>

Inheritance diagram for lsst::afw::table::SourceRecord:
lsst::afw::table::SimpleRecord lsst::afw::table::BaseRecord

Public Types

using Table = SourceTable
 
using ColumnView = SourceColumnViewT< SourceRecord >
 
using Catalog = SortedCatalogT< SourceRecord >
 
using ConstCatalog = SortedCatalogT< const SourceRecord >
 

Public Member Functions

 SourceRecord (ConstructionToken const &token, detail::RecordData &&data)
 Constructor used by SourceTable. More...
 
std::shared_ptr< FootprintgetFootprint () const
 
void setFootprint (std::shared_ptr< Footprint > const &footprint)
 
std::shared_ptr< SourceTable const > getTable () const
 
RecordId getParent () const
 Convenience accessors for the keys in the minimal source schema. More...
 
void setParent (RecordId id)
 
FluxSlotDefinition::MeasValue getPsfInstFlux () const
 Get the value of the PsfFlux slot measurement. More...
 
FluxSlotDefinition::ErrValue getPsfInstFluxErr () const
 Get the uncertainty on the PsfFlux slot measurement. More...
 
bool getPsfFluxFlag () const
 Return true if the measurement in the PsfFlux slot failed. More...
 
FluxSlotDefinition::MeasValue getModelInstFlux () const
 Get the value of the ModelFlux slot measurement. More...
 
FluxSlotDefinition::ErrValue getModelInstFluxErr () const
 Get the uncertainty on the ModelFlux slot measurement. More...
 
bool getModelFluxFlag () const
 Return true if the measurement in the ModelFlux slot failed. More...
 
FluxSlotDefinition::MeasValue getApInstFlux () const
 Get the value of the ApFlux slot measurement. More...
 
FluxSlotDefinition::ErrValue getApInstFluxErr () const
 Get the uncertainty on the ApFlux slot measurement. More...
 
bool getApFluxFlag () const
 Return true if the measurement in the ApFlux slot failed. More...
 
FluxSlotDefinition::MeasValue getGaussianInstFlux () const
 Get the value of the GaussianFlux slot measurement. More...
 
FluxSlotDefinition::ErrValue getGaussianInstFluxErr () const
 Get the uncertainty on the GaussianFlux slot measurement. More...
 
bool getGaussianFluxFlag () const
 Return true if the measurement in the GaussianFlux slot failed. More...
 
FluxSlotDefinition::MeasValue getCalibInstFlux () const
 Get the value of the CalibFlux slot measurement. More...
 
FluxSlotDefinition::ErrValue getCalibInstFluxErr () const
 Get the uncertainty on the CalibFlux slot measurement. More...
 
bool getCalibFluxFlag () const
 Return true if the measurement in the CalibFlux slot failed. More...
 
CentroidSlotDefinition::MeasValue getCentroid () const
 Get the value of the Centroid slot measurement. More...
 
CentroidSlotDefinition::ErrValue getCentroidErr () const
 Get the uncertainty on the Centroid slot measurement. More...
 
bool getCentroidFlag () const
 Return true if the measurement in the Centroid slot failed. More...
 
ShapeSlotDefinition::MeasValue getShape () const
 Get the value of the Shape slot measurement. More...
 
ShapeSlotDefinition::ErrValue getShapeErr () const
 Get the uncertainty on the Shape slot measurement. More...
 
bool getShapeFlag () const
 Return true if the measurement in the Shape slot failed. More...
 
double getX () const
 Return the centroid slot x coordinate. More...
 
double getY () const
 Return the centroid slot y coordinate. More...
 
double getIxx () const
 Return the shape slot Ixx value. More...
 
double getIyy () const
 Return the shape slot Iyy value. More...
 
double getIxy () const
 Return the shape slot Ixy value. More...
 
void updateCoord (geom::SkyWcs const &wcs)
 Update the coord field using the given Wcs and the field in the centroid slot. More...
 
void updateCoord (geom::SkyWcs const &wcs, PointKey< double > const &key)
 Update the coord field using the given Wcs and the image center from the given key. More...
 
 SourceRecord (const SourceRecord &)=delete
 
SourceRecordoperator= (const SourceRecord &)=delete
 
 SourceRecord (SourceRecord &&)=delete
 
SourceRecordoperator= (SourceRecord &&)=delete
 
 ~SourceRecord ()
 
RecordId getId () const
 Convenience accessors for the keys in the minimal reference schema. More...
 
void setId (RecordId id)
 
lsst::geom::SpherePoint getCoord () const
 
void setCoord (lsst::geom::SpherePoint const &coord)
 
lsst::geom::Angle getRa () const
 
void setRa (lsst::geom::Angle ra)
 
lsst::geom::Angle getDec () const
 
void setDec (lsst::geom::Angle dec)
 
Schema getSchema () const
 Return the Schema that holds this record's fields and keys. More...
 
template<typename T >
Field< T >::Element * getElement (Key< T > const &key)
 Return a pointer to the underlying elements of a field (non-const). More...
 
template<typename T >
Field< T >::Element const * getElement (Key< T > const &key) const
 Return a pointer to the underlying elements of a field (const). More...
 
template<typename T >
Field< T >::Reference operator[] (Key< T > const &key)
 Return a reference (or reference-like type) to the field's value. More...
 
template<typename T >
Field< T >::ConstReference operator[] (Key< T > const &key) const
 Return a const reference (or const-reference-like type) to the field's value. More...
 
template<typename Ref >
Ref operator[] (ReferenceFunctorKey< Ref > const &key)
 
template<typename ConstRef >
ConstRef operator[] (ConstReferenceFunctorKey< ConstRef > const &key) const
 
template<typename T >
Field< T >::Value get (Key< T > const &key) const
 Return the value of a field for the given key. More...
 
template<typename T >
get (OutputFunctorKey< T > const &key) const
 Compute a calculated or aggregate field. More...
 
template<typename T , typename U >
void set (Key< T > const &key, U const &value)
 Set value of a field for the given key. More...
 
template<typename T , typename U >
void set (InputFunctorKey< T > const &key, U const &value)
 Set a calculated or aggregate field. More...
 
void assign (BaseRecord const &other)
 Copy all field values from other to this, requiring that they have equal schemas. More...
 
void assign (BaseRecord const &other, SchemaMapper const &mapper)
 Copy field values from other to this, using a mapper. More...
 
ndarray::Manager::Ptr getManager () const
 

Protected Member Functions

virtual void _assign (BaseRecord const &other)
 Called by assign() after transferring fields to allow subclass data members to be copied. More...
 
virtual void _stream (std::ostream &os) const
 Called by operator<<. More...
 

Friends

class SourceTable
 

Detailed Description

Record class that contains measurements made on a single exposure.

Sources provide four additions to SimpleRecord / SimpleRecord:

Definition at line 78 of file Source.h.

Member Typedef Documentation

◆ Catalog

Definition at line 82 of file Source.h.

◆ ColumnView

Definition at line 81 of file Source.h.

◆ ConstCatalog

Definition at line 83 of file Source.h.

◆ Table

Definition at line 80 of file Source.h.

Constructor & Destructor Documentation

◆ SourceRecord() [1/3]

lsst::afw::table::SourceRecord::SourceRecord ( ConstructionToken const &  token,
detail::RecordData &&  data 
)
inline

Constructor used by SourceTable.

While formally public, this constructor is conceptually and effectively protected, due to the (protected) ConstructionToken argument.

This is to allow make_shared to be used, as that cannot be used on a truly protected or private constructor.

Definition at line 94 of file Source.h.

94  :
95  SimpleRecord(token, std::move(data))
96  {}
char * data
Definition: BaseRecord.cc:61
SimpleRecord(ConstructionToken const &token, detail::RecordData &&data)
Constructor used by SimpleTable.
Definition: Simple.h:64
T move(T... args)

◆ SourceRecord() [2/3]

lsst::afw::table::SourceRecord::SourceRecord ( const SourceRecord )
delete

◆ SourceRecord() [3/3]

lsst::afw::table::SourceRecord::SourceRecord ( SourceRecord &&  )
delete

◆ ~SourceRecord()

lsst::afw::table::SourceRecord::~SourceRecord ( )
default

Member Function Documentation

◆ _assign()

void lsst::afw::table::SourceRecord::_assign ( BaseRecord const &  other)
protectedvirtual

Called by assign() after transferring fields to allow subclass data members to be copied.

Reimplemented from lsst::afw::table::BaseRecord.

Definition at line 374 of file Source.cc.

374  {
375  try {
376  SourceRecord const &s = dynamic_cast<SourceRecord const &>(other);
377  _footprint = s._footprint;
378  } catch (std::bad_cast &) {
379  }
380 }
SourceRecord(ConstructionToken const &token, detail::RecordData &&data)
Constructor used by SourceTable.
Definition: Source.h:94

◆ _stream()

void lsst::afw::table::BaseRecord::_stream ( std::ostream os) const
protectedvirtualinherited

Called by operator<<.

Overrides should call the base class implementation and append additional fields on new lines, with the syntax "%(name)s: %(value)s".

Definition at line 152 of file BaseRecord.cc.

152  {
153  getSchema().forEach([&os, this](auto const& item) {
154  os << item.field.getName() << ": " << this->get(item.key) << std::endl;
155  });
156 }
std::ostream * os
Definition: Schema.cc:557
Schema getSchema() const
Return the Schema that holds this record's fields and keys.
Definition: BaseRecord.h:80
Field< T >::Value get(Key< T > const &key) const
Return the value of a field for the given key.
Definition: BaseRecord.h:151
void forEach(F &func) const
Apply a functor to each SchemaItem in the Schema.
Definition: Schema.h:214
T endl(T... args)

◆ assign() [1/2]

void lsst::afw::table::BaseRecord::assign ( BaseRecord const &  other)
inherited

Copy all field values from other to this, requiring that they have equal schemas.

Definition at line 122 of file BaseRecord.cc.

122  {
123  if (this->getSchema() != other.getSchema()) {
124  throw LSST_EXCEPT(lsst::pex::exceptions::LogicError, "Unequal schemas in record assignment.");
125  }
126  this->getSchema().forEach(CopyValue(&other, this));
127  this->_assign(other); // let derived classes assign their own stuff
128 }
#define LSST_EXCEPT(type,...)
Create an exception with a given type.
Definition: Exception.h:48
virtual void _assign(BaseRecord const &other)
Called by assign() after transferring fields to allow subclass data members to be copied.
Definition: BaseRecord.h:209
Reports errors in the logical structure of the program.
Definition: Runtime.h:46

◆ assign() [2/2]

void lsst::afw::table::BaseRecord::assign ( BaseRecord const &  other,
SchemaMapper const &  mapper 
)
inherited

Copy field values from other to this, using a mapper.

Definition at line 130 of file BaseRecord.cc.

130  {
131  if (!other.getSchema().contains(mapper.getInputSchema())) {
133  "Unequal schemas between input record and mapper.");
134  }
135  if (!this->getSchema().contains(mapper.getOutputSchema())) {
137  "Unequal schemas between output record and mapper.");
138  }
139  mapper.forEach(CopyValue(&other, this)); // use the functor we defined above
140  this->_assign(other); // let derived classes assign their own stuff
141 }
SchemaMapper * mapper
Definition: SchemaMapper.cc:71

◆ get() [1/2]

template<typename T >
Field<T>::Value lsst::afw::table::BaseRecord::get ( Key< T > const &  key) const
inlineinherited

Return the value of a field for the given key.

No checking is done to ensure the Key belongs to the correct schema.

Definition at line 151 of file BaseRecord.h.

151  {
152  return key.getValue(getElement(key), _manager);
153  }
Field< T >::Element * getElement(Key< T > const &key)
Return a pointer to the underlying elements of a field (non-const).
Definition: BaseRecord.h:93

◆ get() [2/2]

template<typename T >
T lsst::afw::table::BaseRecord::get ( OutputFunctorKey< T > const &  key) const
inlineinherited

Compute a calculated or aggregate field.

Definition at line 172 of file BaseRecord.h.

172  {
173  return key.get(*this);
174  }

◆ getApFluxFlag()

bool lsst::afw::table::SourceRecord::getApFluxFlag ( ) const
inline

Return true if the measurement in the ApFlux slot failed.

Definition at line 542 of file Source.h.

542  {
543  return this->get(getTable()->getApFluxSlot().getFlagKey());
544 }
std::shared_ptr< SourceTable const > getTable() const
Definition: Source.h:102

◆ getApInstFlux()

FluxSlotDefinition::MeasValue lsst::afw::table::SourceRecord::getApInstFlux ( ) const
inline

Get the value of the ApFlux slot measurement.

Definition at line 534 of file Source.h.

534  {
535  return this->get(getTable()->getApFluxSlot().getMeasKey());
536 }

◆ getApInstFluxErr()

FluxSlotDefinition::ErrValue lsst::afw::table::SourceRecord::getApInstFluxErr ( ) const
inline

Get the uncertainty on the ApFlux slot measurement.

Definition at line 538 of file Source.h.

538  {
539  return this->get(getTable()->getApFluxSlot().getErrKey());
540 }

◆ getCalibFluxFlag()

bool lsst::afw::table::SourceRecord::getCalibFluxFlag ( ) const
inline

Return true if the measurement in the CalibFlux slot failed.

Definition at line 566 of file Source.h.

566  {
567  return this->get(getTable()->getCalibFluxSlot().getFlagKey());
568 }

◆ getCalibInstFlux()

FluxSlotDefinition::MeasValue lsst::afw::table::SourceRecord::getCalibInstFlux ( ) const
inline

Get the value of the CalibFlux slot measurement.

Definition at line 558 of file Source.h.

558  {
559  return this->get(getTable()->getCalibFluxSlot().getMeasKey());
560 }

◆ getCalibInstFluxErr()

FluxSlotDefinition::ErrValue lsst::afw::table::SourceRecord::getCalibInstFluxErr ( ) const
inline

Get the uncertainty on the CalibFlux slot measurement.

Definition at line 562 of file Source.h.

562  {
563  return this->get(getTable()->getCalibFluxSlot().getErrKey());
564 }

◆ getCentroid()

CentroidSlotDefinition::MeasValue lsst::afw::table::SourceRecord::getCentroid ( ) const
inline

Get the value of the Centroid slot measurement.

Definition at line 570 of file Source.h.

570  {
571  return this->get(getTable()->getCentroidSlot().getMeasKey());
572 }

◆ getCentroidErr()

CentroidSlotDefinition::ErrValue lsst::afw::table::SourceRecord::getCentroidErr ( ) const
inline

Get the uncertainty on the Centroid slot measurement.

Definition at line 574 of file Source.h.

574  {
575  return this->get(getTable()->getCentroidSlot().getErrKey());
576 }

◆ getCentroidFlag()

bool lsst::afw::table::SourceRecord::getCentroidFlag ( ) const
inline

Return true if the measurement in the Centroid slot failed.

Definition at line 578 of file Source.h.

578  {
579  return this->get(getTable()->getCentroidSlot().getFlagKey());
580 }

◆ getCoord()

lsst::geom::SpherePoint lsst::afw::table::SimpleRecord::getCoord ( ) const
inlineinherited

Definition at line 231 of file Simple.h.

231 { return get(SimpleTable::getCoordKey()); }
static CoordKey getCoordKey()
Key for the celestial coordinates.
Definition: Simple.h:172

◆ getDec()

lsst::geom::Angle lsst::afw::table::SimpleRecord::getDec ( ) const
inlineinherited

Definition at line 239 of file Simple.h.

239 { return get(SimpleTable::getCoordKey().getDec()); }
lsst::geom::Angle getDec() const
Definition: Simple.h:239

◆ getElement() [1/2]

template<typename T >
Field<T>::Element* lsst::afw::table::BaseRecord::getElement ( Key< T > const &  key)
inlineinherited

Return a pointer to the underlying elements of a field (non-const).

This low-level access is intended mostly for use with serialization; users should generally prefer the safer get(), set() and operator[] member functions.

Definition at line 93 of file BaseRecord.h.

93  {
94  if (!key.isValid()) {
95  throw LSST_EXCEPT(
96  pex::exceptions::LogicError,
97  "Key is not valid (if this is a SourceRecord, make sure slot aliases have been set up).");
98  }
99  return reinterpret_cast<typename Field<T>::Element*>(reinterpret_cast<char*>(_data) +
100  key.getOffset());
101  }
typename FieldBase< T >::Element Element
Type used to store field data in the table (a field may have multiple elements).
Definition: Field.h:26

◆ getElement() [2/2]

template<typename T >
Field<T>::Element const* lsst::afw::table::BaseRecord::getElement ( Key< T > const &  key) const
inlineinherited

Return a pointer to the underlying elements of a field (const).

This low-level access is intended mostly for use with serialization; users should generally prefer the safer get(), set() and operator[] member functions.

Definition at line 111 of file BaseRecord.h.

111  {
112  if (!key.isValid()) {
113  throw LSST_EXCEPT(
114  pex::exceptions::LogicError,
115  "Key is not valid (if this is a SourceRecord, make sure slot aliases have been set up).");
116  }
117  return reinterpret_cast<typename Field<T>::Element const*>(reinterpret_cast<char const*>(_data) +
118  key.getOffset());
119  }

◆ getFootprint()

std::shared_ptr<Footprint> lsst::afw::table::SourceRecord::getFootprint ( ) const
inline

Definition at line 98 of file Source.h.

98 { return _footprint; }

◆ getGaussianFluxFlag()

bool lsst::afw::table::SourceRecord::getGaussianFluxFlag ( ) const
inline

Return true if the measurement in the GaussianFlux slot failed.

Definition at line 554 of file Source.h.

554  {
555  return this->get(getTable()->getGaussianFluxSlot().getFlagKey());
556 }

◆ getGaussianInstFlux()

FluxSlotDefinition::MeasValue lsst::afw::table::SourceRecord::getGaussianInstFlux ( ) const
inline

Get the value of the GaussianFlux slot measurement.

Definition at line 546 of file Source.h.

546  {
547  return this->get(getTable()->getGaussianFluxSlot().getMeasKey());
548 }

◆ getGaussianInstFluxErr()

FluxSlotDefinition::ErrValue lsst::afw::table::SourceRecord::getGaussianInstFluxErr ( ) const
inline

Get the uncertainty on the GaussianFlux slot measurement.

Definition at line 550 of file Source.h.

550  {
551  return this->get(getTable()->getGaussianFluxSlot().getErrKey());
552 }

◆ getId()

RecordId lsst::afw::table::SimpleRecord::getId ( ) const
inlineinherited

Convenience accessors for the keys in the minimal reference schema.

Definition at line 228 of file Simple.h.

228 { return get(SimpleTable::getIdKey()); }
static Key< RecordId > getIdKey()
Get keys for standard fields shared by all references.
Definition: Simple.h:170

◆ getIxx()

double lsst::afw::table::SourceRecord::getIxx ( ) const
inline

Return the shape slot Ixx value.

Definition at line 596 of file Source.h.

596 { return get(getTable()->getShapeSlot().getMeasKey().getIxx()); }
double getIxx() const
Return the shape slot Ixx value.
Definition: Source.h:596

◆ getIxy()

double lsst::afw::table::SourceRecord::getIxy ( ) const
inline

Return the shape slot Ixy value.

Definition at line 598 of file Source.h.

598 { return get(getTable()->getShapeSlot().getMeasKey().getIxy()); }
double getIxy() const
Return the shape slot Ixy value.
Definition: Source.h:598

◆ getIyy()

double lsst::afw::table::SourceRecord::getIyy ( ) const
inline

Return the shape slot Iyy value.

Definition at line 597 of file Source.h.

597 { return get(getTable()->getShapeSlot().getMeasKey().getIyy()); }
double getIyy() const
Return the shape slot Iyy value.
Definition: Source.h:597

◆ getManager()

ndarray::Manager::Ptr lsst::afw::table::BaseRecord::getManager ( ) const
inlineinherited

Definition at line 200 of file BaseRecord.h.

200 { return _manager; }

◆ getModelFluxFlag()

bool lsst::afw::table::SourceRecord::getModelFluxFlag ( ) const
inline

Return true if the measurement in the ModelFlux slot failed.

Definition at line 530 of file Source.h.

530  {
531  return this->get(getTable()->getModelFluxSlot().getFlagKey());
532 }

◆ getModelInstFlux()

FluxSlotDefinition::MeasValue lsst::afw::table::SourceRecord::getModelInstFlux ( ) const
inline

Get the value of the ModelFlux slot measurement.

Definition at line 522 of file Source.h.

522  {
523  return this->get(getTable()->getModelFluxSlot().getMeasKey());
524 }

◆ getModelInstFluxErr()

FluxSlotDefinition::ErrValue lsst::afw::table::SourceRecord::getModelInstFluxErr ( ) const
inline

Get the uncertainty on the ModelFlux slot measurement.

Definition at line 526 of file Source.h.

526  {
527  return this->get(getTable()->getModelFluxSlot().getErrKey());
528 }

◆ getParent()

RecordId lsst::afw::table::SourceRecord::getParent ( ) const
inline

Convenience accessors for the keys in the minimal source schema.

Definition at line 592 of file Source.h.

592 { return get(SourceTable::getParentKey()); }
static Key< RecordId > getParentKey()
Key for the parent ID.
Definition: Source.h:273

◆ getPsfFluxFlag()

bool lsst::afw::table::SourceRecord::getPsfFluxFlag ( ) const
inline

Return true if the measurement in the PsfFlux slot failed.

Definition at line 518 of file Source.h.

518  {
519  return this->get(getTable()->getPsfFluxSlot().getFlagKey());
520 }

◆ getPsfInstFlux()

FluxSlotDefinition::MeasValue lsst::afw::table::SourceRecord::getPsfInstFlux ( ) const
inline

Get the value of the PsfFlux slot measurement.

Definition at line 510 of file Source.h.

510  {
511  return this->get(getTable()->getPsfFluxSlot().getMeasKey());
512 }

◆ getPsfInstFluxErr()

FluxSlotDefinition::ErrValue lsst::afw::table::SourceRecord::getPsfInstFluxErr ( ) const
inline

Get the uncertainty on the PsfFlux slot measurement.

Definition at line 514 of file Source.h.

514  {
515  return this->get(getTable()->getPsfFluxSlot().getErrKey());
516 }

◆ getRa()

lsst::geom::Angle lsst::afw::table::SimpleRecord::getRa ( ) const
inlineinherited

Definition at line 236 of file Simple.h.

236 { return get(SimpleTable::getCoordKey().getRa()); }
lsst::geom::Angle getRa() const
Definition: Simple.h:236

◆ getSchema()

Schema lsst::afw::table::BaseRecord::getSchema ( ) const
inlineinherited

Return the Schema that holds this record's fields and keys.

Definition at line 80 of file BaseRecord.h.

80 { return _table->getSchema(); }

◆ getShape()

ShapeSlotDefinition::MeasValue lsst::afw::table::SourceRecord::getShape ( ) const
inline

Get the value of the Shape slot measurement.

Definition at line 582 of file Source.h.

582  {
583  return this->get(getTable()->getShapeSlot().getMeasKey());
584 }

◆ getShapeErr()

ShapeSlotDefinition::ErrValue lsst::afw::table::SourceRecord::getShapeErr ( ) const
inline

Get the uncertainty on the Shape slot measurement.

Definition at line 586 of file Source.h.

586  {
587  return this->get(getTable()->getShapeSlot().getErrKey());
588 }

◆ getShapeFlag()

bool lsst::afw::table::SourceRecord::getShapeFlag ( ) const
inline

Return true if the measurement in the Shape slot failed.

Definition at line 590 of file Source.h.

590 { return this->get(getTable()->getShapeSlot().getFlagKey()); }

◆ getTable()

std::shared_ptr<SourceTable const> lsst::afw::table::SourceRecord::getTable ( ) const
inline

Definition at line 102 of file Source.h.

102  {
103  return std::static_pointer_cast<SourceTable const>(BaseRecord::getTable());
104  }
std::shared_ptr< BaseTable const > getTable() const
Return the table this record is associated with.
Definition: BaseRecord.h:83

◆ getX()

double lsst::afw::table::SourceRecord::getX ( ) const
inline

Return the centroid slot x coordinate.

Definition at line 594 of file Source.h.

594 { return get(getTable()->getCentroidSlot().getMeasKey().getX()); }
double getX() const
Return the centroid slot x coordinate.
Definition: Source.h:594

◆ getY()

double lsst::afw::table::SourceRecord::getY ( ) const
inline

Return the centroid slot y coordinate.

Definition at line 595 of file Source.h.

595 { return get(getTable()->getCentroidSlot().getMeasKey().getY()); }
double getY() const
Return the centroid slot y coordinate.
Definition: Source.h:595

◆ operator=() [1/2]

SourceRecord& lsst::afw::table::SourceRecord::operator= ( const SourceRecord )
delete

◆ operator=() [2/2]

SourceRecord& lsst::afw::table::SourceRecord::operator= ( SourceRecord &&  )
delete

◆ operator[]() [1/4]

template<typename ConstRef >
ConstRef lsst::afw::table::BaseRecord::operator[] ( ConstReferenceFunctorKey< ConstRef > const &  key) const
inlineinherited

Definition at line 190 of file BaseRecord.h.

190  {
191  return key.getConstReference(*this);
192  }

◆ operator[]() [2/4]

template<typename T >
Field<T>::Reference lsst::afw::table::BaseRecord::operator[] ( Key< T > const &  key)
inlineinherited

Return a reference (or reference-like type) to the field's value.

Some field types (Point, Moments, Flag, Covariance, and SpherePoint) do not support reference access.

No checking is done to ensure the Key belongs to the correct schema.

Definition at line 129 of file BaseRecord.h.

129  {
130  return key.getReference(getElement(key), _manager);
131  }

◆ operator[]() [3/4]

template<typename T >
Field<T>::ConstReference lsst::afw::table::BaseRecord::operator[] ( Key< T > const &  key) const
inlineinherited

Return a const reference (or const-reference-like type) to the field's value.

Some field types (Point, Moments, Flag, Covariance, and SpherePoint) do not support reference access.

No checking is done to ensure the Key belongs to the correct schema.

Definition at line 141 of file BaseRecord.h.

141  {
142  return key.getConstReference(getElement(key), _manager);
143  }

◆ operator[]() [4/4]

template<typename Ref >
Ref lsst::afw::table::BaseRecord::operator[] ( ReferenceFunctorKey< Ref > const &  key)
inlineinherited

Definition at line 185 of file BaseRecord.h.

185  {
186  return key.getReference(*this);
187  }

◆ set() [1/2]

template<typename T , typename U >
void lsst::afw::table::BaseRecord::set ( InputFunctorKey< T > const &  key,
U const &  value 
)
inlineinherited

Set a calculated or aggregate field.

Definition at line 180 of file BaseRecord.h.

180  {
181  return key.set(*this, value);
182  }

◆ set() [2/2]

template<typename T , typename U >
void lsst::afw::table::BaseRecord::set ( Key< T > const &  key,
U const &  value 
)
inlineinherited

Set value of a field for the given key.

This method has an additional template parameter because some fields accept and convert different types to the stored field type.

No checking is done to ensure the Key belongs to the correct schema.

Definition at line 164 of file BaseRecord.h.

164  {
165  key.setValue(getElement(key), _manager, value);
166  }

◆ setCoord()

void lsst::afw::table::SimpleRecord::setCoord ( lsst::geom::SpherePoint const &  coord)
inlineinherited

Definition at line 232 of file Simple.h.

232  {
233  set(SimpleTable::getCoordKey(), coord);
234 }
void set(Key< T > const &key, U const &value)
Set value of a field for the given key.
Definition: BaseRecord.h:164

◆ setDec()

void lsst::afw::table::SimpleRecord::setDec ( lsst::geom::Angle  dec)
inlineinherited

Definition at line 240 of file Simple.h.

double dec
Definition: Match.cc:41

◆ setFootprint()

void lsst::afw::table::SourceRecord::setFootprint ( std::shared_ptr< Footprint > const &  footprint)
inline

Definition at line 100 of file Source.h.

100 { _footprint = footprint; }

◆ setId()

void lsst::afw::table::SimpleRecord::setId ( RecordId  id)
inlineinherited

Definition at line 229 of file Simple.h.

229 { set(SimpleTable::getIdKey(), id); }

◆ setParent()

void lsst::afw::table::SourceRecord::setParent ( RecordId  id)
inline

Definition at line 593 of file Source.h.

593 { set(SourceTable::getParentKey(), id); }

◆ setRa()

void lsst::afw::table::SimpleRecord::setRa ( lsst::geom::Angle  ra)
inlineinherited

Definition at line 237 of file Simple.h.

237 { set(SimpleTable::getCoordKey().getRa(), ra); }

◆ updateCoord() [1/2]

void lsst::afw::table::SourceRecord::updateCoord ( geom::SkyWcs const &  wcs)

Update the coord field using the given Wcs and the field in the centroid slot.

Definition at line 368 of file Source.cc.

368 { setCoord(wcs.pixelToSky(getCentroid())); }
table::Key< table::Array< std::uint8_t > > wcs
Definition: SkyWcs.cc:66
void setCoord(lsst::geom::SpherePoint const &coord)
Definition: Simple.h:232
CentroidSlotDefinition::MeasValue getCentroid() const
Get the value of the Centroid slot measurement.
Definition: Source.h:570

◆ updateCoord() [2/2]

void lsst::afw::table::SourceRecord::updateCoord ( geom::SkyWcs const &  wcs,
PointKey< double > const &  key 
)

Update the coord field using the given Wcs and the image center from the given key.

Definition at line 370 of file Source.cc.

370  {
371  setCoord(wcs.pixelToSky(get(key)));
372 }

Friends And Related Function Documentation

◆ SourceTable

friend class SourceTable
friend

Definition at line 207 of file Source.h.


The documentation for this class was generated from the following files: