1 #ifndef MeasAlgoShapeletPixel_H
2 #define MeasAlgoShapeletPixel_H
9 #include "lsst/meas/algorithms/shapelet/Image.h"
10 #include "lsst/meas/algorithms/shapelet/Transformation.h"
15 #ifdef __INTEL_COMPILER
16 #pragma warning (disable : 1418)
18 #include "boost/shared_ptr.hpp"
19 #ifdef __INTEL_COMPILER
20 #pragma warning (default : 1418)
23 #ifdef PIXELLIST_USE_POOL
24 #define PIXELLIST_BLOCK 1024*1024*100 // 100 MB per block
25 #include "PoolAllocator.h"
30 namespace algorithms {
39 Pixel(
double u,
double v,
double flux,
double inverseSigma) :
42 Pixel(std::complex<double> z,
double flux,
double inverseSigma) :
53 void setPos(
const std::complex<double>& pos) {
_pos = pos; }
98 boost::shared_ptr<std::vector<Pixel> >
_v1;
99 #ifdef PIXELLIST_USE_POOL
100 typedef PoolAllocator<Pixel,PIXELLIST_BLOCK> PoolAllocPixel;
101 boost::shared_ptr<std::vector<Pixel,PoolAllocPixel> >
_v2;
103 boost::shared_ptr<std::vector<Pixel> >
_v2;
111 const Position cen,
double sky,
double noise,
double gain,
112 const Image<double>* weightImage,
const Transformation& trans,
113 double aperture,
double xOffset,
double yOffset,
long& flag);
116 const Image<double>& bkg,
117 const Position cen,
const Transformation& trans,
118 double aperture,
double xOffset,
double yOffset,
long& flag);
123 std::complex<double> cen_offset, std::complex<double> shear,
124 double aperture,
long& flag);
128 std::complex<double> cen_offset,
double aperture,
long& flag)
133 double aperture,
long& flag)
std::complex< double > getPos() const
void reserve(const int n)
void setFlux(const double flux)
boost::shared_ptr< std::vector< Pixel > > _v2
void push_back(const Pixel &p)
double getInverseSigma() const
Pixel(std::complex< double > z, double flux, double inverseSigma)
void setPos(const std::complex< double > &pos)
std::complex< double > _pos
void setInverseSigma(const double inverseSigma)
void getSubPixList(PixelList &pix, const PixelList &allPix, std::complex< double > cen_offset, std::complex< double > shear, double aperture, long &flag)
boost::shared_ptr< std::vector< Pixel > > _v1
PixelList & operator=(const PixelList &rhs)
Pixel(double u, double v, double flux, double inverseSigma)
Pixel & operator[](const int i)
void sort(const Position &cen)