Alexandria 2.31.0
SDC-CH common library for the Euclid project
|
#include <Photometry.h>
Classes | |
class | PhotometryIterator |
Public Types | |
typedef PhotometryIterator< true > | const_iterator |
typedef PhotometryIterator< false > | iterator |
Public Member Functions | |
Photometry (std::shared_ptr< std::vector< std::string > > filter_name_vector_ptr, std::vector< FluxErrorPair > value_vector) | |
Constructor which should never be called directly. Use the PhotometryAttributeHandler to build Photometry objects. | |
virtual | ~Photometry ()=default |
default destructor | |
const_iterator | cbegin () const |
const_iterator | cend () const |
const_iterator | begin () const |
const_iterator | end () const |
iterator | begin () |
iterator | end () |
std::size_t | size () const |
Return the size of the photometry map. | |
std::unique_ptr< FluxErrorPair > | find (const std::string &filter_name) const |
Return a photometry measurement through the specified filter. The current implementation of this method is relatively slow as it is not expected to be used very intensively. | |
const std::shared_ptr< std::vector< std::string > > & | getFilterNames () const |
![]() | |
virtual | ~Attribute ()=default |
Private Attributes | |
std::shared_ptr< std::vector< std::string > > | m_filter_name_vector_ptr |
Shared pointer to the common list of filter names. | |
std::vector< FluxErrorPair > | m_value_vector |
The photometry map. | |
The Photometry class is design to store a set of photometric flux measurements obtained through different filters (filterName). The flux and value and the associated error are stored in a vector of ValuePair, while the list of filter names is kept in a vector that is common to all objects (which only keep a shared_ptr to it). In this way, their is no waste of memory to keep the filter information in each Photometry object and the consistency of the relationship between filter and the corresponding values (flux and error) is ensure through the code.
The user must however provide a ValuePair vector which matches the vector of FilterName. This is why the Photometry constructor should never be called directly. Always use the PhotometryAttributeHandler to build Photometry objects.
Definition at line 74 of file Photometry.h.
Definition at line 152 of file Photometry.h.
Definition at line 153 of file Photometry.h.
|
inline |
Constructor which should never be called directly. Use the PhotometryAttributeHandler to build Photometry objects.
filter_name_vector_ptr | a shared pointer to the vector of filter names |
value_vector | the vector of ValuePair, i..e, the flux values with their errors |
Definition at line 165 of file Photometry.h.
|
virtualdefault |
default destructor
|
inline |
Definition at line 195 of file Photometry.h.
|
inline |
Definition at line 187 of file Photometry.h.
|
inline |
Definition at line 179 of file Photometry.h.
|
inline |
Definition at line 183 of file Photometry.h.
|
inline |
Definition at line 199 of file Photometry.h.
|
inline |
Definition at line 191 of file Photometry.h.
std::unique_ptr< FluxErrorPair > Euclid::SourceCatalog::Photometry::find | ( | const std::string & | filter_name | ) | const |
Return a photometry measurement through the specified filter. The current implementation of this method is relatively slow as it is not expected to be used very intensively.
filter_name | The filter name |
Definition at line 34 of file Photometry.cpp.
References std::vector< T >::begin(), std::vector< T >::end(), m_filter_name_vector_ptr, and m_value_vector.
const std::shared_ptr< std::vector< std::string > > & Euclid::SourceCatalog::Photometry::getFilterNames | ( | ) | const |
Definition at line 52 of file Photometry.cpp.
References m_filter_name_vector_ptr.
|
inline |
Return the size of the photometry map.
Definition at line 207 of file Photometry.h.
|
private |
Shared pointer to the common list of filter names.
Definition at line 226 of file Photometry.h.
Referenced by find(), and getFilterNames().
|
private |