LSSTApplications  20.0.0
LSSTDataManagementBasePackage
Public Types | Public Member Functions | Static Public Member Functions | List of all members
lsst::meas::base::MagResultKey Class Referenceabstract

A FunctorKey for MagResult. More...

#include <FluxUtilities.h>

Inheritance diagram for lsst::meas::base::MagResultKey:
lsst::afw::table::FunctorKey< MagResult > lsst::afw::table::OutputFunctorKey< MagResult > lsst::afw::table::InputFunctorKey< MagResult >

Public Types

using Value = MagResult
 The data type for get and set. More...
 

Public Member Functions

 MagResultKey ()
 Default constructor; instance will not be usuable unless subsequently assigned to. More...
 
 MagResultKey (afw::table::SubSchema const &s)
 Construct from a subschema, assuming mag and magErr subfields. More...
 
virtual MagResult get (afw::table::BaseRecord const &record) const
 Get a MagResult from the given record. More...
 
virtual void set (afw::table::BaseRecord &record, MagResult const &magResult) const
 Set a MagResult in the given record. More...
 
virtual void set (afw::table::BaseRecord &record, afw::image::Measurement const &magnitude) const
 Set a MagResult in the record given the result of afw::image::PhotoCalib::instFluxToMagnitude. More...
 
virtual void set (BaseRecord &record, MagResult const &value) const=0
 

Static Public Member Functions

static MagResultKey addFields (afw::table::Schema &schema, std::string const &name)
 Add a pair of _mag, _magErr fields to a Schema, and return a MagResultKey that points to them. More...
 

Detailed Description

A FunctorKey for MagResult.

This class makes it easy to copy magnitudes and their uncertainties to and from records, and provides a method to add the appropriate fields to a Schema.

Definition at line 138 of file FluxUtilities.h.

Member Typedef Documentation

◆ Value

The data type for get and set.

Definition at line 77 of file FunctorKey.h.

Constructor & Destructor Documentation

◆ MagResultKey() [1/2]

lsst::meas::base::MagResultKey::MagResultKey ( )
inline

Default constructor; instance will not be usuable unless subsequently assigned to.

Definition at line 150 of file FluxUtilities.h.

150 : _magKey(), _magErrKey() {}

◆ MagResultKey() [2/2]

lsst::meas::base::MagResultKey::MagResultKey ( afw::table::SubSchema const &  s)
inline

Construct from a subschema, assuming mag and magErr subfields.

If a schema has "a_mag" and "a_magErr" fields, this enables construction of a MagResultKey via:

Definition at line 160 of file FluxUtilities.h.

160 : _magKey(s["mag"]), _magErrKey(s["magErr"]) {}

Member Function Documentation

◆ addFields()

MagResultKey lsst::meas::base::MagResultKey::addFields ( afw::table::Schema schema,
std::string const &  name 
)
static

Add a pair of _mag, _magErr fields to a Schema, and return a MagResultKey that points to them.

Parameters
[in,out]schemaSchema to add fields to.
[in]nameName prefix for all fields; "_mag", "_magErr" will be appended to this to form the full field names.

Definition at line 57 of file FluxUtilities.cc.

57  {
59  result._magKey = schema.addField<Mag>(schema.join(name, "mag"), "Magnitude");
60  result._magErrKey = schema.addField<MagErrElement>(schema.join(name, "magErr"), "Error on magnitude");
61  return result;
62 }

◆ get()

MagResult lsst::meas::base::MagResultKey::get ( afw::table::BaseRecord const &  record) const
virtual

Get a MagResult from the given record.

Implements lsst::afw::table::OutputFunctorKey< MagResult >.

Definition at line 64 of file FluxUtilities.cc.

64  {
65  MagResult result = {record.get(_magKey), record.get(_magErrKey)};
66  return result;
67 }

◆ set() [1/3]

void lsst::meas::base::MagResultKey::set ( afw::table::BaseRecord record,
afw::image::Measurement const &  magnitude 
) const
virtual

Set a MagResult in the record given the result of afw::image::PhotoCalib::instFluxToMagnitude.

Definition at line 74 of file FluxUtilities.cc.

74  {
75  record.set(_magKey, magResult.value);
76  record.set(_magErrKey, magResult.error);
77 }

◆ set() [2/3]

void lsst::meas::base::MagResultKey::set ( afw::table::BaseRecord record,
MagResult const &  magResult 
) const
virtual

Set a MagResult in the given record.

Definition at line 69 of file FluxUtilities.cc.

69  {
70  record.set(_magKey, magResult.mag);
71  record.set(_magErrKey, magResult.magErr);
72 }

◆ set() [3/3]

virtual void lsst::afw::table::InputFunctorKey< MagResult >::set ( BaseRecord record,
MagResult const &  value 
) const
pure virtualinherited

The documentation for this class was generated from the following files:
schema
table::Schema schema
Definition: Amplifier.cc:115
lsst::afw::geom.transform.transformContinued.name
string name
Definition: transformContinued.py:32
lsst::meas::base::Mag
double Mag
Definition: constants.h:53
lsst::meas::base::MagErrElement
double MagErrElement
Definition: constants.h:54
lsst::meas::base::MagResultKey::MagResultKey
MagResultKey()
Default constructor; instance will not be usuable unless subsequently assigned to.
Definition: FluxUtilities.h:150
result
py::object result
Definition: _schema.cc:429