LSST Applications  21.0.0+3c14b91618,21.0.0+9f51b1e3f7,21.0.0-1-ga51b5d4+6691386486,21.0.0-10-g2408eff+1a328412bf,21.0.0-10-g560fb7b+52fd22d7b4,21.0.0-10-g8d1d15d+2f9043cae0,21.0.0-10-gcf60f90+d15de71c48,21.0.0-11-g25eff31+d43066e4ef,21.0.0-15-g490e301a+a676f0d5cf,21.0.0-2-g103fe59+4758c8ef83,21.0.0-2-g1367e85+a9f57e981a,21.0.0-2-g45278ab+9f51b1e3f7,21.0.0-2-g5242d73+a9f57e981a,21.0.0-2-g7f82c8f+1bcc828e4f,21.0.0-2-g8f08a60+e6fd6d9ff9,21.0.0-2-ga326454+1bcc828e4f,21.0.0-2-gde069b7+66c51b65da,21.0.0-2-gecfae73+251b9830c3,21.0.0-2-gfc62afb+a9f57e981a,21.0.0-20-g09baf175d+e1e7d1c708,21.0.0-3-g357aad2+854c3902c3,21.0.0-3-g4be5c26+a9f57e981a,21.0.0-3-g65f322c+feaa1990e9,21.0.0-3-g7d9da8d+3c14b91618,21.0.0-3-ge02ed75+bda8df9b93,21.0.0-4-g591bb35+bda8df9b93,21.0.0-4-g65b4814+52fd22d7b4,21.0.0-4-g88306b8+656365ce3f,21.0.0-4-gccdca77+86bf7a300d,21.0.0-4-ge8a399c+b99e86088e,21.0.0-5-gd00fb1e+6a0dc09319,21.0.0-51-gd3b42663+bf9f0d1c8b,21.0.0-6-g2d4f3f3+9f51b1e3f7,21.0.0-7-g04766d7+ee2ae02087,21.0.0-7-g98eecf7+3609eddee2,21.0.0-7-gde99fe0+bda8df9b93,21.0.0-8-gd70ce6f+79e45e76e4,master-gac4afde19b+bda8df9b93,w.2021.10
LSST Data Management Base Package
Classes | Namespaces | Typedefs | Functions
Extent.h File Reference
#include <tuple>
#include <type_traits>
#include "lsst/pex/exceptions.h"
#include "lsst/geom/CoordinateExpr.h"

Go to the source code of this file.

Classes

class  lsst::geom::ExtentBase< T, N >
 
class  lsst::geom::Extent< T, N >
 A coordinate class intended to represent offsets and dimensions. More...
 
class  lsst::geom::Extent< T, 2 >
 A coordinate class intended to represent offsets and dimensions (2-d specialization). More...
 
class  lsst::geom::Extent< T, 3 >
 A coordinate class intended to represent offsets and dimensions (3-d specialization). More...
 
struct  std::hash< lsst::geom::Extent< T, N > >
 

Namespaces

 lsst
 A base class for image defects.
 
 lsst::geom
 
 lsst::geom::detail
 
 std
 STL namespace.
 

Typedefs

typedef Extent< int, 2 > lsst::geom::ExtentI
 
typedef Extent< int, 2 > lsst::geom::Extent2I
 
typedef Extent< int, 3 > lsst::geom::Extent3I
 
typedef Extent< double, 2 > lsst::geom::ExtentD
 
typedef Extent< double, 2 > lsst::geom::Extent2D
 
typedef Extent< double, 3 > lsst::geom::Extent3D
 

Functions

template<int N>
double lsst::geom::detail::computeExtentNorm (Extent< double, N > const &s)
 
template<int N>
int lsst::geom::detail::computeExtentNorm (Extent< int, N > const &s)
 
template<typename T , int N>
std::size_t lsst::geom::hash_value (Extent< T, N > const &extent) noexcept
 
template<int N>
Extent< int, N > lsst::geom::truncate (Extent< double, N > const &input) noexcept
 Return the component-wise truncation (round towards zero). More...
 
template<int N>
Extent< int, N > lsst::geom::floor (Extent< double, N > const &input) noexcept
 Return the component-wise floor (round towards more negative). More...
 
template<int N>
Extent< int, N > lsst::geom::ceil (Extent< double, N > const &input) noexcept
 Return the component-wise ceil (round towards more positive). More...
 
template<typename T , int N>
Extent< T, N > lsst::geom::operator* (T scalar, ExtentBase< T, N > const &rhs) noexcept(ExtentBase< T, N >::IS_ELEMENT_NOTHROW_COPYABLE)
 
template<int N>
Extent< double, N > lsst::geom::operator* (ExtentBase< int, N > const &lhs, double rhs) noexcept
 
template<int N>
void lsst::geom::operator*= (ExtentBase< int, N > &lhs, double rhs) noexcept
 
template<int N>
Extent< double, N > lsst::geom::operator/ (ExtentBase< int, N > const &lhs, double rhs) noexcept
 
template<int N>
void lsst::geom::operator/= (ExtentBase< int, N > &lhs, double rhs) noexcept
 
template<int N>
Extent< double, N > lsst::geom::operator* (double lhs, ExtentBase< int, N > const &rhs) noexcept
 
template<int N>
Extent< double, N > lsst::geom::operator+ (Extent< double, N > const &lhs, Extent< int, N > const &rhs) noexcept
 
template<int N>
Extent< double, N > & lsst::geom::operator+= (Extent< double, N > &lhs, Extent< int, N > const &rhs) noexcept
 
template<int N>
Extent< double, N > lsst::geom::operator- (Extent< double, N > const &lhs, Extent< int, N > const &rhs) noexcept
 
template<int N>
Extent< double, N > & lsst::geom::operator-= (Extent< double, N > &lhs, Extent< int, N > const &rhs) noexcept
 
template<int N>
Extent< double, N > lsst::geom::operator+ (Extent< int, N > const &lhs, Extent< double, N > const &rhs) noexcept
 
template<int N>
Extent< double, N > lsst::geom::operator- (Extent< int, N > const &lhs, Extent< double, N > const &rhs) noexcept