File PolymorphicValue.h¶
-
template<>
structhash<lsst::afw::typehandling::PolymorphicValue>¶ - #include <PolymorphicValue.h>
Hash specialization for PolymorphicValue.
- Return
the hash of the Storable inside the PolymorphicValue, or an arbitrary value if it is empty
- Exceptions
UnsupportedOperationException: Thrown if the Storable is not hashable.
Public Types
-
template<>
usingargument_type= lsst::afw::typehandling::PolymorphicValue¶
-
template<>
usingresult_type= size_t¶
Public Functions
-
size_t
operator()(argument_type const &obj) const
-
namespace
lsst Class for a simple mapping implementing a generic AstrometryTransform.
Remove all non-astronomical counts from the Chunk Exposure’s pixels.
Forward declarations for lsst::utils::Cache
For details on the Cache class, see the Cache.h file.
It uses a template rather than a pointer so that the derived classes can use the specifics of the transform. The class simplePolyMapping overloads a few routines.
A base class for image defects
Numeric constants used by the Integrate.h integrator routines.
Compute Image Statistics
- Note
Gauss-Kronrod-Patterson quadrature coefficients for use in quadpack routine qng. These coefficients were calculated with 101 decimal digit arithmetic by L. W. Fullerton, Bell Labs, Nov 1981.
- Note
The Statistics class itself can only handle lsst::afw::image::MaskedImage() types. The philosophy has been to handle other types by making them look like lsst::afw::image::MaskedImage() and reusing that code. Users should have no need to instantiate a Statistics object directly, but should use the overloaded makeStatistics() factory functions.
-
namespace
afw -
namespace
typehandling Functions
-
void
swap(PolymorphicValue &lhs, PolymorphicValue &rhs) Swap specialization for PolymorphicValue.
-
class
PolymorphicValue - #include <PolymorphicValue.h>
Container that passes Storable objects by value while preserving type.
This class is implicitly convertible to and from a reference to Storable, but behaves like a value: changing the internal Storable changes the object’s state, and copying the object creates a new Storable.
- Note
While a PolymorphicValue is always initialized with a Storable, it may become empty if it is the source of a move-construction or move-assignment. Conversion of an empty value to Storable& throws.
Unnamed Group
-
PolymorphicValue(PolymorphicValue const &other) Try to copy a PolymorphicValue.
- Parameters
other: the PolymorphicValue to copy.
- Exceptions
UnsupportedOperationException: Thrown if a copy is required and the object inotherdoes not implement Storable::cloneStorable.
-
PolymorphicValue(PolymorphicValue &&other)
Unnamed Group
-
PolymorphicValue &
operator=(PolymorphicValue const &other) Try to assign a PolymorphicValue.
To preserve the run-time type of the object in
other, this method swaps (and possibly copies) the Storables instead of relying on theStorable’soperator=.- Parameters
other: the PolymorphicValue to overwrite this value with.
- Exceptions
UnsupportedOperationException: Thrown if a copy is required and the object inotherdoes not implement Storable::cloneStorable.
-
PolymorphicValue &
operator=(PolymorphicValue &&other)
-
void
swap(PolymorphicValue &other) Exchange the contents of this container and another.
Unnamed Group
-
operator Storable&() Return a reference to the internal Storable, if one exists.
- Return
a reference to the internal object
- Exceptions
pex::exceptions::LogicError: Thrown if this object is empty.
-
operator Storable const&() const
-
Storable &
get()
-
Storable const &
get() const
Unnamed Group
-
bool
operator==(PolymorphicValue const &other) const Test whether the contained Storables are equal.
Empty PolymorphicValues compare equal to each other and unequal to any non-empty PolymorphicValue.
-
bool
operator!=(PolymorphicValue const &other) const
Public Functions
-
PolymorphicValue(Storable const &value) Create a new object containing a copy of a Storable.
- Parameters
value: the value to copy into a PolymorphicValue
-
~PolymorphicValue()
-
bool
empty() const Check whether this object contains a Storable.
- Return
trueif this object has no Storable,falseotherwise
-
std::size_t
hash_value() const Return a hash of this object (optional operation).
- Exceptions
UnsupportedOperationException: Thrown if the internal Storable is not hashable.
Related
-
void
swap(PolymorphicValue &lhs, PolymorphicValue &rhs) Swap specialization for PolymorphicValue.
-
void
-
namespace
-
namespace
std Functions
-
template<>
voidswap(lsst::afw::typehandling::PolymorphicValue &lhs, lsst::afw::typehandling::PolymorphicValue &rhs)¶ Swap specialization for PolymorphicValue.
-
template<>
structhash<lsst::afw::typehandling::PolymorphicValue> - #include <PolymorphicValue.h>
Hash specialization for PolymorphicValue.
- Return
the hash of the Storable inside the PolymorphicValue, or an arbitrary value if it is empty
- Exceptions
UnsupportedOperationException: Thrown if the Storable is not hashable.
Public Types
-
template<>
usingargument_type= lsst::afw::typehandling::PolymorphicValue
-
template<>
usingresult_type= size_t
Public Functions
-
size_t
operator()(argument_type const &obj) const
-
template<>