22 #ifndef LSST_AFW_CAMERAGEOM_AMPLIFIER_H_INCLUDED
23 #define LSST_AFW_CAMERAGEOM_AMPLIFIER_H_INCLUDED
33 namespace cameraGeom {
102 void toRecord(table::BaseRecord & record) const;
table::Key< std::string > name
table::Key< double > gain
table::Key< double > saturation
table::Key< double > readNoise
table::Key< table::Flag > rawFlipX
table::Key< int > readoutCorner
table::Key< table::Flag > rawFlipY
table::Key< double > suspectLevel
ItemVariant const * other
A mutable Amplifier subclass class that can be used to incrementally construct or modify Amplifiers.
Builder & operator=(Builder const &)=default
Standard copy assignment.
void setSaturation(double saturation)
Level in ADU above which pixels are considered saturated; use nan if no such level applies.
Builder & operator=(Builder &&)=default
Standard move assignment.
void setRawParallelOverscanBBox(lsst::geom::Box2I const &bbox)
The bounding box of parallel overscan pixels (equivalent to vertical overscan pixels) in the assemble...
void setBBox(lsst::geom::Box2I const &bbox)
Bounding box of amplifier pixels in the trimmed, assembled image.
void setRawFlipY(bool rawFlipY)
Flip column order in transformation from untrimmed, assembled raw image to trimmed,...
Builder()=default
Construct a Builder with default values for all fields.
void setReadNoise(double readNoise)
Amplifier read noise, in e-.
void setLinearityThreshold(double threshold)
Level in ADU above which linearity should be applied.
void setLinearityCoeffs(ndarray::Array< double const, 1, 1 > const &coeffs)
Vector of linearity coefficients.
Builder(Builder &&)=default
Standard move constructor.
Builder(Builder const &)=default
Standard copy constructor.
void setRawSerialOverscanBBox(lsst::geom::Box2I const &bbox)
The bounding box of serial overscan pixels (equivalent to horizontal overscan pixels) in the assemble...
~Builder() noexcept override=default
void setRawHorizontalPrescanBBox(lsst::geom::Box2I const &bbox)
The bounding box of horizontal/serial prescan pixels in the assembled, untrimmed raw image.
static Builder fromRecord(table::BaseRecord const &record)
Construct a new Builder object from the fields in the given record.
void setRawHorizontalOverscanBBox(lsst::geom::Box2I const &bbox)
The bounding box of horizontal overscan pixels in the assembled, untrimmed raw image.
std::shared_ptr< Amplifier const > finish() const
Construct an immutable Amplifier with the same values as the Builder.
void setRawFlipX(bool rawFlipX)
Flip row order in transformation from untrimmed, assembled raw image to trimmed, assembled post-ISR i...
Fields const & getFields() const override
void setGain(double gain)
Amplifier gain in e-/ADU.
void setReadoutCorner(ReadoutCorner readoutCorner)
Readout corner in the trimmed, assembled image.
void setRawDataBBox(lsst::geom::Box2I const &bbox)
Bounding box of amplifier image pixels on untrimmed, assembled raw image.
void setLinearityMaximum(double maximum)
Level in ADU above which the linearity relation is poorly defined.
void setSuspectLevel(double suspectLevel)
Level in ADU above which pixels are considered suspicious, meaning they may be affected by unknown sy...
void setLinearityType(std::string const &type)
Name of linearity parameterization.
void setRawVerticalOverscanBBox(lsst::geom::Box2I const &bbox)
The bounding box of vertical overscan pixels in the assembled, untrimmed raw image.
void setRawXYOffset(lsst::geom::Extent2I const &xy)
Offset in transformation from pre-raw, unassembled image to trimmed, assembled post-ISR image: final ...
void setRawPrescanBBox(lsst::geom::Box2I const &bbox)
The bounding box of (horizontal) prescan pixels in the assembled, untrimmed raw image.
void setRawSerialPrescanBBox(lsst::geom::Box2I const &bbox)
The bounding box of horizontal/serial prescan pixels in the assembled, untrimmed raw image.
void setName(std::string const &name)
Name of the amplifier.
void setLinearityUnits(std::string const &units)
Units for the input to the linearity relation (DN).
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.
Amplifier(Amplifier &&)=default
Builder rebuild() const
Return a Builder object initialized with the fields of this.
lsst::geom::Box2I getRawVerticalOverscanBBox() const
The bounding box of vertical overscan pixels in the assembled, untrimmed raw image.
ndarray::Array< double const, 1, 1 > getLinearityCoeffs() const
Vector of linearity coefficients.
lsst::geom::Box2I getRawSerialPrescanBBox() const
The bounding box of horizontal/serial prescan pixels in the assembled, untrimmed raw image.
Amplifier & operator=(Amplifier const &)=default
lsst::geom::Box2I getRawDataBBox() const
Bounding box of amplifier image pixels on untrimmed, assembled raw image.
lsst::geom::Box2I getRawHorizontalOverscanBBox() const
The bounding box of horizontal overscan pixels in the assembled, untrimmed raw image.
bool getRawFlipX() const
Flip row order in transformation from untrimmed, assembled raw image to trimmed, assembled post-ISR i...
ReadoutCorner getReadoutCorner() const
Readout corner in the trimmed, assembled image.
lsst::geom::Box2I getRawSerialOverscanBBox() const
The bounding box of serial overscan pixels (equivalent to horizontal overscan pixels) in the assemble...
void toRecord(table::BaseRecord &record) const
Copy the Amplifier's fields into the given record.
lsst::geom::Box2I getRawBBox() const
Bounding box of all amplifier pixels on untrimmed, assembled raw image.
Amplifier(Amplifier const &)=default
lsst::geom::Box2I getRawHorizontalPrescanBBox() const
The bounding box of horizontal/serial prescan pixels in the assembled, untrimmed raw image.
lsst::geom::Box2I getRawParallelOverscanBBox() const
The bounding box of parallel overscan pixels (equivalent to vertical overscan pixels) in the assemble...
lsst::geom::Extent2I getRawXYOffset() const
Offset in transformation from pre-raw, unassembled image to trimmed, assembled post-ISR image: final ...
std::string getName() const
Name of the amplifier.
virtual Fields const & getFields() const =0
double getLinearityMaximum() const
Level in ADU above which the linearity relation is poorly defined.
static table::Schema getRecordSchema()
Return the schema used in the afw.table representation of amplifiers.
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).
virtual ~Amplifier() noexcept=default
double getSuspectLevel() const
Level in ADU above which pixels are considered suspicious, meaning they may be affected by unknown sy...
bool getRawFlipY() const
Flip column order in transformation from untrimmed, assembled raw image to trimmed,...
Amplifier & operator=(Amplifier &&)=default
std::string getLinearityType() const
Name of linearity parameterization.
lsst::geom::Box2I getRawPrescanBBox() const
The bounding box of (horizontal) prescan pixels in the assembled, untrimmed raw image.
double getReadNoise() const
Amplifier read noise, in e-.
double getGain() const
Amplifier gain in e-/ADU.
double getLinearityThreshold() const
Level in ADU above which linearity should be applied.
lsst::geom::Box2I getBBox() const
Bounding box of amplifier pixels in the trimmed, assembled image.
Base class for all records.
Defines the fields and offsets for a table.
An integer coordinate rectangle.
ReadoutCorner
Readout corner, in the frame of reference of the assembled image.
AssemblyState
Assembly state of the amplifier, used to identify bounding boxes and component existence.
class[[deprecated("Removed with no replacement (but see lsst::afw::image::TransmissionCurve). Will be " "removed after v22.")]] FilterProperty final
Describe the properties of a Filter (e.g.
A base class for image defects.
std::string linearityType
lsst::geom::Extent2I rawXYOffset
lsst::geom::Box2I rawVerticalOverscanBBox
double linearityThreshold
std::string linearityUnits
lsst::geom::Box2I rawPrescanBBox
lsst::geom::Box2I rawBBox
lsst::geom::Box2I rawHorizontalOverscanBBox
ndarray::Array< double const, 1, 1 > linearityCoeffs
lsst::geom::Box2I rawDataBBox
ReadoutCorner readoutCorner