LSSTApplications  18.0.0+106,18.0.0+50,19.0.0,19.0.0+1,19.0.0+10,19.0.0+11,19.0.0+13,19.0.0+17,19.0.0+2,19.0.0-1-g20d9b18+6,19.0.0-1-g425ff20,19.0.0-1-g5549ca4,19.0.0-1-g580fafe+6,19.0.0-1-g6fe20d0+1,19.0.0-1-g7011481+9,19.0.0-1-g8c57eb9+6,19.0.0-1-gb5175dc+11,19.0.0-1-gdc0e4a7+9,19.0.0-1-ge272bc4+6,19.0.0-1-ge3aa853,19.0.0-10-g448f008b,19.0.0-12-g6990b2c,19.0.0-2-g0d9f9cd+11,19.0.0-2-g3d9e4fb2+11,19.0.0-2-g5037de4,19.0.0-2-gb96a1c4+3,19.0.0-2-gd955cfd+15,19.0.0-3-g2d13df8,19.0.0-3-g6f3c7dc,19.0.0-4-g725f80e+11,19.0.0-4-ga671dab3b+1,19.0.0-4-gad373c5+3,19.0.0-5-ga2acb9c+2,19.0.0-5-gfe96e6c+2,w.2020.01
LSSTDataManagementBasePackage
Classes | Functions
lsst::afw::image::details Namespace Reference

Classes

struct  Div
 
struct  Minus
 
struct  Mult
 
struct  Plus
 

Functions

template<typename OperatorT , typename PixelT >
void operate (Image< PixelT > &img, ImageSlice< PixelT > const &slc, typename ImageSlice< PixelT >::ImageSliceType sliceType)
 A function to loop over pixels and perform the requested operation. More...
 

Function Documentation

◆ operate()

template<typename OperatorT , typename PixelT >
void lsst::afw::image::details::operate ( Image< PixelT > &  img,
ImageSlice< PixelT > const &  slc,
typename ImageSlice< PixelT >::ImageSliceType  sliceType 
)

A function to loop over pixels and perform the requested operation.

Definition at line 94 of file ImageSlice.h.

95  {
96  OperatorT op;
97 
98  if (sliceType == ImageSlice<PixelT>::ROW) {
99  for (int y = 0; y < img.getHeight(); ++y) {
100  typename ImageSlice<PixelT>::x_iterator pSlc = slc.row_begin(0);
101  for (typename Image<PixelT>::x_iterator pImg = img.row_begin(y), end = img.row_end(y);
102  pImg != end; ++pImg, ++pSlc) {
103  *pImg = op(*pImg, *pSlc);
104  }
105  }
106  } else if (sliceType == ImageSlice<PixelT>::COLUMN) {
107  typename ImageSlice<PixelT>::y_iterator pSlc = slc.col_begin(0);
108  for (int y = 0; y < img.getHeight(); ++y, ++pSlc) {
109  for (typename Image<PixelT>::x_iterator pImg = img.row_begin(y), end = img.row_end(y);
110  pImg != end; ++pImg) {
111  *pImg = op(*pImg, *pSlc);
112  }
113  }
114  }
115 }
int y
Definition: SpanSet.cc:49
int end