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
Public Types | Public Member Functions | List of all members
lsst::afw::geom::XYTransform Class Referenceabstract

Virtual base class for 2D transforms. More...

#include <XYTransform.h>

Inheritance diagram for lsst::afw::geom::XYTransform:
lsst::daf::base::Citizen lsst::afw::geom::AffineXYTransform lsst::afw::geom::IdentityXYTransform lsst::afw::geom::InvertedXYTransform lsst::afw::geom::MultiXYTransform lsst::afw::geom::RadialXYTransform lsst::afw::geom::SeparableXYTransform lsst::afw::image::XYTransformFromWcsPair

Public Types

typedef afw::geom::Point2D Point2D
 
typedef afw::geom::AffineTransform AffineTransform
 
- 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 Member Functions

 XYTransform ()
 
virtual ~XYTransform ()
 
virtual boost::shared_ptr
< XYTransform
clone () const =0
 returns a deep copy More...
 
virtual boost::shared_ptr
< XYTransform
invert () const
 returns a "deep inverse" in this sense that the forward+inverse transforms do not share state More...
 
virtual Point2D forwardTransform (Point2D const &point) const =0
 virtuals for forward and reverse transforms More...
 
virtual Point2D reverseTransform (Point2D const &point) const =0
 
virtual AffineTransform linearizeForwardTransform (Point2D const &point) const
 linearized forward and reversed transforms More...
 
virtual AffineTransform linearizeReverseTransform (Point2D const &point) const
 
- 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...
 

Additional Inherited Members

- 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...
 

Detailed Description

Virtual base class for 2D transforms.

Definition at line 48 of file XYTransform.h.

Member Typedef Documentation

Definition at line 52 of file XYTransform.h.

Definition at line 51 of file XYTransform.h.

Constructor & Destructor Documentation

lsst::afw::geom::XYTransform::XYTransform ( )
explicit
virtual lsst::afw::geom::XYTransform::~XYTransform ( )
inlinevirtual

Definition at line 55 of file XYTransform.h.

55 { }

Member Function Documentation

virtual boost::shared_ptr< XYTransform > lsst::afw::geom::XYTransform::clone ( ) const
pure virtual
virtual Point2D lsst::afw::geom::XYTransform::forwardTransform ( Point2D const &  point) const
pure virtual

virtuals for forward and reverse transforms

These routines are responsible for throwing exceptions if the 'point' arg is outside the domain of the transform.

Implemented in lsst::afw::image::XYTransformFromWcsPair, lsst::afw::geom::RadialXYTransform, lsst::afw::geom::AffineXYTransform, lsst::afw::geom::MultiXYTransform, lsst::afw::geom::InvertedXYTransform, lsst::afw::geom::IdentityXYTransform, and lsst::afw::geom::SeparableXYTransform.

virtual boost::shared_ptr< XYTransform > lsst::afw::geom::XYTransform::invert ( ) const
virtual

returns a "deep inverse" in this sense that the forward+inverse transforms do not share state

Reimplemented in lsst::afw::image::XYTransformFromWcsPair, lsst::afw::geom::RadialXYTransform, and lsst::afw::geom::InvertedXYTransform.

virtual AffineTransform lsst::afw::geom::XYTransform::linearizeForwardTransform ( Point2D const &  point) const
virtual

linearized forward and reversed transforms

These are virtual but not pure virtual; there is a default implementation which calls forwardTransform() or reverseTransform() and takes finite differences with step size equal to one.

The following should always be satisfied for an arbitrary Point2D p (and analogously for the reverse transform) this->forwardTransform(p) == this->linearizeForwardTransform(p)(p);

Reimplemented in lsst::afw::geom::RadialXYTransform, lsst::afw::geom::AffineXYTransform, lsst::afw::geom::MultiXYTransform, lsst::afw::geom::InvertedXYTransform, and lsst::afw::geom::IdentityXYTransform.

virtual AffineTransform lsst::afw::geom::XYTransform::linearizeReverseTransform ( Point2D const &  point) const
virtual
virtual Point2D lsst::afw::geom::XYTransform::reverseTransform ( Point2D const &  point) const
pure virtual

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