LSST Applications g044012fb7c+304891ab8a,g04a91732dc+4e1b87f259,g07dc498a13+f701f15b83,g114c6a66ad+c7887c1284,g1409bbee79+f701f15b83,g1a7e361dbc+f701f15b83,g1fd858c14a+6ebd102b59,g35bb328faa+0eb18584fe,g3bd4b5ce2c+e83bf4edc8,g4e0f332c67+976ceb6bc8,g53246c7159+0eb18584fe,g5477a8d5ce+51234355ef,g60b5630c4e+c7887c1284,g623d845a50+c7887c1284,g6f0c2978f1+98123c34b6,g71fabbc107+c7887c1284,g75b6c65c88+ce466f4385,g78460c75b0+85633614c8,g786e29fd12+02b9b86fc9,g8852436030+cfe5cf5b7b,g89139ef638+f701f15b83,g9125e01d80+0eb18584fe,g95236ca021+d4f98599f0,g974caa22f6+0eb18584fe,g989de1cb63+f701f15b83,g9f33ca652e+b4908f5dcd,gaaedd4e678+f701f15b83,gabe3b4be73+543c3c03c9,gace736f484+07e57cea59,gb1101e3267+487fd1b06d,gb58c049af0+492386d360,gc99c83e5f0+a513197d39,gcf25f946ba+cfe5cf5b7b,gd0fa69b896+babbe6e5fe,gd6cbbdb0b4+3fef02d88a,gde0f65d7ad+e8379653a2,ge278dab8ac+ae64226a64,gfba249425e+0eb18584fe,w.2025.07
LSST Data Management Base Package
Loading...
Searching...
No Matches
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: