LSST Applications  21.0.0-172-gfb10e10a+18fedfabac,22.0.0+297cba6710,22.0.0+80564b0ff1,22.0.0+8d77f4f51a,22.0.0+a28f4c53b1,22.0.0+dcf3732eb2,22.0.1-1-g7d6de66+2a20fdde0d,22.0.1-1-g8e32f31+297cba6710,22.0.1-1-geca5380+7fa3b7d9b6,22.0.1-12-g44dc1dc+2a20fdde0d,22.0.1-15-g6a90155+515f58c32b,22.0.1-16-g9282f48+790f5f2caa,22.0.1-2-g92698f7+dcf3732eb2,22.0.1-2-ga9b0f51+7fa3b7d9b6,22.0.1-2-gd1925c9+bf4f0e694f,22.0.1-24-g1ad7a390+a9625a72a8,22.0.1-25-g5bf6245+3ad8ecd50b,22.0.1-25-gb120d7b+8b5510f75f,22.0.1-27-g97737f7+2a20fdde0d,22.0.1-32-gf62ce7b1+aa4237961e,22.0.1-4-g0b3f228+2a20fdde0d,22.0.1-4-g243d05b+871c1b8305,22.0.1-4-g3a563be+32dcf1063f,22.0.1-4-g44f2e3d+9e4ab0f4fa,22.0.1-42-gca6935d93+ba5e5ca3eb,22.0.1-5-g15c806e+85460ae5f3,22.0.1-5-g58711c4+611d128589,22.0.1-5-g75bb458+99c117b92f,22.0.1-6-g1c63a23+7fa3b7d9b6,22.0.1-6-g50866e6+84ff5a128b,22.0.1-6-g8d3140d+720564cf76,22.0.1-6-gd805d02+cc5644f571,22.0.1-8-ge5750ce+85460ae5f3,master-g6e05de7fdc+babf819c66,master-g99da0e417a+8d77f4f51a,w.2021.48
LSST Data Management Base Package
Public Member Functions | List of all members
lsst::afw::fits::detail::PixelArray< T > Class Template Reference

Typed array of pixel values. More...

#include <fitsCompression.h>

Inheritance diagram for lsst::afw::fits::detail::PixelArray< T >:
lsst::afw::fits::detail::PixelArrayBase

Public Member Functions

 PixelArray ()=delete
 
 PixelArray (PixelArray const &)=delete
 
 PixelArray (ndarray::Array< T, 1, 1 > const &array)
 Construct from an ndarray::Array of the same type. More...
 
template<typename U >
 PixelArray (ndarray::Array< U, 1, 1 > const &array)
 Construct from an ndarray::Array of different type. More...
 
 ~PixelArray () override
 
void const * getData () const override
 Return a void* array of the pixels. More...
 
std::size_t getNumElements () const
 Return the number of pixels. More...
 

Detailed Description

template<typename T>
class lsst::afw::fits::detail::PixelArray< T >

Typed array of pixel values.

Definition at line 94 of file fitsCompression.h.

Constructor & Destructor Documentation

◆ PixelArray() [1/4]

template<typename T >
lsst::afw::fits::detail::PixelArray< T >::PixelArray ( )
delete

◆ PixelArray() [2/4]

template<typename T >
lsst::afw::fits::detail::PixelArray< T >::PixelArray ( PixelArray< T > const &  )
delete

◆ PixelArray() [3/4]

template<typename T >
lsst::afw::fits::detail::PixelArray< T >::PixelArray ( ndarray::Array< T, 1, 1 > const &  array)
inline

Construct from an ndarray::Array of the same type.

Copies pointers only, no deep copy.

Definition at line 102 of file fitsCompression.h.

103  : PixelArrayBase(array.getNumElements()),
104  _pixels(array.getData()),
105  _manager(array.getManager()) {}

◆ PixelArray() [4/4]

template<typename T >
template<typename U >
lsst::afw::fits::detail::PixelArray< T >::PixelArray ( ndarray::Array< U, 1, 1 > const &  array)
inline

Construct from an ndarray::Array of different type.

Allocates memory and sets values: necessary to support the type change.

Definition at line 111 of file fitsCompression.h.

111  : PixelArrayBase(array.getNumElements()) {
112  auto mem = ndarray::SimpleManager<U>::allocate(getNumElements());
113  _manager = mem.first;
114  _pixels = mem.second;
115  std::copy(array.begin(), array.end(),
116  const_cast<typename std::remove_const<T>::type*>(reinterpret_cast<T const*>(_pixels)));
117  }
std::size_t getNumElements() const
Return the number of pixels.
T copy(T... args)

◆ ~PixelArray()

template<typename T >
lsst::afw::fits::detail::PixelArray< T >::~PixelArray ( )
inlineoverride

Definition at line 119 of file fitsCompression.h.

119 {}

Member Function Documentation

◆ getData()

template<typename T >
void const* lsst::afw::fits::detail::PixelArray< T >::getData ( ) const
inlineoverridevirtual

Return a void* array of the pixels.

Implements lsst::afw::fits::detail::PixelArrayBase.

Definition at line 121 of file fitsCompression.h.

121 { return _pixels; }

◆ getNumElements()

std::size_t lsst::afw::fits::detail::PixelArrayBase::getNumElements ( ) const
inlineinherited

Return the number of pixels.

Definition at line 83 of file fitsCompression.h.

83 { return _num; }

The documentation for this class was generated from the following file: