22 #ifndef LSST_AFW_CAMERAGEOM_AMPLIFIER_H_INCLUDED 23 #define LSST_AFW_CAMERAGEOM_AMPLIFIER_H_INCLUDED 33 namespace cameraGeom {
118 double getGain()
const {
return getFields().gain; }
142 ndarray::Array<double const, 1, 1>
getLinearityCoeffs()
const {
return getFields().linearityCoeffs; }
162 [[deprecated(
"Amplifier objects always have raw information; will be removed after 19.0.")]]
272 virtual Fields const & getFields()
const = 0;
312 ~
Builder() noexcept
override =
default;
345 _fields.linearityCoeffs = coeffs;
377 _fields.rawHorizontalOverscanBBox =
bbox;
382 _fields.rawVerticalOverscanBBox =
bbox;
387 _fields.rawPrescanBBox =
bbox;
392 _fields.rawHorizontalOverscanBBox =
bbox;
397 _fields.rawVerticalOverscanBBox =
bbox;
402 _fields.rawPrescanBBox =
bbox;
407 _fields.rawPrescanBBox =
bbox;
422 #endif // !LSST_AFW_CAMERAGEOM_AMPLIFIER_H_INCLUDED
Defines the fields and offsets for a table.
void setRawXYOffset(lsst::geom::Extent2I const &xy)
Offset in transformation from pre-raw, unassembled image to trimmed, assembled post-ISR image: final ...
void setRawFlipY(bool rawFlipY)
Flip column order in transformation from untrimmed, assembled raw image to trimmed, assembled post-ISR image?
lsst::geom::Box2I getRawPrescanBBox() const
The bounding box of (horizontal) prescan pixels in the assembled, untrimmed raw image.
bool getHasRawInfo() const
Does this table have raw amplifier information?
AssemblyState
Assembly state of the amplifier, used to identify bounding boxes and component existence.
ndarray::Array< double const, 1, 1 > linearityCoeffs
lsst::geom::Box2I getRawHorizontalPrescanBBox() const
The bounding box of horizontal/serial prescan pixels in the assembled, untrimmed raw image...
void setRawHorizontalOverscanBBox(lsst::geom::Box2I const &bbox)
The bounding box of horizontal overscan pixels in the assembled, untrimmed raw image.
ndarray::Array< double const, 1, 1 > getLinearityCoeffs() const
Vector of linearity coefficients.
std::string linearityType
lsst::geom::Box2I getRawVerticalOverscanBBox() const
The bounding box of vertical overscan pixels in the assembled, untrimmed raw image.
void setBBox(lsst::geom::Box2I const &bbox)
Bounding box of amplifier pixels in the trimmed, assembled image.
void setLinearityThreshold(double threshold)
Level in ADU above which linearity should be applied.
lsst::geom::Box2I getRawParallelOverscanBBox() const
The bounding box of parallel overscan pixels (equivalent to vertical overscan pixels) in the assemble...
void setRawPrescanBBox(lsst::geom::Box2I const &bbox)
The bounding box of (horizontal) prescan pixels in the assembled, untrimmed raw image.
ItemVariant const * other
table::Key< double > suspectLevel
void setLinearityCoeffs(ndarray::Array< double const, 1, 1 > const &coeffs)
Vector of linearity coefficients.
double getGain() const
Amplifier gain in e-/ADU.
double getSuspectLevel() const
Level in ADU above which pixels are considered suspicious, meaning they may be affected by unknown sy...
lsst::geom::Box2I getRawBBox() const
Bounding box of all amplifier pixels on untrimmed, assembled raw image.
void setSuspectLevel(double suspectLevel)
Level in ADU above which pixels are considered suspicious, meaning they may be affected by unknown sy...
void setGain(double gain)
Amplifier gain in e-/ADU.
void setRawFlipX(bool rawFlipX)
Flip row order in transformation from untrimmed, assembled raw image to trimmed, assembled post-ISR i...
A mutable Amplifier subclass class that can be used to incrementally construct or modify Amplifiers...
lsst::geom::Box2I getRawSerialOverscanBBox() const
The bounding box of serial overscan pixels (equivalent to horizontal overscan pixels) in the assemble...
void setSaturation(double saturation)
Level in ADU above which pixels are considered saturated; use nan if no such level applies...
lsst::geom::Box2I rawBBox
table::Key< double > saturation
std::string getName() const
Name of the amplifier.
void setRawSerialOverscanBBox(lsst::geom::Box2I const &bbox)
The bounding box of serial overscan pixels (equivalent to horizontal overscan pixels) in the assemble...
lsst::geom::Box2I rawPrescanBBox
A base class for image defects.
void setRawParallelOverscanBBox(lsst::geom::Box2I const &bbox)
The bounding box of parallel overscan pixels (equivalent to vertical overscan pixels) in the assemble...
table::Key< double > gain
table::Key< double > readNoise
double linearityThreshold
void setLinearityType(std::string const &type)
Name of linearity parameterization.
void setName(std::string const &name)
Name of the amplifier.
void setLinearityMaximum(double maximum)
Level in ADU above which the linearity relation is poorly defined.
std::string linearityUnits
bool getRawFlipY() const
Flip column order in transformation from untrimmed, assembled raw image to trimmed, assembled post-ISR image?
lsst::geom::Box2I getRawDataBBox() const
Bounding box of amplifier image pixels on untrimmed, assembled raw image.
void setLinearityUnits(std::string const &units)
Units for the input to the linearity relation (DN).
void setRawDataBBox(lsst::geom::Box2I const &bbox)
Bounding box of amplifier image pixels on untrimmed, assembled raw image.
Base class for all records.
lsst::geom::Box2I getRawHorizontalOverscanBBox() const
The bounding box of horizontal overscan pixels in the assembled, untrimmed raw image.
void setRawHorizontalPrescanBBox(lsst::geom::Box2I const &bbox)
The bounding box of horizontal/serial prescan pixels in the assembled, untrimmed raw image...
double getLinearityMaximum() const
Level in ADU above which the linearity relation is poorly defined.
void setRawVerticalOverscanBBox(lsst::geom::Box2I const &bbox)
The bounding box of vertical overscan pixels in the assembled, untrimmed raw image.
void setReadoutCorner(ReadoutCorner readoutCorner)
Readout corner in the trimmed, assembled image.
double getReadNoise() const
Amplifier read noise, in e-.
ReadoutCorner getReadoutCorner() const
Readout corner in the trimmed, assembled image.
lsst::geom::Extent2I getRawXYOffset() const
Offset in transformation from pre-raw, unassembled image to trimmed, assembled post-ISR image: final ...
void setRawBBox(lsst::geom::Box2I const &bbox)
Bounding box of all amplifier pixels on untrimmed, assembled raw image.
Geometry and electronic information about raw amplifier images.
bool getRawFlipX() const
Flip row order in transformation from untrimmed, assembled raw image to trimmed, assembled post-ISR i...
void setReadNoise(double readNoise)
Amplifier read noise, in e-.
lsst::geom::Box2I rawDataBBox
lsst::geom::Box2I getRawSerialPrescanBBox() const
The bounding box of horizontal/serial prescan pixels in the assembled, untrimmed raw image...
lsst::geom::Box2I rawHorizontalOverscanBBox
lsst::geom::Extent2I rawXYOffset
void setRawSerialPrescanBBox(lsst::geom::Box2I const &bbox)
The bounding box of horizontal/serial prescan pixels in the assembled, untrimmed raw image...
table::Key< table::Flag > rawFlipX
std::string getLinearityType() const
Name of linearity parameterization.
An integer coordinate rectangle.
lsst::geom::Box2I getBBox() const
Bounding box of amplifier pixels in the trimmed, assembled image.
table::Key< int > readoutCorner
double getLinearityThreshold() const
Level in ADU above which linearity should be applied.
table::Key< table::Flag > rawFlipY
Fields const & getFields() const override
ReadoutCorner
Readout corner, in the frame of reference of the assembled image.
double getSaturation() const
Level in ADU above which pixels are considered saturated; use nan if no such level applies...
std::string getLinearityUnits() const
Units for the input to the linearity relation (DN).
lsst::geom::Box2I rawVerticalOverscanBBox