LSSTApplications  17.0+115,17.0+12,17.0+65,18.0.0+14,18.0.0+29,18.0.0+6,18.0.0+70,18.0.0-4-g68ffd23+1,18.1.0-1-g0001055+9,18.1.0-1-g03d53ef+2,18.1.0-1-g1349e88+44,18.1.0-1-g2505f39+35,18.1.0-1-g5315e5e+2,18.1.0-1-g5e4b7ea+11,18.1.0-1-g7e8fceb+2,18.1.0-1-g85f8cd4+38,18.1.0-1-gd55f500+25,18.1.0-13-gfe4edf0b,18.1.0-14-g259bd21+9,18.1.0-14-gd04256d+35,18.1.0-2-g4903023+12,18.1.0-2-g5f9922c+13,18.1.0-2-gd3b74e5+3,18.1.0-2-gfbf3545+22,18.1.0-2-gfefb8b5+34,18.1.0-22-g936f6a9b4,18.1.0-23-g364d03b8,18.1.0-23-g52ab674,18.1.0-3-g52aa583+17,18.1.0-3-g8f4a2b1+32,18.1.0-3-gb69f684+30,18.1.0-4-g1ee41a7+2,18.1.0-5-g6dbcb01+31,18.1.0-5-gc286bb7+4,18.1.0-6-g857e778+4,18.1.0-7-gae09a6d+18,18.1.0-8-g42b2ab3+10,18.1.0-8-gc69d46e+17,18.1.0-9-gee19f03+2,w.2019.44
LSSTDataManagementBasePackage
Public Types | Public Member Functions | Protected Member Functions | Friends | List of all members
lsst::afw::table::AmpInfoRecord Class Reference

Geometry and electronic information about raw amplifier images. More...

#include <AmpInfo.h>

Inheritance diagram for lsst::afw::table::AmpInfoRecord:
lsst::afw::table::BaseRecord

Public Types

typedef AmpInfoTable Table
 
typedef ColumnViewT< AmpInfoRecordColumnView
 
typedef CatalogT< AmpInfoRecordCatalog
 
typedef CatalogT< AmpInfoRecord const > ConstCatalog
 

Public Member Functions

 AmpInfoRecord (AmpInfoRecord const &)=delete
 
 AmpInfoRecord (AmpInfoRecord &&)=delete
 
AmpInfoRecordoperator= (AmpInfoRecord const &)=delete
 
AmpInfoRecordoperator= (AmpInfoRecord &&)=delete
 
 ~AmpInfoRecord () override
 
 AmpInfoRecord (ConstructionToken const &token, detail::RecordData &&data)
 Constructor used by AmpInfoTable. More...
 
std::shared_ptr< AmpInfoTable const > getTable () const
 
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
 
std::string getName () const
 Convenience accessors for the keys in the minimal reference schema. More...
 
void setName (std::string const &name)
 name of amplifier location in camera More...
 
lsst::geom::Box2I getBBox () const
 Convenience accessors for the keys in the minimal reference schema. More...
 
void setBBox (lsst::geom::Box2I const &bbox)
 bounding box of amplifier pixels in assembled image More...
 
double getGain () const
 Convenience accessors for the keys in the minimal reference schema. More...
 
void setGain (double gain)
 amplifier gain in e-/ADU More...
 
double getReadNoise () const
 Convenience accessors for the keys in the minimal reference schema. More...
 
void setReadNoise (double readNoise)
 amplifier read noise, in e- More...
 
double getSaturation () const
 Convenience accessors for the keys in the minimal reference schema. More...
 
void setSaturation (double saturation)
 level in ADU above which pixels are considered saturated; More...
 
double getSuspectLevel () const
 Convenience accessors for the keys in the minimal reference schema. More...
 
void setSuspectLevel (double suspectLevel)
 level in ADU above which pixels are considered suspicious, More...
 
ReadoutCorner getReadoutCorner () const
 Convenience accessors for the keys in the minimal reference schema. More...
 
void setReadoutCorner (ReadoutCorner val)
 set readout corner More...
 
std::vector< double > getLinearityCoeffs () const
 Convenience accessors for the keys in the minimal reference schema. More...
 
void setLinearityCoeffs (std::vector< double > const &coeffs)
 vector of linearity coefficients More...
 
std::string getLinearityType () const
 Convenience accessors for the keys in the minimal reference schema. More...
 
void setLinearityType (std::string const &type)
 name of linearity parameterization More...
 
bool getHasRawInfo () const
 Convenience accessors for the keys in the minimal reference schema. More...
 
void setHasRawInfo (bool hasRawInfo)
 does this table have raw amplifier information? More...
 
lsst::geom::Box2I getRawBBox () const
 Convenience accessors for the keys in the minimal reference schema. More...
 
void setRawBBox (lsst::geom::Box2I const &bbox)
 bounding box of all amplifier pixels on raw image More...
 
lsst::geom::Box2I getRawDataBBox () const
 Convenience accessors for the keys in the minimal reference schema. More...
 
void setRawDataBBox (lsst::geom::Box2I const &bbox)
 bounding box of amplifier image pixels on raw image More...
 
bool getRawFlipX () const
 Convenience accessors for the keys in the minimal reference schema. More...
 
void setRawFlipX (bool rawFlipX)
 flip row order to make assembled image? More...
 
bool getRawFlipY () const
 Convenience accessors for the keys in the minimal reference schema. More...
 
void setRawFlipY (bool rawFlipY)
 flip column order to make an assembled image? More...
 
lsst::geom::Extent2I getRawXYOffset () const
 Convenience accessors for the keys in the minimal reference schema. More...
 
void setRawXYOffset (lsst::geom::Extent2I const &xy)
 offset for assembling a raw CCD image: desired xy0 - raw xy0 More...
 
lsst::geom::Box2I getRawHorizontalOverscanBBox () const
 Convenience accessors for the keys in the minimal reference schema. More...
 
void setRawHorizontalOverscanBBox (lsst::geom::Box2I const &bbox)
 bounding box of usable horizontal overscan pixels More...
 
lsst::geom::Box2I getRawVerticalOverscanBBox () const
 Convenience accessors for the keys in the minimal reference schema. More...
 
void setRawVerticalOverscanBBox (lsst::geom::Box2I const &bbox)
 bounding box of usable vertical overscan pixels More...
 
lsst::geom::Box2I getRawPrescanBBox () const
 Convenience accessors for the keys in the minimal reference schema. More...
 
void setRawPrescanBBox (lsst::geom::Box2I const &bbox)
 bounding box of usable (horizontal) prescan pixels on raw image More...
 

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 AmpInfoTable
 

Detailed Description

Geometry and electronic information about raw amplifier images.

Here is a pictorial example showing the meaning of flipX and flipY:

    CCD with 4 amps        Desired assembled output      Use these parameters

    --x         x--            y
   |  amp1    amp2 |           |                               flipX       flipY
   y               y           |                       amp1    False       True
                               | CCD image             amp2    True        True
   y               y           |                       amp3    False       False
   |  amp3    amp4 |           |                       amp4    True        False
    --x         x--             ----------- x
Note
  • All bounding boxes are parent boxes with respect to the raw image.
  • The overscan and underscan bounding boxes are regions containing USABLE data, NOT the entire underscan and overscan region. These bounding boxes should exclude areas with weird electronic artifacts. Each bounding box can be empty (0 extent) if the corresponding region is not used for data processing.
  • xyOffset is not used for instrument signature removal (ISR); it is intended for use by display utilities. It supports construction of a raw CCD image in the case that raw data is provided as individual amplifier images (which is uncommon):
    • Use 0,0 for cameras that supply raw data as a raw CCD image (most cameras)
    • Use nonzero for cameras that supply raw data as separate amplifier images with xy0=0,0 (LSST)
  • This design assumes assembled X is always +/- raw X, which we require for CCDs (so that bleed trails are always along the Y axis). If you must swap X/Y then add a doTranspose flag.

Definition at line 79 of file AmpInfo.h.

Member Typedef Documentation

◆ Catalog

Definition at line 83 of file AmpInfo.h.

◆ ColumnView

Definition at line 82 of file AmpInfo.h.

◆ ConstCatalog

Definition at line 84 of file AmpInfo.h.

◆ Table

Definition at line 81 of file AmpInfo.h.

Constructor & Destructor Documentation

◆ AmpInfoRecord() [1/3]

lsst::afw::table::AmpInfoRecord::AmpInfoRecord ( AmpInfoRecord const &  )
delete

◆ AmpInfoRecord() [2/3]

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

◆ ~AmpInfoRecord()

lsst::afw::table::AmpInfoRecord::~AmpInfoRecord ( )
overridedefault

◆ AmpInfoRecord() [3/3]

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

Constructor used by AmpInfoTable.

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 101 of file AmpInfo.h.

101  :
102  BaseRecord(token, std::move(data))
103  {}
char * data
Definition: BaseRecord.cc:62
T move(T... args)
BaseRecord(ConstructionToken const &, detail::RecordData &&data)
Construct a record with uninitialized data.
Definition: BaseRecord.cc:144

Member Function Documentation

◆ _assign()

virtual void lsst::afw::table::BaseRecord::_assign ( BaseRecord const &  other)
inlineprotectedvirtualinherited

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

Reimplemented in lsst::afw::table::SourceRecord, and lsst::afw::table::ExposureRecord.

Definition at line 209 of file BaseRecord.h.

209 {}

◆ _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 153 of file BaseRecord.cc.

153  {
154  getSchema().forEach([&os, this](auto const& item) {
155  os << item.field.getName() << ": " << this->get(item.key) << std::endl;
156  });
157 }
T endl(T... args)
void forEach(F &&func) const
Apply a functor to each SchemaItem in the Schema.
Definition: Schema.h:212
Schema getSchema() const
Return the Schema that holds this record&#39;s fields and keys.
Definition: BaseRecord.h:80

◆ 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 123 of file BaseRecord.cc.

123  {
124  if (this->getSchema() != other.getSchema()) {
125  throw LSST_EXCEPT(lsst::pex::exceptions::LogicError, "Unequal schemas in record assignment.");
126  }
127  this->getSchema().forEach(CopyValue(&other, this));
128  this->_assign(other); // let derived classes assign their own stuff
129 }
virtual void _assign(BaseRecord const &other)
Called by assign() after transferring fields to allow subclass data members to be copied...
Definition: BaseRecord.h:209
ItemVariant const * other
Definition: Schema.cc:56
void forEach(F &&func) const
Apply a functor to each SchemaItem in the Schema.
Definition: Schema.h:212
Schema getSchema() const
Return the Schema that holds this record&#39;s fields and keys.
Definition: BaseRecord.h:80
Reports errors in the logical structure of the program.
Definition: Runtime.h:46
#define LSST_EXCEPT(type,...)
Create an exception with a given type.
Definition: Exception.h:48

◆ 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 131 of file BaseRecord.cc.

131  {
132  if (!other.getSchema().contains(mapper.getInputSchema())) {
134  "Unequal schemas between input record and mapper.");
135  }
136  if (!this->getSchema().contains(mapper.getOutputSchema())) {
138  "Unequal schemas between output record and mapper.");
139  }
140  mapper.forEach(CopyValue(&other, this)); // use the functor we defined above
141  this->_assign(other); // let derived classes assign their own stuff
142 }
bool contains(VertexIterator const begin, VertexIterator const end, UnitVector3d const &v)
virtual void _assign(BaseRecord const &other)
Called by assign() after transferring fields to allow subclass data members to be copied...
Definition: BaseRecord.h:209
ItemVariant const * other
Definition: Schema.cc:56
SchemaMapper * mapper
Definition: SchemaMapper.cc:78
Schema getSchema() const
Return the Schema that holds this record&#39;s fields and keys.
Definition: BaseRecord.h:80
Reports errors in the logical structure of the program.
Definition: Runtime.h:46
#define LSST_EXCEPT(type,...)
Create an exception with a given type.
Definition: Exception.h:48

◆ 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  }
Key< U > key
Definition: Schema.cc:281
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  }
Key< U > key
Definition: Schema.cc:281

◆ getBBox()

lsst::geom::Box2I lsst::afw::table::AmpInfoRecord::getBBox ( ) const

Convenience accessors for the keys in the minimal reference schema.

Definition at line 176 of file AmpInfo.cc.

176  {
179 }
static PointKey< int > getBBoxMinKey()
Get keys for standard fields shared by all references.
Definition: AmpInfo.h:235
static PointKey< int > getBBoxExtentKey()
Get keys for standard fields shared by all references.
Definition: AmpInfo.h:236

◆ 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  }
Key< U > key
Definition: Schema.cc:281
#define LSST_EXCEPT(type,...)
Create an exception with a given type.
Definition: Exception.h:48
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  }
Key< U > key
Definition: Schema.cc:281
#define LSST_EXCEPT(type,...)
Create an exception with a given type.
Definition: Exception.h:48
FieldBase< T >::Element Element
Type used to store field data in the table (a field may have multiple elements).
Definition: Field.h:26

◆ getGain()

double lsst::afw::table::AmpInfoRecord::getGain ( ) const

Convenience accessors for the keys in the minimal reference schema.

Definition at line 185 of file AmpInfo.cc.

185 { return get(AmpInfoTable::getGainKey()); }
static Key< double > getGainKey()
Get keys for standard fields shared by all references.
Definition: AmpInfo.h:237

◆ getHasRawInfo()

bool lsst::afw::table::AmpInfoRecord::getHasRawInfo ( ) const

Convenience accessors for the keys in the minimal reference schema.

Definition at line 220 of file AmpInfo.cc.

220 { return get(AmpInfoTable::getHasRawInfoKey()); }
static Key< Flag > getHasRawInfoKey()
Get keys for standard fields shared by all references.
Definition: AmpInfo.h:244

◆ getLinearityCoeffs()

std::vector< double > lsst::afw::table::AmpInfoRecord::getLinearityCoeffs ( ) const

Convenience accessors for the keys in the minimal reference schema.

Definition at line 206 of file AmpInfo.cc.

206  {
207  Key<Array<double> > coeffKey = AmpInfoTable::getLinearityCoeffsKey();
208  return coeffKey.extractVector(*this);
209 }
static Key< Array< double > > getLinearityCoeffsKey()
Get keys for standard fields shared by all references.
Definition: AmpInfo.h:242

◆ getLinearityType()

std::string lsst::afw::table::AmpInfoRecord::getLinearityType ( ) const

Convenience accessors for the keys in the minimal reference schema.

Definition at line 215 of file AmpInfo.cc.

215 { return get(AmpInfoTable::getLinearityTypeKey()); }
static Key< std::string > getLinearityTypeKey()
Get keys for standard fields shared by all references.
Definition: AmpInfo.h:243

◆ getManager()

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

Definition at line 200 of file BaseRecord.h.

200 { return _manager; }

◆ getName()

std::string lsst::afw::table::AmpInfoRecord::getName ( ) const

Convenience accessors for the keys in the minimal reference schema.

Definition at line 173 of file AmpInfo.cc.

173 { return get(AmpInfoTable::getNameKey()); }
static Key< std::string > getNameKey()
Get keys for standard fields shared by all references.
Definition: AmpInfo.h:234

◆ getRawBBox()

lsst::geom::Box2I lsst::afw::table::AmpInfoRecord::getRawBBox ( ) const

Convenience accessors for the keys in the minimal reference schema.

Definition at line 225 of file AmpInfo.cc.

225  {
228 }
static PointKey< int > getRawBBoxMinKey()
Get keys for standard fields shared by all references.
Definition: AmpInfo.h:245
static PointKey< int > getRawBBoxExtentKey()
Get keys for standard fields shared by all references.
Definition: AmpInfo.h:246

◆ getRawDataBBox()

lsst::geom::Box2I lsst::afw::table::AmpInfoRecord::getRawDataBBox ( ) const

Convenience accessors for the keys in the minimal reference schema.

Definition at line 234 of file AmpInfo.cc.

234  {
237 }
static PointKey< int > getRawDataBBoxMinKey()
Get keys for standard fields shared by all references.
Definition: AmpInfo.h:247
static PointKey< int > getRawDataBBoxExtentKey()
Get keys for standard fields shared by all references.
Definition: AmpInfo.h:248

◆ getRawFlipX()

bool lsst::afw::table::AmpInfoRecord::getRawFlipX ( ) const

Convenience accessors for the keys in the minimal reference schema.

Definition at line 243 of file AmpInfo.cc.

243 { return get(AmpInfoTable::getRawFlipXKey()); }
static Key< Flag > getRawFlipXKey()
Get keys for standard fields shared by all references.
Definition: AmpInfo.h:249

◆ getRawFlipY()

bool lsst::afw::table::AmpInfoRecord::getRawFlipY ( ) const

Convenience accessors for the keys in the minimal reference schema.

Definition at line 246 of file AmpInfo.cc.

246 { return get(AmpInfoTable::getRawFlipYKey()); }
static Key< Flag > getRawFlipYKey()
Get keys for standard fields shared by all references.
Definition: AmpInfo.h:250

◆ getRawHorizontalOverscanBBox()

lsst::geom::Box2I lsst::afw::table::AmpInfoRecord::getRawHorizontalOverscanBBox ( ) const

Convenience accessors for the keys in the minimal reference schema.

Definition at line 256 of file AmpInfo.cc.

256  {
257  return lsst::geom::Box2I(
260 }
static PointKey< int > getRawHorizontalOverscanBBoxExtentKey()
Get keys for standard fields shared by all references.
Definition: AmpInfo.h:255
static PointKey< int > getRawHorizontalOverscanBBoxMinKey()
Get keys for standard fields shared by all references.
Definition: AmpInfo.h:252

◆ getRawPrescanBBox()

lsst::geom::Box2I lsst::afw::table::AmpInfoRecord::getRawPrescanBBox ( ) const

Convenience accessors for the keys in the minimal reference schema.

Definition at line 275 of file AmpInfo.cc.

275  {
278 }
static PointKey< int > getRawPrescanBBoxExtentKey()
Get keys for standard fields shared by all references.
Definition: AmpInfo.h:265
static PointKey< int > getRawPrescanBBoxMinKey()
Get keys for standard fields shared by all references.
Definition: AmpInfo.h:264

◆ getRawVerticalOverscanBBox()

lsst::geom::Box2I lsst::afw::table::AmpInfoRecord::getRawVerticalOverscanBBox ( ) const

Convenience accessors for the keys in the minimal reference schema.

Definition at line 266 of file AmpInfo.cc.

266  {
269 }
static PointKey< int > getRawVerticalOverscanBBoxMinKey()
Get keys for standard fields shared by all references.
Definition: AmpInfo.h:258
static PointKey< int > getRawVerticalOverscanBBoxExtentKey()
Get keys for standard fields shared by all references.
Definition: AmpInfo.h:261

◆ getRawXYOffset()

lsst::geom::Extent2I lsst::afw::table::AmpInfoRecord::getRawXYOffset ( ) const

Convenience accessors for the keys in the minimal reference schema.

Definition at line 249 of file AmpInfo.cc.

249  {
251 }
static PointKey< int > getRawXYOffsetKey()
Get keys for standard fields shared by all references.
Definition: AmpInfo.h:251
Extent< int, 2 > Extent2I
Definition: Extent.h:397

◆ getReadNoise()

double lsst::afw::table::AmpInfoRecord::getReadNoise ( ) const

Convenience accessors for the keys in the minimal reference schema.

Definition at line 196 of file AmpInfo.cc.

196 { return get(AmpInfoTable::getReadNoiseKey()); }
static Key< double > getReadNoiseKey()
Get keys for standard fields shared by all references.
Definition: AmpInfo.h:238

◆ getReadoutCorner()

ReadoutCorner lsst::afw::table::AmpInfoRecord::getReadoutCorner ( ) const

Convenience accessors for the keys in the minimal reference schema.

Definition at line 199 of file AmpInfo.cc.

199  {
200  return static_cast<ReadoutCorner>(get(AmpInfoTable::getReadoutCornerKey()));
201 }
ReadoutCorner
Readout corner, in the frame of reference of the assembled image.
Definition: AmpInfo.h:39
static Key< int > getReadoutCornerKey()
Get keys for standard fields shared by all references.
Definition: AmpInfo.h:241

◆ getSaturation()

double lsst::afw::table::AmpInfoRecord::getSaturation ( ) const

Convenience accessors for the keys in the minimal reference schema.

Definition at line 188 of file AmpInfo.cc.

188 { return get(AmpInfoTable::getSaturationKey()); }
static Key< double > getSaturationKey()
Get keys for standard fields shared by all references.
Definition: AmpInfo.h:239

◆ 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(); }

◆ getSuspectLevel()

double lsst::afw::table::AmpInfoRecord::getSuspectLevel ( ) const

Convenience accessors for the keys in the minimal reference schema.

Definition at line 191 of file AmpInfo.cc.

191 { return get(AmpInfoTable::getSuspectLevelKey()); }
static Key< double > getSuspectLevelKey()
Get keys for standard fields shared by all references.
Definition: AmpInfo.h:240

◆ getTable()

std::shared_ptr<AmpInfoTable const> lsst::afw::table::AmpInfoRecord::getTable ( ) const
inline

Definition at line 105 of file AmpInfo.h.

105  {
107  }
T static_pointer_cast(T... args)
std::shared_ptr< BaseTable const > getTable() const
Return the table this record is associated with.
Definition: BaseRecord.h:83

◆ operator=() [1/2]

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

◆ operator=() [2/2]

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

◆ operator[]() [1/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  }
Key< U > key
Definition: Schema.cc:281
Field< T >::Element * getElement(Key< T > const &key)
Return a pointer to the underlying elements of a field (non-const).
Definition: BaseRecord.h:93

◆ operator[]() [2/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  }
Key< U > key
Definition: Schema.cc:281
Field< T >::Element * getElement(Key< T > const &key)
Return a pointer to the underlying elements of a field (non-const).
Definition: BaseRecord.h:93

◆ operator[]() [3/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  }
Key< U > key
Definition: Schema.cc:281

◆ operator[]() [4/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  }
Key< U > key
Definition: Schema.cc:281

◆ set() [1/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  }
Key< U > key
Definition: Schema.cc:281
Field< T >::Element * getElement(Key< T > const &key)
Return a pointer to the underlying elements of a field (non-const).
Definition: BaseRecord.h:93

◆ set() [2/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  }
Key< U > key
Definition: Schema.cc:281

◆ setBBox()

void lsst::afw::table::AmpInfoRecord::setBBox ( lsst::geom::Box2I const &  bbox)

bounding box of amplifier pixels in assembled image

Definition at line 180 of file AmpInfo.cc.

180  {
181  set(AmpInfoTable::getBBoxMinKey(), bbox.getMin());
183 }
static PointKey< int > getBBoxMinKey()
Get keys for standard fields shared by all references.
Definition: AmpInfo.h:235
table::Box2IKey bbox
Definition: Detector.cc:169
Point< int, 2 > Point2I
Definition: Point.h:321
static PointKey< int > getBBoxExtentKey()
Get keys for standard fields shared by all references.
Definition: AmpInfo.h:236

◆ setGain()

void lsst::afw::table::AmpInfoRecord::setGain ( double  gain)

amplifier gain in e-/ADU

Definition at line 186 of file AmpInfo.cc.

186 { set(AmpInfoTable::getGainKey(), gain); }
static Key< double > getGainKey()
Get keys for standard fields shared by all references.
Definition: AmpInfo.h:237

◆ setHasRawInfo()

void lsst::afw::table::AmpInfoRecord::setHasRawInfo ( bool  hasRawInfo)

does this table have raw amplifier information?

Definition at line 221 of file AmpInfo.cc.

221  {
222  set(AmpInfoTable::getHasRawInfoKey(), hasrawamplifier);
223 }
static Key< Flag > getHasRawInfoKey()
Get keys for standard fields shared by all references.
Definition: AmpInfo.h:244

◆ setLinearityCoeffs()

void lsst::afw::table::AmpInfoRecord::setLinearityCoeffs ( std::vector< double > const &  coeffs)

vector of linearity coefficients

Definition at line 210 of file AmpInfo.cc.

210  {
211  Key<Array<double> > coeffKey = AmpInfoTable::getLinearityCoeffsKey();
212  coeffKey.assignVector(*this, linearityCoeffs);
213 }
static Key< Array< double > > getLinearityCoeffsKey()
Get keys for standard fields shared by all references.
Definition: AmpInfo.h:242

◆ setLinearityType()

void lsst::afw::table::AmpInfoRecord::setLinearityType ( std::string const &  type)

name of linearity parameterization

Definition at line 216 of file AmpInfo.cc.

216  {
217  set(AmpInfoTable::getLinearityTypeKey(), linearityType);
218 }
static Key< std::string > getLinearityTypeKey()
Get keys for standard fields shared by all references.
Definition: AmpInfo.h:243

◆ setName()

void lsst::afw::table::AmpInfoRecord::setName ( std::string const &  name)

name of amplifier location in camera

Definition at line 174 of file AmpInfo.cc.

174 { set(AmpInfoTable::getNameKey(), name); }
static Key< std::string > getNameKey()
Get keys for standard fields shared by all references.
Definition: AmpInfo.h:234

◆ setRawBBox()

void lsst::afw::table::AmpInfoRecord::setRawBBox ( lsst::geom::Box2I const &  bbox)

bounding box of all amplifier pixels on raw image

Definition at line 229 of file AmpInfo.cc.

229  {
230  set(AmpInfoTable::getRawBBoxMinKey(), bbox.getMin());
232 }
static PointKey< int > getRawBBoxMinKey()
Get keys for standard fields shared by all references.
Definition: AmpInfo.h:245
table::Box2IKey bbox
Definition: Detector.cc:169
static PointKey< int > getRawBBoxExtentKey()
Get keys for standard fields shared by all references.
Definition: AmpInfo.h:246
Point< int, 2 > Point2I
Definition: Point.h:321

◆ setRawDataBBox()

void lsst::afw::table::AmpInfoRecord::setRawDataBBox ( lsst::geom::Box2I const &  bbox)

bounding box of amplifier image pixels on raw image

Definition at line 238 of file AmpInfo.cc.

238  {
239  set(AmpInfoTable::getRawDataBBoxMinKey(), bbox.getMin());
241 }
static PointKey< int > getRawDataBBoxMinKey()
Get keys for standard fields shared by all references.
Definition: AmpInfo.h:247
table::Box2IKey bbox
Definition: Detector.cc:169
Point< int, 2 > Point2I
Definition: Point.h:321
static PointKey< int > getRawDataBBoxExtentKey()
Get keys for standard fields shared by all references.
Definition: AmpInfo.h:248

◆ setRawFlipX()

void lsst::afw::table::AmpInfoRecord::setRawFlipX ( bool  rawFlipX)

flip row order to make assembled image?

Definition at line 244 of file AmpInfo.cc.

244 { set(AmpInfoTable::getRawFlipXKey(), rawFlipX); }
static Key< Flag > getRawFlipXKey()
Get keys for standard fields shared by all references.
Definition: AmpInfo.h:249

◆ setRawFlipY()

void lsst::afw::table::AmpInfoRecord::setRawFlipY ( bool  rawFlipY)

flip column order to make an assembled image?

Definition at line 247 of file AmpInfo.cc.

247 { set(AmpInfoTable::getRawFlipYKey(), rawFlipY); }
static Key< Flag > getRawFlipYKey()
Get keys for standard fields shared by all references.
Definition: AmpInfo.h:250

◆ setRawHorizontalOverscanBBox()

void lsst::afw::table::AmpInfoRecord::setRawHorizontalOverscanBBox ( lsst::geom::Box2I const &  bbox)

bounding box of usable horizontal overscan pixels

Definition at line 261 of file AmpInfo.cc.

261  {
264 }
static PointKey< int > getRawHorizontalOverscanBBoxExtentKey()
Get keys for standard fields shared by all references.
Definition: AmpInfo.h:255
table::Box2IKey bbox
Definition: Detector.cc:169
Point< int, 2 > Point2I
Definition: Point.h:321
static PointKey< int > getRawHorizontalOverscanBBoxMinKey()
Get keys for standard fields shared by all references.
Definition: AmpInfo.h:252

◆ setRawPrescanBBox()

void lsst::afw::table::AmpInfoRecord::setRawPrescanBBox ( lsst::geom::Box2I const &  bbox)

bounding box of usable (horizontal) prescan pixels on raw image

Definition at line 279 of file AmpInfo.cc.

279  {
282 }
static PointKey< int > getRawPrescanBBoxExtentKey()
Get keys for standard fields shared by all references.
Definition: AmpInfo.h:265
table::Box2IKey bbox
Definition: Detector.cc:169
Point< int, 2 > Point2I
Definition: Point.h:321
static PointKey< int > getRawPrescanBBoxMinKey()
Get keys for standard fields shared by all references.
Definition: AmpInfo.h:264

◆ setRawVerticalOverscanBBox()

void lsst::afw::table::AmpInfoRecord::setRawVerticalOverscanBBox ( lsst::geom::Box2I const &  bbox)

bounding box of usable vertical overscan pixels

Definition at line 270 of file AmpInfo.cc.

270  {
273 }
static PointKey< int > getRawVerticalOverscanBBoxMinKey()
Get keys for standard fields shared by all references.
Definition: AmpInfo.h:258
table::Box2IKey bbox
Definition: Detector.cc:169
Point< int, 2 > Point2I
Definition: Point.h:321
static PointKey< int > getRawVerticalOverscanBBoxExtentKey()
Get keys for standard fields shared by all references.
Definition: AmpInfo.h:261

◆ setRawXYOffset()

void lsst::afw::table::AmpInfoRecord::setRawXYOffset ( lsst::geom::Extent2I const &  xy)

offset for assembling a raw CCD image: desired xy0 - raw xy0

Definition at line 252 of file AmpInfo.cc.

252  {
253  set(AmpInfoTable::getRawXYOffsetKey(), lsst::geom::Point2I(rawxyoffset.asPair()));
254 }
static PointKey< int > getRawXYOffsetKey()
Get keys for standard fields shared by all references.
Definition: AmpInfo.h:251
Point< int, 2 > Point2I
Definition: Point.h:321

◆ setReadNoise()

void lsst::afw::table::AmpInfoRecord::setReadNoise ( double  readNoise)

amplifier read noise, in e-

Definition at line 197 of file AmpInfo.cc.

197 { set(AmpInfoTable::getReadNoiseKey(), readNoise); }
static Key< double > getReadNoiseKey()
Get keys for standard fields shared by all references.
Definition: AmpInfo.h:238

◆ setReadoutCorner()

void lsst::afw::table::AmpInfoRecord::setReadoutCorner ( ReadoutCorner  val)

set readout corner

Definition at line 202 of file AmpInfo.cc.

202  {
203  set(AmpInfoTable::getReadoutCornerKey(), readoutCorner);
204 }
static Key< int > getReadoutCornerKey()
Get keys for standard fields shared by all references.
Definition: AmpInfo.h:241

◆ setSaturation()

void lsst::afw::table::AmpInfoRecord::setSaturation ( double  saturation)

level in ADU above which pixels are considered saturated;

use nan if no such level applies",

Definition at line 189 of file AmpInfo.cc.

189 { set(AmpInfoTable::getSaturationKey(), saturation); }
static Key< double > getSaturationKey()
Get keys for standard fields shared by all references.
Definition: AmpInfo.h:239

◆ setSuspectLevel()

void lsst::afw::table::AmpInfoRecord::setSuspectLevel ( double  suspectLevel)

level in ADU above which pixels are considered suspicious,

meaning they may be affected by unknown systematics; for example if non-linearity corrections above a certain level are unstable then that would be a useful value for suspectLevel; use nan if no such level applies",

Definition at line 192 of file AmpInfo.cc.

192  {
193  set(AmpInfoTable::getSuspectLevelKey(), suspectLevel);
194 }
static Key< double > getSuspectLevelKey()
Get keys for standard fields shared by all references.
Definition: AmpInfo.h:240

Friends And Related Function Documentation

◆ AmpInfoTable

friend class AmpInfoTable
friend

Definition at line 178 of file AmpInfo.h.


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