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 Attributes | List of all members
lsst::afw::table::FluxSlotDefinition Class Reference

SlotDefinition specialization for fluxes. More...

#include <slots.h>

Inheritance diagram for lsst::afw::table::FluxSlotDefinition:
lsst::afw::table::SlotDefinition

Public Types

using MeasValue = double
 Type returned by accessing the slot measurement. More...
 
using ErrValue = double
 Type returned by accessing the slot uncertainty. More...
 
using MeasKey = Key< double >
 Key type used to access the slot measurement. More...
 
using ErrKey = Key< double >
 Key type used to access the slot uncertainty. More...
 

Public Member Functions

 FluxSlotDefinition (std::string const &name)
 Construct a SlotDefinition from the name of the slot (e.g. "PsfFlux") More...
 
bool isValid () const
 Return true if the key associated with the measurement is valid. More...
 
MeasKey getMeasKey () const
 Return the cached Key used to access the slot measurement. More...
 
ErrKey getErrKey () const
 Return the cached Key used to access the slot uncertainty. More...
 
Key< Flag > getFlagKey () const
 Return the cached Key used to access the slot failure flag. More...
 
void setKeys (std::string const &alias, Schema const &schema)
 Update the cached Keys following an change of aliases in the given Schema. More...
 
 FluxSlotDefinition (FluxSlotDefinition const &)=default
 
 FluxSlotDefinition (FluxSlotDefinition &&)=default
 
FluxSlotDefinitionoperator= (FluxSlotDefinition const &)=default
 
FluxSlotDefinitionoperator= (FluxSlotDefinition &&)=default
 
 ~FluxSlotDefinition ()=default
 
std::string getName () const
 Return the name of the slot (e.g. "Centroid" or "PsfFlux") More...
 
std::string getAlias () const
 Return the alias field prefix used to lookup Keys for the slot. More...
 

Protected Attributes

std::string _name
 

Detailed Description

SlotDefinition specialization for fluxes.

Definition at line 73 of file slots.h.

Member Typedef Documentation

◆ ErrKey

Key type used to access the slot uncertainty.

Definition at line 78 of file slots.h.

◆ ErrValue

Type returned by accessing the slot uncertainty.

Definition at line 76 of file slots.h.

◆ MeasKey

Key type used to access the slot measurement.

Definition at line 77 of file slots.h.

◆ MeasValue

Type returned by accessing the slot measurement.

Definition at line 75 of file slots.h.

Constructor & Destructor Documentation

◆ FluxSlotDefinition() [1/3]

lsst::afw::table::FluxSlotDefinition::FluxSlotDefinition ( std::string const &  name)
inlineexplicit

Construct a SlotDefinition from the name of the slot (e.g. "PsfFlux")

Definition at line 81 of file slots.h.

81 : SlotDefinition(name) {}
table::Key< std::string > name
Definition: Amplifier.cc:116
SlotDefinition(std::string const &name)
Construct a SlotDefinition from the name of the slot (e.g. "Centroid" or "PsfFlux")
Definition: slots.h:50

◆ FluxSlotDefinition() [2/3]

lsst::afw::table::FluxSlotDefinition::FluxSlotDefinition ( FluxSlotDefinition const &  )
default

◆ FluxSlotDefinition() [3/3]

lsst::afw::table::FluxSlotDefinition::FluxSlotDefinition ( FluxSlotDefinition &&  )
default

◆ ~FluxSlotDefinition()

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

Member Function Documentation

◆ getAlias()

std::string lsst::afw::table::SlotDefinition::getAlias ( ) const
inlineinherited

Return the alias field prefix used to lookup Keys for the slot.

This simply prepends "slot_" to the slot name.

Definition at line 60 of file slots.h.

60 { return "slot_" + _name; }

◆ getErrKey()

ErrKey lsst::afw::table::FluxSlotDefinition::getErrKey ( ) const
inline

Return the cached Key used to access the slot uncertainty.

Definition at line 90 of file slots.h.

90 { return _errKey; }

◆ getFlagKey()

Key<Flag> lsst::afw::table::FluxSlotDefinition::getFlagKey ( ) const
inline

Return the cached Key used to access the slot failure flag.

Definition at line 93 of file slots.h.

93 { return _flagKey; }

◆ getMeasKey()

MeasKey lsst::afw::table::FluxSlotDefinition::getMeasKey ( ) const
inline

Return the cached Key used to access the slot measurement.

Definition at line 87 of file slots.h.

87 { return _measKey; }

◆ getName()

std::string lsst::afw::table::SlotDefinition::getName ( ) const
inlineinherited

Return the name of the slot (e.g. "Centroid" or "PsfFlux")

Definition at line 53 of file slots.h.

53 { return _name; }

◆ isValid()

bool lsst::afw::table::FluxSlotDefinition::isValid ( ) const
inline

Return true if the key associated with the measurement is valid.

Definition at line 84 of file slots.h.

84 { return _measKey.isValid(); }
bool isValid() const noexcept
Return true if the key was initialized to valid offset.
Definition: Key.h:97

◆ operator=() [1/2]

FluxSlotDefinition& lsst::afw::table::FluxSlotDefinition::operator= ( FluxSlotDefinition &&  )
default

◆ operator=() [2/2]

FluxSlotDefinition& lsst::afw::table::FluxSlotDefinition::operator= ( FluxSlotDefinition const &  )
default

◆ setKeys()

void lsst::afw::table::FluxSlotDefinition::setKeys ( std::string const &  alias,
Schema const &  schema 
)

Update the cached Keys following an change of aliases in the given Schema.

This method is intended for internal use by SourceTable only.

Parameters
[in]aliasIf non-empty, abort early if this string does not start with getAlias() (used to see if an alias change might have affected this slot, and avoid unnecessary work if not).
[in]schemaSchema to search for Keys.

Definition at line 32 of file slots.cc.

32  {
33  SubSchema s = schema["slot"][_name];
34  if (!alias.empty() && !startsWith(alias, s.getPrefix())) return;
35  _measKey = MeasKey();
36  _errKey = ErrKey();
37  _flagKey = Key<Flag>();
38  MeasFieldNameGetter helper(s["instFlux"], schema);
39  if (!helper.defined) {
40  return;
41  }
42  _measKey = helper.replaced;
43  try {
44  _errKey = s["instFluxErr"];
45  } catch (pex::exceptions::NotFoundError &) {
46  }
47  try {
48  _flagKey = s["flag"];
49  } catch (pex::exceptions::NotFoundError &) {
50  }
51 }
table::Schema schema
Definition: python.h:134
Key< double > MeasKey
Key type used to access the slot measurement.
Definition: slots.h:77
Key< double > ErrKey
Key type used to access the slot uncertainty.
Definition: slots.h:78

Member Data Documentation

◆ _name

std::string lsst::afw::table::SlotDefinition::_name
protectedinherited

Definition at line 69 of file slots.h.


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