22 #ifndef LSST_AFW_CAMERAGEOM_DETECTORCOLLECTION_H
23 #define LSST_AFW_CAMERAGEOM_DETECTORCOLLECTION_H
35 namespace cameraGeom {
151 public table::io::Persistable {
159 lsst::geom::Box2D const & getFpBBox() const noexcept {
return _fpBBox; }
183 void write(OutputArchiveHandle& handle)
const override;
table::Key< int > detector
An abstract base class for collections of Detectors and specific subclasses thereof.
void remove(std::string const &name)
std::size_t size() const noexcept
Get the number of detectors.
IdMap const & getIdMap() const noexcept
Get a map keyed and ordered by ID.
NameMap const & getNameMap() const noexcept
Get a map keyed and ordered by name.
DetectorCollectionBase() noexcept=default
std::vector< std::shared_ptr< T > > List
std::shared_ptr< T > operator[](std::string const &name) const
Implement the [name] operator.
virtual ~DetectorCollectionBase() noexcept=0
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.
void add(std::shared_ptr< T > detector)
Add a detector to the collection.
bool empty() const noexcept
Determine if the collection contains any detectors.
An immutable collection of Detectors that can be accessed by name or ID.
DetectorCollection(DetectorCollection const &)=delete
DetectorCollection & operator=(DetectorCollection const &)=delete
DetectorCollection & operator=(DetectorCollection &&)=delete
virtual ~DetectorCollection() noexcept
bool isPersistable() const noexcept override
DetectorCollections are always persistable.
DetectorCollection(DetectorCollection &&)=delete
A representation of a detector in a mosaic camera.
A vector of catalogs used by Persistable.
daf::base::PropertyList * list
std::string getPythonModule() const override
std::string getPersistenceName() const override
void write(OutputArchiveHandle &handle) const override
A base class for image defects.