LSSTApplications  10.0+286,10.0+36,10.0+46,10.0-2-g4f67435,10.1+152,10.1+37,11.0,11.0+1,11.0-1-g47edd16,11.0-1-g60db491,11.0-1-g7418c06,11.0-2-g04d2804,11.0-2-g68503cd,11.0-2-g818369d,11.0-2-gb8b8ce7
LSSTDataManagementBasePackage
Classes | Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | Friends | List of all members
lsst::afw::math::AnalyticKernel Class Reference

A kernel described by a function. More...

#include <Kernel.h>

Inheritance diagram for lsst::afw::math::AnalyticKernel:
lsst::afw::table::io::PersistableFacade< AnalyticKernel > lsst::afw::math::Kernel lsst::daf::base::Citizen lsst::daf::base::Persistable lsst::afw::table::io::PersistableFacade< Kernel > lsst::afw::table::io::Persistable lsst::meas::algorithms::LocalShapeletKernel lsst::meas::algorithms::ShapeletKernel

Classes

class  Factory
 

Public Types

typedef boost::shared_ptr
< AnalyticKernel
Ptr
 
typedef boost::shared_ptr
< AnalyticKernel const > 
ConstPtr
 
typedef
lsst::afw::math::Function2
< Pixel
KernelFunction
 
typedef boost::shared_ptr
< lsst::afw::math::Function2
< Pixel > > 
KernelFunctionPtr
 
- Public Types inherited from lsst::afw::math::Kernel
typedef double Pixel
 
typedef boost::shared_ptr< KernelPtr
 
typedef boost::shared_ptr
< Kernel const > 
ConstPtr
 
typedef boost::shared_ptr
< lsst::afw::math::Function2
< double > > 
SpatialFunctionPtr
 
typedef
lsst::afw::math::Function2
< double > 
SpatialFunction
 
typedef
lsst::afw::math::NullFunction2
< double > 
NullSpatialFunction
 
typedef generic_kernel_tag kernel_fill_factor
 
- Public Types inherited from lsst::daf::base::Citizen
enum  { magicSentinel = 0xdeadbeef }
 
typedef unsigned long memId
 Type of the block's ID. More...
 
typedef memId(* memNewCallback )(const memId cid)
 A function used to register a callback. More...
 
typedef memId(* memCallback )(const Citizen *ptr)
 
- Public Types inherited from lsst::daf::base::Persistable
typedef boost::shared_ptr
< Persistable
Ptr
 

Public Member Functions

 AnalyticKernel ()
 Construct an empty spatially invariant AnalyticKernel of size 0x0. More...
 
 AnalyticKernel (int width, int height, KernelFunction const &kernelFunction, Kernel::SpatialFunction const &spatialFunction=NullSpatialFunction())
 Construct a spatially invariant AnalyticKernel, or a spatially varying AnalyticKernel where the spatial model is described by one function (that is cloned to give one per analytic function parameter). More...
 
 AnalyticKernel (int width, int height, KernelFunction const &kernelFunction, std::vector< Kernel::SpatialFunctionPtr > const &spatialFunctionList)
 Construct a spatially varying AnalyticKernel, where the spatial model is described by a list of functions (one per analytic function parameter). More...
 
virtual ~AnalyticKernel ()
 
virtual boost::shared_ptr< Kernelclone () const
 Return a pointer to a deep copy of this kernel. More...
 
double computeImage (lsst::afw::image::Image< Pixel > &image, bool doNormalize, double x=0.0, double y=0.0) const
 Compute an image (pixellized representation of the kernel) in place. More...
 
virtual std::vector< double > getKernelParameters () const
 Return the current kernel parameters. More...
 
virtual KernelFunctionPtr getKernelFunction () const
 Get a deep copy of the kernel function. More...
 
virtual std::string toString (std::string const &prefix="") const
 Return a string representation of the kernel. More...
 
virtual bool isPersistable () const
 Return true if this particular object can be persisted using afw::table::io. More...
 
- Public Member Functions inherited from lsst::afw::math::Kernel
 Kernel ()
 Construct a null Kernel of size 0,0. More...
 
 Kernel (int width, int height, unsigned int nKernelParams, SpatialFunction const &spatialFunction=NullSpatialFunction())
 Construct a spatially invariant Kernel or a spatially varying Kernel with one spatial function that is duplicated as needed. More...
 
 Kernel (int width, int height, const std::vector< SpatialFunctionPtr > spatialFunctionList)
 Construct a spatially varying Kernel with a list of spatial functions (one per kernel parameter) More...
 
virtual ~Kernel ()
 
double computeImage (lsst::afw::image::Image< Pixel > &image, bool doNormalize, double x=0.0, double y=0.0) const
 Compute an image (pixellized representation of the kernel) in place. More...
 
geom::Extent2I const getDimensions () const
 Return the Kernel's dimensions (width, height) More...
 
void setDimensions (geom::Extent2I dims)
 
void setWidth (int width)
 
void setHeight (int height)
 
int getWidth () const
 Return the Kernel's width. More...
 
int getHeight () const
 Return the Kernel's height. More...
 
lsst::afw::geom::Point2I getCtr () const
 Return index of kernel's center. More...
 
int getCtrX () const
 Return x index of kernel's center. More...
 
int getCtrY () const
 Return y index of kernel's center. More...
 
lsst::afw::geom::Box2I getBBox () const
 return parent bounding box, with XY0 = -center More...
 
unsigned int getNKernelParameters () const
 Return the number of kernel parameters (0 if none) More...
 
int getNSpatialParameters () const
 Return the number of spatial parameters (0 if not spatially varying) More...
 
SpatialFunctionPtr getSpatialFunction (unsigned int index) const
 Return a clone of the specified spatial function (one component of the spatial model) More...
 
std::vector< SpatialFunctionPtrgetSpatialFunctionList () const
 Return a list of clones of the spatial functions. More...
 
virtual double getKernelParameter (unsigned int i) const
 
lsst::afw::geom::Box2I growBBox (lsst::afw::geom::Box2I const &bbox) const
 
lsst::afw::geom::Box2I shrinkBBox (lsst::afw::geom::Box2I const &bbox) const
 
void setCtr (lsst::afw::geom::Point2I ctr)
 Set index of kernel's center. More...
 
void setCtrX (int ctrX)
 Set x index of kernel's center. More...
 
void setCtrY (int ctrY)
 Set y index of kernel's center. More...
 
std::vector< std::vector
< double > > 
getSpatialParameters () const
 Return the spatial parameters parameters (an empty vector if not spatially varying) More...
 
bool isSpatiallyVarying () const
 Return true iff the kernel is spatially varying (has a spatial function) More...
 
void setKernelParameters (std::vector< double > const &params)
 Set the kernel parameters of a spatially invariant kernel. More...
 
void setKernelParameters (std::pair< double, double > const &params)
 Set the kernel parameters of a 2-component spatially invariant kernel. More...
 
void setSpatialParameters (const std::vector< std::vector< double > > params)
 Set the parameters of all spatial functions. More...
 
void computeKernelParametersFromSpatialModel (std::vector< double > &kernelParams, double x, double y) const
 Compute the kernel parameters at a specified point. More...
 
virtual void computeCache (int const )
 Compute a cache of Kernel values, if desired. More...
 
virtual int getCacheSize () const
 Get the current size of the kernel cache (0 if none or if caches not supported) More...
 
- Public Member Functions inherited from lsst::daf::base::Citizen
 Citizen (const std::type_info &)
 
 Citizen (Citizen const &)
 
 ~Citizen ()
 
Citizenoperator= (Citizen const &)
 
std::string repr () const
 Return a string representation of a Citizen. More...
 
void markPersistent (void)
 Mark a Citizen as persistent and not destroyed until process end. More...
 
memId getId () const
 Return the Citizen's ID. More...
 
- Public Member Functions inherited from lsst::daf::base::Persistable
 Persistable (void)
 
virtual ~Persistable (void)
 
template<class Archive >
void serialize (Archive &, unsigned int const)
 
- Public Member Functions inherited from lsst::afw::table::io::Persistable
void writeFits (std::string const &fileName, std::string const &mode="w") const
 Write the object to a regular FITS file. More...
 
void writeFits (fits::MemFileManager &manager, std::string const &mode="w") const
 Write the object to a FITS image in memory. More...
 
void writeFits (fits::Fits &fitsfile) const
 Write the object to an already-open FITS object. More...
 
virtual ~Persistable ()
 

Protected Member Functions

virtual double doComputeImage (lsst::afw::image::Image< Pixel > &image, bool doNormalize) const
 Low-level version of computeImage. More...
 
virtual std::string getPersistenceName () const
 Return the unique name used to persist this object and look up its factory. More...
 
virtual void write (OutputArchiveHandle &handle) const
 Write the object to one or more catalogs. More...
 
virtual void setKernelParameter (unsigned int ind, double value) const
 Set one kernel parameter. More...
 
template<class Archive >
void serialize (Archive &ar, unsigned int const version)
 
- Protected Member Functions inherited from lsst::afw::math::Kernel
virtual std::string getPythonModule () const
 Return the fully-qualified Python module that should be imported to guarantee that its factory is registered. More...
 
void setKernelParametersFromSpatialModel (double x, double y) const
 Set the kernel parameters from the spatial model (if any). More...
 
- Protected Member Functions inherited from lsst::afw::table::io::Persistable
 Persistable ()
 
 Persistable (Persistable const &other)
 
void operator= (Persistable const &other)
 

Protected Attributes

KernelFunctionPtr _kernelFunctionPtr
 
- Protected Attributes inherited from lsst::afw::math::Kernel
std::vector< SpatialFunctionPtr_spatialFunctionList
 

Friends

class boost::serialization::access
 

Additional Inherited Members

- Static Public Member Functions inherited from lsst::afw::table::io::PersistableFacade< AnalyticKernel >
static boost::shared_ptr
< AnalyticKernel > 
readFits (fits::Fits &fitsfile)
 Read an object from an already open FITS object. More...
 
static boost::shared_ptr
< AnalyticKernel > 
readFits (std::string const &fileName, int hdu=0)
 Read an object from a regular FITS file. More...
 
static boost::shared_ptr
< AnalyticKernel > 
readFits (fits::MemFileManager &manager, int hdu=0)
 Read an object from a FITS file in memory. More...
 
- Static Public Member Functions inherited from lsst::daf::base::Citizen
static bool hasBeenCorrupted ()
 Check all allocated blocks for corruption. More...
 
static memId getNextMemId ()
 Return the memId of the next object to be allocated. More...
 
static int init ()
 Called once when the memory system is being initialised. More...
 
static int census (int, memId startingMemId=0)
 How many active Citizens are there? More...
 
static void census (std::ostream &stream, memId startingMemId=0)
 Print a list of all active Citizens to stream, sorted by ID. More...
 
static const std::vector
< const Citizen * > * 
census ()
 Return a (newly allocated) std::vector of active Citizens sorted by ID. More...
 
static memId setNewCallbackId (memId id)
 Call the NewCallback when block is allocated. More...
 
static memId setDeleteCallbackId (memId id)
 Call the current DeleteCallback when block is deleted. More...
 
static memNewCallback setNewCallback (memNewCallback func)
 Set the NewCallback function. More...
 
static memCallback setDeleteCallback (memCallback func)
 Set the DeleteCallback function. More...
 
static memCallback setCorruptionCallback (memCallback func)
 Set the CorruptionCallback function. More...
 
- Static Public Member Functions inherited from lsst::afw::table::io::PersistableFacade< Kernel >
static boost::shared_ptr< Kernel > readFits (fits::Fits &fitsfile)
 Read an object from an already open FITS object. More...
 
static boost::shared_ptr< Kernel > readFits (std::string const &fileName, int hdu=0)
 Read an object from a regular FITS file. More...
 
static boost::shared_ptr< Kernel > readFits (fits::MemFileManager &manager, int hdu=0)
 Read an object from a FITS file in memory. More...
 
- Protected Types inherited from lsst::afw::table::io::Persistable
typedef io::OutputArchiveHandle OutputArchiveHandle
 

Detailed Description

A kernel described by a function.

The function's x, y arguments are as follows:

Note: each pixel is set to the value of the kernel function at the center of the pixel (rather than averaging the function over the area of the pixel).

Definition at line 628 of file Kernel.h.

Member Typedef Documentation

typedef boost::shared_ptr< AnalyticKernel const> lsst::afw::math::AnalyticKernel::ConstPtr

Definition at line 631 of file Kernel.h.

Definition at line 632 of file Kernel.h.

Definition at line 633 of file Kernel.h.

Definition at line 630 of file Kernel.h.

Constructor & Destructor Documentation

lsst::afw::math::AnalyticKernel::AnalyticKernel ( )
explicit

Construct an empty spatially invariant AnalyticKernel of size 0x0.

Definition at line 35 of file AnalyticKernel.cc.

36 :
37  Kernel(),
39 {}
KernelFunctionPtr _kernelFunctionPtr
Definition: Kernel.h:725
Kernel()
Construct a null Kernel of size 0,0.
Definition: Kernel.cc:51
lsst::afw::math::AnalyticKernel::AnalyticKernel ( int  width,
int  height,
KernelFunction const &  kernelFunction,
Kernel::SpatialFunction const &  spatialFunction = NullSpatialFunction() 
)
explicit

Construct a spatially invariant AnalyticKernel, or a spatially varying AnalyticKernel where the spatial model is described by one function (that is cloned to give one per analytic function parameter).

Parameters
widthwidth of kernel
heightheight of kernel
kernelFunctionkernel function; a deep copy is made
spatialFunctionspatial function; one deep copy is made for each kernel function parameter; if omitted or set to Kernel::NullSpatialFunction() then the kernel is spatially invariant

Definition at line 41 of file AnalyticKernel.cc.

46  :
47  Kernel(width, height, kernelFunction.getNParameters(), spatialFunction),
49 {}
KernelFunctionPtr _kernelFunctionPtr
Definition: Kernel.h:725
void ImageT ImageT int float saturatedPixelValue int const width
Definition: saturated.cc:44
void ImageT ImageT int float saturatedPixelValue int const height
Definition: saturated.cc:44
table::Key< int > kernelFunction
Kernel()
Construct a null Kernel of size 0,0.
Definition: Kernel.cc:51
lsst::afw::math::AnalyticKernel::AnalyticKernel ( int  width,
int  height,
KernelFunction const &  kernelFunction,
std::vector< Kernel::SpatialFunctionPtr > const &  spatialFunctionList 
)
explicit

Construct a spatially varying AnalyticKernel, where the spatial model is described by a list of functions (one per analytic function parameter).

Exceptions
lsst::pex::exceptions::InvalidParameterErrorif the length of spatialFunctionList != # kernel function parameters.
Parameters
widthwidth of kernel
heightheight of kernel
kernelFunctionkernel function; a deep copy is made
spatialFunctionListlist of spatial functions, one per kernel function parameter; a deep copy is made of each function

Definition at line 51 of file AnalyticKernel.cc.

56  :
57  Kernel(width, height, spatialFunctionList),
59 {
60  if (kernelFunction.getNParameters() != spatialFunctionList.size()) {
61  std::ostringstream os;
62  os << "kernelFunction.getNParameters() = " << kernelFunction.getNParameters()
63  << " != " << spatialFunctionList.size() << " = " << "spatialFunctionList.size()";
64  throw LSST_EXCEPT(pexExcept::InvalidParameterError, os.str());
65  }
66 }
KernelFunctionPtr _kernelFunctionPtr
Definition: Kernel.h:725
void ImageT ImageT int float saturatedPixelValue int const width
Definition: saturated.cc:44
void ImageT ImageT int float saturatedPixelValue int const height
Definition: saturated.cc:44
#define LSST_EXCEPT(type,...)
Definition: Exception.h:46
table::Key< int > kernelFunction
Kernel()
Construct a null Kernel of size 0,0.
Definition: Kernel.cc:51
virtual lsst::afw::math::AnalyticKernel::~AnalyticKernel ( )
inlinevirtual

Definition at line 669 of file Kernel.h.

669 {}

Member Function Documentation

boost::shared_ptr< afwMath::Kernel > lsst::afw::math::AnalyticKernel::clone ( ) const
virtual

Return a pointer to a deep copy of this kernel.

This kernel exists instead of a copy constructor so one can obtain a copy of an actual kernel instead of a useless copy of the base class.

Every kernel subclass must override this method.

Returns
a pointer to a deep copy of the kernel

Implements lsst::afw::math::Kernel.

Definition at line 68 of file AnalyticKernel.cc.

68  {
69  PTR(afwMath::Kernel) retPtr;
70  if (this->isSpatiallyVarying()) {
71  retPtr.reset(new afwMath::AnalyticKernel(this->getWidth(), this->getHeight(),
72  *(this->_kernelFunctionPtr), this->_spatialFunctionList));
73  } else {
74  retPtr.reset(new afwMath::AnalyticKernel(this->getWidth(), this->getHeight(),
75  *(this->_kernelFunctionPtr)));
76  }
77  retPtr->setCtr(this->getCtr());
78  return retPtr;
79 }
#define PTR(...)
Definition: base.h:41
int getHeight() const
Return the Kernel&#39;s height.
Definition: Kernel.h:247
int getWidth() const
Return the Kernel&#39;s width.
Definition: Kernel.h:240
KernelFunctionPtr _kernelFunctionPtr
Definition: Kernel.h:725
if(width!=gim.getWidth()||height!=gim.getHeight()||x0!=gim.getX0()||y0!=gim.getY0())
Definition: saturated.cc:47
void setCtr(lsst::afw::geom::Point2I ctr)
Set index of kernel&#39;s center.
Definition: Kernel.h:361
lsst::afw::geom::Point2I getCtr() const
Return index of kernel&#39;s center.
Definition: Kernel.h:254
std::vector< SpatialFunctionPtr > _spatialFunctionList
Definition: Kernel.h:524
A kernel described by a function.
Definition: Kernel.h:628
Kernels are used for convolution with MaskedImages and (eventually) Images.
Definition: Kernel.h:134
bool isSpatiallyVarying() const
Return true iff the kernel is spatially varying (has a spatial function)
Definition: Kernel.h:402
double lsst::afw::math::AnalyticKernel::computeImage ( lsst::afw::image::Image< Pixel > &  image,
bool  doNormalize,
double  x = 0.0,
double  y = 0.0 
) const

Compute an image (pixellized representation of the kernel) in place.

This special version accepts any size image (though you can get in trouble if the image is large enough that the image is evaluated outside its domain).

x, y are ignored if there is no spatial function.

Returns
The kernel sum
Note
computeNewImage has been retired; it doesn't need to be a member
Exceptions
lsst::pex::exceptions::InvalidParameterErrorif the image is the wrong size
lsst::pex::exceptions::OverflowErrorif doNormalize is true and the kernel sum is exactly 0
Parameters
imageimage whose pixels are to be set (output) xy0 of the image will be set to -kernel.getCtr() - border, where border = (image.getDimensions() - kernel.getDimensions()) / 2
doNormalizenormalize the image (so sum is 1)?
xx (column position) at which to compute spatial function
yy (row position) at which to compute spatial function

Definition at line 81 of file AnalyticKernel.cc.

86  {
87  afwGeom::Extent2I llBorder = (image.getDimensions() - getDimensions()) / 2;
88  image.setXY0(afwGeom::Point2I(-afwGeom::Extent2I(getCtr()+ llBorder)));
89  if (this->isSpatiallyVarying()) {
91  }
92  return doComputeImage(image, doNormalize);
93 }
int y
void setXY0(geom::Point2I const origin)
Definition: Image.h:362
geom::Extent2I const getDimensions() const
Return the Kernel&#39;s dimensions (width, height)
Definition: Kernel.h:226
virtual double doComputeImage(lsst::afw::image::Image< Pixel > &image, bool doNormalize) const
Low-level version of computeImage.
void setKernelParametersFromSpatialModel(double x, double y) const
Set the kernel parameters from the spatial model (if any).
Definition: Kernel.cc:257
geom::Extent2I getDimensions() const
Return the image&#39;s size; useful for passing to constructors.
Definition: Image.h:298
double x
lsst::afw::geom::Point2I getCtr() const
Return index of kernel&#39;s center.
Definition: Kernel.h:254
bool isSpatiallyVarying() const
Return true iff the kernel is spatially varying (has a spatial function)
Definition: Kernel.h:402
double lsst::afw::math::AnalyticKernel::doComputeImage ( lsst::afw::image::Image< Pixel > &  image,
bool  doNormalize 
) const
protectedvirtual

Low-level version of computeImage.

Before this is called the image dimensions are checked, the image's xy0 is set and the kernel's parameters are set. This routine sets the pixels, including normalization if requested.

Returns
The kernel sum

Implements lsst::afw::math::Kernel.

Definition at line 116 of file AnalyticKernel.cc.

119  {
120  double imSum = 0;
121  for (int y = 0; y != image.getHeight(); ++y) {
122  double const fy = image.indexToPosition(y, afwImage::Y);
124  for (int x = 0; x != image.getWidth(); ++x, ++ptr) {
125  double const fx = image.indexToPosition(x, afwImage::X);
126  Pixel const pixelVal = (*_kernelFunctionPtr)(fx, fy);
127  *ptr = pixelVal;
128  imSum += pixelVal;
129  }
130  }
131 
132  if (doNormalize && (imSum != 1)) {
133  if (imSum == 0) {
134  throw LSST_EXCEPT(pexExcept::OverflowError, "Cannot normalize; kernel sum is 0");
135  }
136  image /= imSum;
137  imSum = 1;
138  }
139 
140  return imSum;
141 }
int y
double indexToPosition(double ind, lsst::afw::image::xOrY const xy) const
Convert image index to image position.
Definition: Image.h:290
int getHeight() const
Return the number of rows in the image.
Definition: Image.h:239
double x
#define LSST_EXCEPT(type,...)
Definition: Exception.h:46
x_iterator row_begin(int y) const
Definition: Image.h:319
int getWidth() const
Return the number of columns in the image.
Definition: Image.h:237
A class to represent a 2-dimensional array of pixels.
Definition: Image.h:415
afwMath::AnalyticKernel::KernelFunctionPtr lsst::afw::math::AnalyticKernel::getKernelFunction ( ) const
virtual

Get a deep copy of the kernel function.

Definition at line 95 of file AnalyticKernel.cc.

96  {
97  return _kernelFunctionPtr->clone();
98 }
KernelFunctionPtr _kernelFunctionPtr
Definition: Kernel.h:725
std::vector< double > lsst::afw::math::AnalyticKernel::getKernelParameters ( ) const
virtual

Return the current kernel parameters.

If the kernel is spatially varying then the parameters are those last computed. See also computeKernelParametersFromSpatialModel. If there are no kernel parameters then returns an empty vector.

Reimplemented from lsst::afw::math::Kernel.

Definition at line 109 of file AnalyticKernel.cc.

109  {
110  return _kernelFunctionPtr->getParameters();
111 }
KernelFunctionPtr _kernelFunctionPtr
Definition: Kernel.h:725
std::string lsst::afw::math::AnalyticKernel::getPersistenceName ( ) const
protectedvirtual

Return the unique name used to persist this object and look up its factory.

Must be less than ArchiveIndexSchema::MAX_NAME_LENGTH characters.

Reimplemented from lsst::afw::table::io::Persistable.

Definition at line 210 of file AnalyticKernel.cc.

210 { return getAnalyticKernelPersistenceName(); }
virtual bool lsst::afw::math::AnalyticKernel::isPersistable ( ) const
inlinevirtual

Return true if this particular object can be persisted using afw::table::io.

Reimplemented from lsst::afw::table::io::Persistable.

Definition at line 708 of file Kernel.h.

708 { return true; }
template<class Archive >
void lsst::afw::math::AnalyticKernel::serialize ( Archive &  ar,
unsigned int const  version 
)
inlineprotected

Definition at line 729 of file Kernel.h.

729  {
730  ar & make_nvp("k",
731  boost::serialization::base_object<Kernel>(*this));
732  ar & make_nvp("fn", _kernelFunctionPtr);
733  }
KernelFunctionPtr _kernelFunctionPtr
Definition: Kernel.h:725
void lsst::afw::math::AnalyticKernel::setKernelParameter ( unsigned int  ind,
double  value 
) const
protectedvirtual

Set one kernel parameter.

Classes that have kernel parameters must subclass this function.

This function is marked "const", despite modifying unimportant internals, so that computeImage can be const.

Exceptions
lsst::pex::exceptions::InvalidParameterErroralways (unless subclassed)

Reimplemented from lsst::afw::math::Kernel.

Definition at line 143 of file AnalyticKernel.cc.

143  {
144  _kernelFunctionPtr->setParameter(ind, value);
145 }
KernelFunctionPtr _kernelFunctionPtr
Definition: Kernel.h:725
std::string lsst::afw::math::AnalyticKernel::toString ( std::string const &  prefix = "") const
virtual

Return a string representation of the kernel.

Reimplemented from lsst::afw::math::Kernel.

Definition at line 100 of file AnalyticKernel.cc.

100  {
101  std::ostringstream os;
102  os << prefix << "AnalyticKernel:" << std::endl;
103  os << prefix << "..function: " << (_kernelFunctionPtr ? _kernelFunctionPtr->toString() : "None")
104  << std::endl;
105  os << Kernel::toString(prefix + "\t");
106  return os.str();
107 }
virtual std::string toString(std::string const &prefix="") const
Return a string representation of the kernel.
Definition: Kernel.cc:224
KernelFunctionPtr _kernelFunctionPtr
Definition: Kernel.h:725
void lsst::afw::math::AnalyticKernel::write ( OutputArchiveHandle handle) const
protectedvirtual

Write the object to one or more catalogs.

The handle object passed to this function provides an interface for adding new catalogs and adding nested objects to the same archive (while checking for duplicates). See OutputArchiveHandle for more information.

Reimplemented from lsst::afw::table::io::Persistable.

Definition at line 212 of file AnalyticKernel.cc.

212  {
213  AnalyticKernelPersistenceHelper const keys(_spatialFunctionList.size());
214  PTR(afw::table::BaseRecord) record = keys.write(handle, *this);
215  record->set(keys.kernelFunction, handle.put(_kernelFunctionPtr.get()));
216 }
#define PTR(...)
Definition: base.h:41
KernelFunctionPtr _kernelFunctionPtr
Definition: Kernel.h:725
virtual void write(OutputArchiveHandle &handle) const
Write the object to one or more catalogs.
table::Key< int > kernelFunction
std::vector< SpatialFunctionPtr > _spatialFunctionList
Definition: Kernel.h:524

Friends And Related Function Documentation

friend class boost::serialization::access
friend

Definition at line 727 of file Kernel.h.

Member Data Documentation

KernelFunctionPtr lsst::afw::math::AnalyticKernel::_kernelFunctionPtr
protected

Definition at line 725 of file Kernel.h.


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