23 #ifndef AFW_TABLE_AmpInfo_h_INCLUDED 24 #define AFW_TABLE_AmpInfo_h_INCLUDED 129 double suspectLevel);
192 static int const MAX_NAME_LENGTH = 64;
193 static int const MAX_LINEARITY_COEFFS = 4;
194 static int const MAX_LINEARITY_TYPE_LENGTH = 64;
215 Schema r = getMinimalSchema().schema;
253 return getMinimalSchema().rawHorizontalOverscanBBoxMin;
256 return getMinimalSchema().rawHorizontalOverscanBBoxExtent;
259 return getMinimalSchema().rawVerticalOverscanBBoxMin;
262 return getMinimalSchema().rawVerticalOverscanBBoxExtent;
298 struct MinimalSchema {
328 static MinimalSchema &getMinimalSchema();
339 #endif // !AFW_TABLE_AmpInfo_h_INCLUDED std::vector< double > getLinearityCoeffs() const
Convenience accessors for the keys in the minimal reference schema.
Defines the fields and offsets for a table.
static PointKey< int > getRawPrescanBBoxExtentKey()
Get keys for standard fields shared by all references.
lsst::geom::Box2I getRawDataBBox() const
Convenience accessors for the keys in the minimal reference schema.
void setRawFlipY(bool rawFlipY)
flip column order to make an assembled image?
CatalogT< AmpInfoRecord > Catalog
Writer object for FITS binary tables.
static Key< Flag > getRawFlipXKey()
Get keys for standard fields shared by all references.
lsst::geom::Extent2I getRawXYOffset() const
Convenience accessors for the keys in the minimal reference schema.
Geometry and electronic information about raw amplifier images.
Helper struct that contains the information passed from BaseTable to BaseRecord at construction...
double getReadNoise() const
Convenience accessors for the keys in the minimal reference schema.
void setReadNoise(double readNoise)
amplifier read noise, in e-
std::shared_ptr< AmpInfoTable > clone() const
Return a polymorphic deep copy of the table.
double getGain() const
Convenience accessors for the keys in the minimal reference schema.
A mapping between the keys of two Schemas, used to copy data between them.
void setLinearityCoeffs(std::vector< double > const &coeffs)
vector of linearity coefficients
static PointKey< int > getRawXYOffsetKey()
Get keys for standard fields shared by all references.
CatalogT< Record > Catalog
static PointKey< int > getRawDataBBoxMinKey()
Get keys for standard fields shared by all references.
static PointKey< int > getRawVerticalOverscanBBoxMinKey()
Get keys for standard fields shared by all references.
void setRawFlipX(bool rawFlipX)
flip row order to make assembled image?
void setName(std::string const &name)
name of amplifier location in camera
lsst::geom::Box2I getRawBBox() const
Convenience accessors for the keys in the minimal reference schema.
void disconnectAliases()
Sever the connection between this schema and any others with which it shares aliases.
static Schema makeMinimalSchema()
Return a minimal schema for AmpInfo tables and records.
static Key< std::string > getLinearityTypeKey()
Get keys for standard fields shared by all references.
CatalogT< AmpInfoRecord const > ConstCatalog
static PointKey< int > getRawBBoxMinKey()
Get keys for standard fields shared by all references.
void setRawPrescanBBox(lsst::geom::Box2I const &bbox)
bounding box of usable (horizontal) prescan pixels on raw image
A simple struct that combines the two arguments that must be passed to most cfitsio routines and cont...
std::shared_ptr< BaseRecord > copyRecord(BaseRecord const &input)
Deep-copy a record, requiring that it have the same schema as this table.
static bool checkSchema(Schema const &other)
Return true if the given schema is a valid AmpInfoTable schema.
void setHasRawInfo(bool hasRawInfo)
does this table have raw amplifier information?
bool getRawFlipX() const
Convenience accessors for the keys in the minimal reference schema.
afw::table::PointKey< int > bboxMin
void setSuspectLevel(double suspectLevel)
level in ADU above which pixels are considered suspicious,
static PointKey< int > getRawHorizontalOverscanBBoxExtentKey()
Get keys for standard fields shared by all references.
double getSuspectLevel() const
Convenience accessors for the keys in the minimal reference schema.
lsst::geom::Box2I getBBox() const
Convenience accessors for the keys in the minimal reference schema.
void setGain(double gain)
amplifier gain in e-/ADU
static Key< double > getSuspectLevelKey()
Get keys for standard fields shared by all references.
A base class for image defects.
static PointKey< int > getBBoxMinKey()
Get keys for standard fields shared by all references.
int contains(Schema const &other, int flags=EQUAL_KEYS) const
Test whether the given schema is a subset of this.
~AmpInfoRecord() override
void setRawHorizontalOverscanBBox(lsst::geom::Box2I const &bbox)
bounding box of usable horizontal overscan pixels
std::shared_ptr< AmpInfoRecord > makeRecord()
Default-construct an associated record.
ColumnViewT< AmpInfoRecord > ColumnView
T static_pointer_cast(T... args)
static PointKey< int > getRawBBoxExtentKey()
Get keys for standard fields shared by all references.
ReadoutCorner getReadoutCorner() const
Convenience accessors for the keys in the minimal reference schema.
static Key< Flag > getRawFlipYKey()
Get keys for standard fields shared by all references.
ColumnViewT< AmpInfoRecord > ColumnView
void setBBox(lsst::geom::Box2I const &bbox)
bounding box of amplifier pixels in assembled image
AmpInfoRecord(ConstructionToken const &token, detail::RecordData &&data)
Constructor used by AmpInfoTable.
static Key< Flag > getHasRawInfoKey()
Get keys for standard fields shared by all references.
ReadoutCorner
Readout corner, in the frame of reference of the assembled image.
std::shared_ptr< BaseTable const > getTable() const
Return the table this record is associated with.
bool getHasRawInfo() const
Convenience accessors for the keys in the minimal reference schema.
void setRawDataBBox(lsst::geom::Box2I const &bbox)
bounding box of amplifier image pixels on raw image
Base class for all records.
std::string getLinearityType() const
Convenience accessors for the keys in the minimal reference schema.
std::shared_ptr< AmpInfoRecord > copyRecord(BaseRecord const &other)
Deep-copy a record, requiring that it have the same schema as this table.
Key specialization for Flag.
std::string getName() const
Convenience accessors for the keys in the minimal reference schema.
AmpInfoRecord & operator=(AmpInfoRecord const &)=delete
CatalogT< Record const > ConstCatalog
lsst::geom::Box2I getRawVerticalOverscanBBox() const
Convenience accessors for the keys in the minimal reference schema.
AmpInfoRecord(AmpInfoRecord const &)=delete
static PointKey< int > getRawVerticalOverscanBBoxExtentKey()
Get keys for standard fields shared by all references.
friend class AmpInfoTable
static PointKey< int > getRawPrescanBBoxMinKey()
Get keys for standard fields shared by all references.
lsst::geom::Box2I getRawPrescanBBox() const
Convenience accessors for the keys in the minimal reference schema.
ItemVariant const * other
static Key< double > getReadNoiseKey()
Get keys for standard fields shared by all references.
void setReadoutCorner(ReadoutCorner val)
set readout corner
bool getRawFlipY() const
Convenience accessors for the keys in the minimal reference schema.
static Key< int > getReadoutCornerKey()
Get keys for standard fields shared by all references.
static PointKey< int > getRawDataBBoxExtentKey()
Get keys for standard fields shared by all references.
void setSaturation(double saturation)
level in ADU above which pixels are considered saturated;
void setLinearityType(std::string const &type)
name of linearity parameterization
An integer coordinate rectangle.
static Key< std::string > getNameKey()
Get keys for standard fields shared by all references.
static PointKey< int > getBBoxExtentKey()
Get keys for standard fields shared by all references.
Table of amplifier information (AmpInfoRecord records)
static PointKey< int > getRawHorizontalOverscanBBoxMinKey()
Get keys for standard fields shared by all references.
Base class for all tables.
static Key< double > getGainKey()
Get keys for standard fields shared by all references.
std::shared_ptr< AmpInfoRecord > copyRecord(BaseRecord const &other, SchemaMapper const &mapper)
Deep-copy a record, requiring that it have the same schema as this table.
std::shared_ptr< AmpInfoTable const > getTable() const
void setRawVerticalOverscanBBox(lsst::geom::Box2I const &bbox)
bounding box of usable vertical overscan pixels
static Key< Array< double > > getLinearityCoeffsKey()
Get keys for standard fields shared by all references.
lsst::geom::Box2I getRawHorizontalOverscanBBox() const
Convenience accessors for the keys in the minimal reference schema.
void setRawXYOffset(lsst::geom::Extent2I const &xy)
offset for assembling a raw CCD image: desired xy0 - raw xy0
double getSaturation() const
Convenience accessors for the keys in the minimal reference schema.
void setRawBBox(lsst::geom::Box2I const &bbox)
bounding box of all amplifier pixels on raw image
static Key< double > getSaturationKey()
Get keys for standard fields shared by all references.