LSST Applications
21.0.0-147-g0e635eb1+1acddb5be5,22.0.0+052faf71bd,22.0.0+1ea9a8b2b2,22.0.0+6312710a6c,22.0.0+729191ecac,22.0.0+7589c3a021,22.0.0+9f079a9461,22.0.1-1-g7d6de66+b8044ec9de,22.0.1-1-g87000a6+536b1ee016,22.0.1-1-g8e32f31+6312710a6c,22.0.1-10-gd060f87+016f7cdc03,22.0.1-12-g9c3108e+df145f6f68,22.0.1-16-g314fa6d+c825727ab8,22.0.1-19-g93a5c75+d23f2fb6d8,22.0.1-19-gb93eaa13+aab3ef7709,22.0.1-2-g8ef0a89+b8044ec9de,22.0.1-2-g92698f7+9f079a9461,22.0.1-2-ga9b0f51+052faf71bd,22.0.1-2-gac51dbf+052faf71bd,22.0.1-2-gb66926d+6312710a6c,22.0.1-2-gcb770ba+09e3807989,22.0.1-20-g32debb5+b8044ec9de,22.0.1-23-gc2439a9a+fb0756638e,22.0.1-3-g496fd5d+09117f784f,22.0.1-3-g59f966b+1e6ba2c031,22.0.1-3-g849a1b8+f8b568069f,22.0.1-3-gaaec9c0+c5c846a8b1,22.0.1-32-g5ddfab5d3+60ce4897b0,22.0.1-4-g037fbe1+64e601228d,22.0.1-4-g8623105+b8044ec9de,22.0.1-5-g096abc9+d18c45d440,22.0.1-5-g15c806e+57f5c03693,22.0.1-7-gba73697+57f5c03693,master-g6e05de7fdc+c1283a92b8,master-g72cdda8301+729191ecac,w.2021.39
LSST Data Management Base Package
|
Class to ensure constraints for spatial modeling. More...
#include <SpatialCell.h>
Public Types | |
using | CandidateList = std::vector< std::shared_ptr< SpatialCellCandidate > > |
using | iterator = SpatialCellCandidateIterator |
Public Member Functions | |
SpatialCell (std::string const &label, lsst::geom::Box2I const &bbox=lsst::geom::Box2I(), CandidateList const &candidateList=CandidateList()) | |
Constructor. More... | |
SpatialCell (SpatialCell const &)=default | |
SpatialCell (SpatialCell &&)=default | |
SpatialCell & | operator= (SpatialCell const &)=default |
SpatialCell & | operator= (SpatialCell &&)=default |
virtual | ~SpatialCell ()=default |
Destructor. More... | |
bool | empty () const |
Determine if cell has no usable candidates. More... | |
size_t | size () const |
Return number of usable candidates in Cell. More... | |
void | sortCandidates () |
Rearrange the candidates to reflect their current ratings. More... | |
SpatialCellCandidateIterator | begin () |
Return an iterator to the beginning of the Candidates. More... | |
SpatialCellCandidateIterator | begin (bool ignoreBad) |
SpatialCellCandidateIterator | end () |
Return an iterator to (one after) the end of the Candidates. More... | |
SpatialCellCandidateIterator | end (bool ignoreBad) |
void | insertCandidate (std::shared_ptr< SpatialCellCandidate > candidate) |
Add a candidate to the list, preserving ranking. More... | |
void | removeCandidate (std::shared_ptr< SpatialCellCandidate > candidate) |
Remove a candidate from the list. More... | |
void | setIgnoreBad (bool ignoreBad) |
Set whether we should omit BAD candidates from candidate list when traversing. More... | |
bool | getIgnoreBad () const |
Get whether we are omitting BAD candidates from candidate list when traversing. More... | |
std::shared_ptr< SpatialCellCandidate > | getCandidateById (int id, bool noThrow=false) |
Return the SpatialCellCandidate with the specified id. More... | |
std::string const & | getLabel () const |
Get SpatialCell's label. More... | |
lsst::geom::Box2I const & | getBBox () const |
Get SpatialCell's BBox. More... | |
void | visitCandidates (CandidateVisitor *visitor, int const nMaxPerCell=-1, bool const ignoreExceptions=false, bool const reset=true) |
Call the visitor's processCandidate method for each Candidate in the SpatialCell. More... | |
void | visitCandidates (CandidateVisitor *visitor, int const nMaxPerCell=-1, bool const ignoreExceptions=false, bool const reset=true) const |
Call the visitor's processCandidate method for each Candidate in the SpatialCell (const version) More... | |
void | visitAllCandidates (CandidateVisitor *visitor, bool const ignoreExceptions=false, bool const reset=true) |
Call the visitor's processCandidate method for every Candidate in the SpatialCell. More... | |
void | visitAllCandidates (CandidateVisitor *visitor, bool const ignoreExceptions=false, bool const reset=true) const |
Call the visitor's processCandidate method for each Candidate in the SpatialCell (const version) More... | |
Class to ensure constraints for spatial modeling.
A given image is divided up into cells, with each cell represented by an instance of this class. Each cell itself contains a list of instances of classes derived from SpatialCellCandidate. One class member from each cell will be chosen to fit to a spatial model. In case of a poor fit, the next class instance in the list will be fit for. If all instances in a list are rejected from the spatial model, the best one will be used.
Definition at line 223 of file SpatialCell.h.
using lsst::afw::math::SpatialCell::CandidateList = std::vector<std::shared_ptr<SpatialCellCandidate> > |
Definition at line 225 of file SpatialCell.h.
Definition at line 226 of file SpatialCell.h.
lsst::afw::math::SpatialCell::SpatialCell | ( | std::string const & | label, |
lsst::geom::Box2I const & | bbox = lsst::geom::Box2I() , |
||
CandidateList const & | candidateList = CandidateList() |
||
) |
Constructor.
label | string representing "name" of cell |
bbox | Bounding box of cell in overall image |
candidateList | list of candidates to represent this cell |
Definition at line 72 of file SpatialCell.cc.
|
default |
|
default |
|
virtualdefault |
Destructor.
|
inline |
Return an iterator to the beginning of the Candidates.
Definition at line 263 of file SpatialCell.h.
|
inline |
ignoreBad | If true, ignore BAD candidates |
Definition at line 266 of file SpatialCell.h.
bool lsst::afw::math::SpatialCell::empty | ( | ) | const |
Determine if cell has no usable candidates.
Definition at line 98 of file SpatialCell.cc.
|
inline |
Return an iterator to (one after) the end of the Candidates.
Definition at line 273 of file SpatialCell.h.
|
inline |
ignoreBad | If true, ignore BAD candidates |
Definition at line 276 of file SpatialCell.h.
|
inline |
std::shared_ptr< SpatialCellCandidate > lsst::afw::math::SpatialCell::getCandidateById | ( | int | id, |
bool | noThrow = false |
||
) |
Return the SpatialCellCandidate with the specified id.
id | The desired ID |
noThrow | Return NULL in case of error |
lsst::pex::exceptions::NotFoundError | if no candidate matches the id |
Definition at line 120 of file SpatialCell.cc.
|
inline |
Get whether we are omitting BAD candidates from candidate list when traversing.
Definition at line 296 of file SpatialCell.h.
|
inline |
void lsst::afw::math::SpatialCell::insertCandidate | ( | std::shared_ptr< SpatialCellCandidate > | candidate | ) |
Add a candidate to the list, preserving ranking.
Definition at line 82 of file SpatialCell.cc.
|
default |
|
default |
void lsst::afw::math::SpatialCell::removeCandidate | ( | std::shared_ptr< SpatialCellCandidate > | candidate | ) |
Remove a candidate from the list.
This is not a particularly efficient operation, since we're using a std::vector, but should not hurt too much if the number of candidates in a cell is small.
Definition at line 88 of file SpatialCell.cc.
|
inline |
Set whether we should omit BAD candidates from candidate list when traversing.
Definition at line 294 of file SpatialCell.h.
size_t lsst::afw::math::SpatialCell::size | ( | ) | const |
void lsst::afw::math::SpatialCell::sortCandidates | ( | ) |
void lsst::afw::math::SpatialCell::visitAllCandidates | ( | CandidateVisitor * | visitor, |
bool const | ignoreExceptions = false , |
||
bool const | reset = true |
||
) |
Call the visitor's processCandidate method for every Candidate in the SpatialCell.
visitor | Pass this object to every Candidate |
ignoreExceptions | Ignore any exceptions thrown by |
reset | Reset visitor before passing it around |
Definition at line 192 of file SpatialCell.cc.
void lsst::afw::math::SpatialCell::visitAllCandidates | ( | CandidateVisitor * | visitor, |
bool const | ignoreExceptions = false , |
||
bool const | reset = true |
||
) | const |
Call the visitor's processCandidate method for each Candidate in the SpatialCell (const version)
This is the const version of SpatialCellSet::visitAllCandidates
visitor | Pass this object to every Candidate |
ignoreExceptions | Ignore any exceptions thrown by the processing |
reset | Reset visitor before passing it around |
Definition at line 214 of file SpatialCell.cc.
void lsst::afw::math::SpatialCell::visitCandidates | ( | CandidateVisitor * | visitor, |
int const | nMaxPerCell = -1 , |
||
bool const | ignoreExceptions = false , |
||
bool const | reset = true |
||
) |
Call the visitor's processCandidate method for each Candidate in the SpatialCell.
visitor | Pass this object to every Candidate |
nMaxPerCell | Visit no more than this many Candidates (<= 0: all) |
ignoreExceptions | Ignore any exceptions thrown by the processing |
reset | Reset visitor before passing it around |
Definition at line 135 of file SpatialCell.cc.
void lsst::afw::math::SpatialCell::visitCandidates | ( | CandidateVisitor * | visitor, |
int const | nMaxPerCell = -1 , |
||
bool const | ignoreExceptions = false , |
||
bool const | reset = true |
||
) | const |
Call the visitor's processCandidate method for each Candidate in the SpatialCell (const version)
This is the const version of SpatialCellSet::visitCandidates
visitor | Pass this object to every Candidate |
nMaxPerCell | Visit no more than this many Candidates (-ve: all) |
ignoreExceptions | Ignore any exceptions thrown by the processing |
reset | Reset visitor before passing it around |
Definition at line 162 of file SpatialCell.cc.