23 #if !defined(LSST_AFW_CAMERAGEOM_DETECTOR_H)
24 #define LSST_AFW_CAMERAGEOM_DETECTOR_H
28 #include <unordered_map>
38 namespace cameraGeom {
79 std::string
const &
name,
82 std::string
const &serial,
248 typedef std::unordered_map<std::string, table::AmpInfoCatalog::const_iterator>
_AmpInfoMap;
std::string getName() const
Get the detector name.
Camera coordinate system; used as a key in in TransformMap.
geom::Extent2D _pixelSize
pixel size (mm)
table::Key< std::string > name
table::AmpInfoCatalog _ampInfoCatalog
list of amplifier data
Geometry and electronic information about raw amplifier images.
Describe a Detector's orientation.
lsst::afw::table::AmpInfoCatalog::const_iterator begin() const
Get iterator to beginning of amplifier list.
CameraTransformMap const getTransformMap() const
Get the transform registry.
CameraPoint makeCameraPoint(geom::Point2D point, CameraSysPrefix cameraSysPrefix) const
Make a CameraPoint from a point and a camera system prefix.
A custom container class for records, based on std::vector.
CameraSys getCameraSys() const
CameraTransformMap _transformMap
registry of coordinate transforms
void _init()
Finish constructing this object.
std::string _serial
serial "number" that identifies the physical detector
CameraSys const makeCameraSys(CameraSysPrefix const &cameraSysPrefix) const
Get a coordinate system from a detector system prefix (add detector name)
size_type size() const
Return the number of elements in the catalog.
CameraPoint makeCameraPoint(geom::Point2D point, CameraSys cameraSys) const
Make a CameraPoint from a point and a camera system.
Orientation _orientation
position and orientation of detector in focal plane
DetectorType _type
type of detectorsize_t
std::vector< geom::Point2D > getCorners(CameraSys const &cameraSys) const
Get the corners of the detector in the specified coordinate system.
An integer coordinate rectangle.
boost::shared_ptr< afw::geom::XYTransform const > getTransform(CameraSys const &cameraSys) const
Get an XYTransform that transforms from cameraSys to the native system in the forward direction...
Describe a detector's orientation in the focal plane.
std::string _name
name of detector's location in the camera
bool hasTransform(CameraSys const &cameraSys) const
Does the specified CameraSys exist in the transform registry.
iterator begin()
Iterator access.
size_t size() const
Get number of amplifiers.
_AmpInfoMap _ampNameIterMap
map of amplifier name: catalog iterator
std::unordered_map< std::string, table::AmpInfoCatalog::const_iterator > _AmpInfoMap
lsst::afw::table::AmpInfoRecord const & operator[](size_t i) const
Get the amplifier specified by index.
CameraSys const makeCameraSys(CameraSys const &cameraSys) const
Get a coordinate system from a coordinate system (return input unchanged and untested) ...
Iterator class for CatalogT.
lsst::afw::geom::Box2I getBBox() const
Get the bounding box.
geom::Box2I _bbox
bounding box
DetectorType getType() const
std::string getSerial() const
Get the detector serial "number".
Camera coordinate system prefix.
lsst::afw::table::AmpInfoCatalog const getAmpInfoCatalog() const
Get the amplifier information catalog.
int _id
detector numeric ID
std::string getSysName() const
Get coordinate system name.
Information about a CCD or other imaging detector.
iterator end()
Iterator access.
geom::Extent2D getPixelSize() const
Get size of pixel along (mm)
Detector(std::string const &name, int id, DetectorType type, std::string const &serial, geom::Box2I const &bbox, lsst::afw::table::AmpInfoCatalog const &InfoCatalog, Orientation const &orientation, geom::Extent2D const &pixelSize, CameraTransformMap::Transforms const &transforms)
Make a Detector.
reference at(size_type i) const
Return the record at index i (throws std::out_of_range).
A Point2D with associated camera coordinate system.
Point< double, 2 > Point2D
Orientation const getOrientation() const
Get detector's orientation in the focal plane.
CameraPoint getCenter(CameraSys const &cameraSys) const
Get the center of the detector in the specified coordinate system.
#define CONST_PTR(...)
A shared pointer to a const object.
DetectorType
Type of imaging detector.
CameraPoint transform(CameraPoint const &fromCameraPoint, CameraSysPrefix const &toSys) const
Convert a CameraPoint from one coordinate system to a coordinate system prefix.
lsst::afw::table::AmpInfoCatalog::const_iterator end() const
Get iterator to end of amplifier list.
geom::Point2D getPoint() const
int getId() const
Get the detector ID.
CameraPoint transform(CameraPoint const &fromCameraPoint, CameraSys const &toSys) const
Convert a CameraPoint from one coordinate system to another.