LSST Applications g1653933729+34a971ddd9,g1a997c3884+34a971ddd9,g2160c40384+da0d0eec6b,g28da252d5a+1236b942f7,g2bbee38e9b+e5a1bc5b38,g2bc492864f+e5a1bc5b38,g2ca4be77d2+192fe503f0,g2cdde0e794+704103fe75,g3156d2b45e+6e87dc994a,g347aa1857d+e5a1bc5b38,g35bb328faa+34a971ddd9,g3a166c0a6a+e5a1bc5b38,g3e281a1b8c+8ec26ec694,g4005a62e65+ba0306790b,g414038480c+9f5be647b3,g41af890bb2+c3a10c924f,g5065538af8+e7237db731,g5a0bb5165c+eae055db26,g717e5f8c0f+b65b5c3ae4,g80478fca09+4ce5a07937,g82479be7b0+08790af60f,g858d7b2824+b65b5c3ae4,g9125e01d80+34a971ddd9,ga5288a1d22+5df949a35e,gae0086650b+34a971ddd9,gb58c049af0+ace264a4f2,gbd397ab92a+2141afb137,gc28159a63d+e5a1bc5b38,gc805d3fbd4+b65b5c3ae4,gcf0d15dbbd+97632ccc20,gd6b7c0dfd1+de826e8718,gda6a2b7d83+97632ccc20,gdaeeff99f8+7774323b41,ge2409df99d+e6cadbf968,ge33fd446bb+b65b5c3ae4,ge79ae78c31+e5a1bc5b38,gf0baf85859+890af219f9,gf5289d68f6+a27069ed62,w.2024.37
LSST Data Management Base Package
|
An immutable collection of Detectors that can be accessed by name or ID. More...
#include <DetectorCollection.h>
Classes | |
class | Factory |
Public Types | |
using | NameMap = std::unordered_map<std::string, std::shared_ptr<T>> |
using | IdMap = std::map<int, std::shared_ptr<T>> |
using | List = std::vector<std::shared_ptr<T>> |
Public Member Functions | |
DetectorCollection (List const &list) | |
virtual | ~DetectorCollection () noexcept |
lsst::geom::Box2D const & | getFpBBox () const noexcept |
Return a focal plane bounding box that encompasses all detectors. | |
DetectorCollection (DetectorCollection const &)=delete | |
DetectorCollection (DetectorCollection &&)=delete | |
DetectorCollection & | operator= (DetectorCollection const &)=delete |
DetectorCollection & | operator= (DetectorCollection &&)=delete |
bool | isPersistable () const noexcept override |
DetectorCollections are always persistable. | |
NameMap const & | getNameMap () const noexcept |
Get a map keyed and ordered by name. | |
IdMap const & | getIdMap () const noexcept |
Get a map keyed and ordered by ID. | |
std::size_t | size () const noexcept |
Get the number of detectors. | |
bool | empty () const noexcept |
Determine if the collection contains any detectors. | |
std::shared_ptr< T > | operator[] (std::string const &name) const |
Implement the [name] operator. | |
std::shared_ptr< T > | operator[] (int id) const |
Implement the [id] operator. | |
std::shared_ptr< T > | get (std::string const &name, std::shared_ptr< T > def=nullptr) const |
Retrieve a detector by name, or fall back to a default. | |
std::shared_ptr< T > | get (int id, std::shared_ptr< T > def=nullptr) const |
Retrieve a detector by ID, or fall back to a default. | |
void | writeFits (std::string const &fileName, std::string const &mode="w") const |
Write the object to a regular FITS file. | |
void | writeFits (fits::MemFileManager &manager, std::string const &mode="w") const |
Write the object to a FITS image in memory. | |
void | writeFits (fits::Fits &fitsfile) const |
Write the object to an already-open FITS object. | |
Static Public Member Functions | |
static std::shared_ptr< DetectorCollection > | readFits (fits::Fits &fitsfile) |
Read an object from an already open FITS object. | |
static std::shared_ptr< DetectorCollection > | readFits (std::string const &fileName, int hdu=fits::DEFAULT_HDU) |
Read an object from a regular FITS file. | |
static std::shared_ptr< DetectorCollection > | readFits (fits::MemFileManager &manager, int hdu=fits::DEFAULT_HDU) |
Read an object from a FITS file in memory. | |
static std::shared_ptr< DetectorCollection > | dynamicCast (std::shared_ptr< Persistable > const &ptr) |
Dynamically cast a shared_ptr. | |
Protected Types | |
using | OutputArchiveHandle = io::OutputArchiveHandle |
Protected Member Functions | |
DetectorCollection (table::io::InputArchive const &archive, table::io::CatalogVector const &catalogs) | |
std::string | getPersistenceName () const override |
Return the unique name used to persist this object and look up its factory. | |
std::string | getPythonModule () const override |
Return the fully-qualified Python module that should be imported to guarantee that its factory is registered. | |
void | write (OutputArchiveHandle &handle) const override |
Write the object to one or more catalogs. | |
void | add (std::shared_ptr< T > detector) |
Add a detector to the collection. | |
void | remove (std::string const &name) |
void | remove (int id) |
An immutable collection of Detectors that can be accessed by name or ID.
Definition at line 149 of file DetectorCollection.h.
|
inherited |
Definition at line 53 of file DetectorCollection.h.
|
inherited |
Definition at line 54 of file DetectorCollection.h.
|
inherited |
Definition at line 52 of file DetectorCollection.h.
|
protectedinherited |
Definition at line 108 of file Persistable.h.
lsst::afw::cameraGeom::DetectorCollection::DetectorCollection | ( | List const & | list | ) |
Definition at line 207 of file DetectorCollection.cc.
|
virtualdefaultnoexcept |
|
delete |
|
delete |
|
protected |
Definition at line 234 of file DetectorCollection.cc.
|
protectedinherited |
Add a detector to the collection.
[in] | detector | New detector to add to the collection. |
pex::exceptions::RuntimeError | Thrown if the ID and/or name conflict with those of detectors already in the collection. |
Definition at line 89 of file DetectorCollection.cc.
|
staticinherited |
Dynamically cast a shared_ptr.
Dynamically cast a shared pointer and raise on failure.
You must provide an explicit template instantiation in the .cc file for each class that inherits from PersistableFacade. Designed to work around RTTI issues on macOS with hidden symbols;
lsst::pex::exceptions::LogicError | if the cast fails |
param[in] ptr The pointer to be cast.
lsst::pex::exceptions::TypeError | If the dynamic cast fails. |
Definition at line 218 of file Persistable.cc.
|
inlinenoexceptinherited |
Determine if the collection contains any detectors.
Definition at line 72 of file DetectorCollection.h.
|
inherited |
Retrieve a detector by ID, or fall back to a default.
[in] | id | detector id |
[in] | def | default detector to return. This defaults to nullptr . |
Definition at line 65 of file DetectorCollection.cc.
|
inherited |
Retrieve a detector by name, or fall back to a default.
[in] | name | detector name |
[in] | def | default detector to return. This defaults to nullptr . |
Definition at line 56 of file DetectorCollection.cc.
|
inlinenoexcept |
Return a focal plane bounding box that encompasses all detectors.
Definition at line 159 of file DetectorCollection.h.
|
inlinenoexceptinherited |
Get a map keyed and ordered by ID.
Definition at line 62 of file DetectorCollection.h.
|
inlinenoexceptinherited |
Get a map keyed and ordered by name.
Definition at line 59 of file DetectorCollection.h.
|
overrideprotectedvirtual |
Return the unique name used to persist this object and look up its factory.
Must be less than ArchiveIndexSchema::MAX_NAME_LENGTH characters.
Reimplemented from lsst::afw::table::io::Persistable.
Definition at line 242 of file DetectorCollection.cc.
|
overrideprotectedvirtual |
Return the fully-qualified Python module that should be imported to guarantee that its factory is registered.
Must be less than ArchiveIndexSchema::MAX_MODULE_LENGTH characters.
Will be ignored if empty.
Reimplemented from lsst::afw::table::io::Persistable.
Definition at line 246 of file DetectorCollection.cc.
|
inlineoverridevirtualnoexcept |
DetectorCollections are always persistable.
Reimplemented from lsst::afw::table::io::Persistable.
Definition at line 171 of file DetectorCollection.h.
|
delete |
|
delete |
|
inherited |
Implement the [id] operator.
[in] | id | detector name |
Definition at line 46 of file DetectorCollection.cc.
|
inherited |
Implement the [name] operator.
[in] | name | detector name |
Definition at line 36 of file DetectorCollection.cc.
|
inlinestaticinherited |
Read an object from an already open FITS object.
[in] | fitsfile | FITS object to read from, already positioned at the desired HDU. |
Definition at line 183 of file Persistable.h.
|
inlinestaticinherited |
Read an object from a FITS file in memory.
[in] | manager | Manager for the memory to read from. |
[in] | hdu | HDU to read, where 0 is the primary. The special value of afw::fits::DEFAULT_HDU skips the primary HDU if it is empty. |
Definition at line 205 of file Persistable.h.
|
inlinestaticinherited |
Read an object from a regular FITS file.
[in] | fileName | Name of the file to read. |
[in] | hdu | HDU to read, where 0 is the primary. The special value of afw::fits::DEFAULT_HDU skips the primary HDU if it is empty. |
Definition at line 194 of file Persistable.h.
|
protectedinherited |
Definition at line 144 of file DetectorCollection.cc.
|
protectedinherited |
Definition at line 129 of file DetectorCollection.cc.
|
inlinenoexceptinherited |
Get the number of detectors.
Renamed to __len__
in Python.
Definition at line 67 of file DetectorCollection.h.
|
overrideprotectedvirtual |
Write the object to one or more catalogs.
The handle object passed to this function provides an interface for adding new catalogs and adding nested objects to the same archive (while checking for duplicates). See OutputArchiveHandle for more information.
Reimplemented from lsst::afw::table::io::Persistable.
Definition at line 250 of file DetectorCollection.cc.
|
inherited |
Write the object to an already-open FITS object.
[in] | fitsfile | Open FITS object to write to. |
Definition at line 18 of file Persistable.cc.
|
inherited |
Write the object to a FITS image in memory.
[in] | manager | Name of the file to write to. |
[in] | mode | If "w", any existing file with the given name will be overwritten. If "a", new HDUs will be appended to an existing file. |
Definition at line 29 of file Persistable.cc.
|
inherited |
Write the object to a regular FITS file.
[in] | fileName | Name of the file to write to. |
[in] | mode | If "w", any existing file with the given name will be overwritten. If "a", new HDUs will be appended to an existing file. |
Definition at line 24 of file Persistable.cc.