LSST Applications 27.0.0,g0265f82a02+469cd937ee,g02d81e74bb+21ad69e7e1,g1470d8bcf6+cbe83ee85a,g2079a07aa2+e67c6346a6,g212a7c68fe+04a9158687,g2305ad1205+94392ce272,g295015adf3+81dd352a9d,g2bbee38e9b+469cd937ee,g337abbeb29+469cd937ee,g3939d97d7f+72a9f7b576,g487adcacf7+71499e7cba,g50ff169b8f+5929b3527e,g52b1c1532d+a6fc98d2e7,g591dd9f2cf+df404f777f,g5a732f18d5+be83d3ecdb,g64a986408d+21ad69e7e1,g858d7b2824+21ad69e7e1,g8a8a8dda67+a6fc98d2e7,g99cad8db69+f62e5b0af5,g9ddcbc5298+d4bad12328,ga1e77700b3+9c366c4306,ga8c6da7877+71e4819109,gb0e22166c9+25ba2f69a1,gb6a65358fc+469cd937ee,gbb8dafda3b+69d3c0e320,gc07e1c2157+a98bf949bb,gc120e1dc64+615ec43309,gc28159a63d+469cd937ee,gcf0d15dbbd+72a9f7b576,gdaeeff99f8+a38ce5ea23,ge6526c86ff+3a7c1ac5f1,ge79ae78c31+469cd937ee,gee10cc3b42+a6fc98d2e7,gf1cff7945b+21ad69e7e1,gfbcc870c63+9a11dc8c8f
LSST Data Management Base Package
Loading...
Searching...
No Matches
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.
 
template<typename U >
 PixelArray (ndarray::Array< U, 1, 1 > const &array)
 Construct from an ndarray::Array of different type.
 
 ~PixelArray () override
 
void const * getData () const override
 Return a void* array of the pixels.
 
std::size_t getNumElements () const
 Return the number of pixels.
 

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: