Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members

Arroyo::aperture Class Reference

#include <aperture.h>

Inheritance diagram for Arroyo::aperture:

Arroyo::plane_optic Arroyo::one_to_one_optic Arroyo::optic Arroyo::three_frame Arroyo::optic Arroyo::AO_sim_base Arroyo::three_point Arroyo::AO_sim_base Arroyo::annular_aperture Arroyo::circular_aperture Arroyo::hexagonal_aperture Arroyo::rectangular_aperture Arroyo::tiled_hexagonal_aperture Arroyo::spidered_annular_aperture List of all members.

Public Member Functions

 aperture ()
 aperture (const aperture &ap)
virtual ~aperture ()
apertureoperator= (const aperture &ap)
virtual apertureclone () const =0
bool get_areal_weighting () const
void set_areal_weighting (bool aewtg)
virtual void read (const char *filename)=0
virtual void read (const iofits &iof)=0
virtual void write (const char *filename) const =0
virtual void write (iofits &iof) const =0
virtual void print (ostream &os, const char *prefix="") const
virtual double convex_polygon_overlap (const vector< three_point > &polygon_vertices) const =0

Static Public Member Functions

apertureaperture_factory (const char *filename)
apertureaperture_factory (const iofits &iof)

Protected Attributes

bool areal_weighting
 A flag to specify whether partial illumination of edge pixels should be calculated. Default is true.

Detailed Description

A virtual base class to represent an aperture.


Constructor & Destructor Documentation

Arroyo::aperture::aperture  )  [inline]
 

Null constructor

Arroyo::aperture::aperture const aperture ap  ) 
 

Copy constructor

virtual Arroyo::aperture::~aperture  )  [inline, virtual]
 

Virtual destructor


Member Function Documentation

aperture* Arroyo::aperture::aperture_factory const iofits iof  )  [static]
 

Factory to construct apertures from file

aperture* Arroyo::aperture::aperture_factory const char *  filename  )  [static]
 

Factory to construct apertures from file

virtual aperture* Arroyo::aperture::clone  )  const [pure virtual]
 

Virtual clone method

Calling routine is responsible for deleting memory

Implemented in Arroyo::circular_aperture, Arroyo::annular_aperture, Arroyo::rectangular_aperture, Arroyo::spidered_annular_aperture, Arroyo::hexagonal_aperture, and Arroyo::tiled_hexagonal_aperture.

virtual double Arroyo::aperture::convex_polygon_overlap const vector< three_point > &  polygon_vertices  )  const [pure virtual]
 

Virtual function to return the overlapping area between a convex polygon and the circular aperture.

The vertices of the polygon must lie in the plane of the aperture, or this function throws an error

Implemented in Arroyo::circular_aperture, Arroyo::annular_aperture, Arroyo::rectangular_aperture, Arroyo::spidered_annular_aperture, Arroyo::hexagonal_aperture, and Arroyo::tiled_hexagonal_aperture.

bool Arroyo::aperture::get_areal_weighting  )  const [inline]
 

Query whether wavefront pixels incident on the edge of the aperture will be weighted according to the area of overlap. The alternative is to zero them or leave them unchanged according to whether the center of the pixel lies outside or inside the aperture

aperture& Arroyo::aperture::operator= const aperture ap  ) 
 

Operator =

virtual void Arroyo::aperture::print ostream &  os,
const char *  prefix = ""
const [virtual]
 

Print

Reimplemented from Arroyo::plane_optic.

Reimplemented in Arroyo::circular_aperture, Arroyo::annular_aperture, Arroyo::rectangular_aperture, Arroyo::spidered_annular_aperture, Arroyo::hexagonal_aperture, and Arroyo::tiled_hexagonal_aperture.

virtual void Arroyo::aperture::read const iofits iof  )  [pure virtual]
 

Read from an iofits object

Reimplemented from Arroyo::plane_optic.

Implemented in Arroyo::circular_aperture, Arroyo::annular_aperture, Arroyo::rectangular_aperture, Arroyo::spidered_annular_aperture, Arroyo::hexagonal_aperture, and Arroyo::tiled_hexagonal_aperture.

virtual void Arroyo::aperture::read const char *  filename  )  [pure virtual]
 

Read from file

Implemented in Arroyo::circular_aperture, Arroyo::annular_aperture, Arroyo::rectangular_aperture, Arroyo::spidered_annular_aperture, Arroyo::hexagonal_aperture, and Arroyo::tiled_hexagonal_aperture.

void Arroyo::aperture::set_areal_weighting bool  aewtg  )  [inline]
 

Choose whether wavefront pixels incident on the edge of the aperture will be weighted according to the area of overlap. The alternative is to zero them or leave them unchanged according to whether the center of the pixel lies outside or inside the aperture

virtual void Arroyo::aperture::write iofits iof  )  const [pure virtual]
 

Write to an iofits object

Reimplemented from Arroyo::plane_optic.

Implemented in Arroyo::circular_aperture, Arroyo::annular_aperture, Arroyo::rectangular_aperture, Arroyo::spidered_annular_aperture, Arroyo::hexagonal_aperture, and Arroyo::tiled_hexagonal_aperture.

virtual void Arroyo::aperture::write const char *  filename  )  const [pure virtual]
 

Write to file

Implemented in Arroyo::circular_aperture, Arroyo::annular_aperture, Arroyo::rectangular_aperture, Arroyo::spidered_annular_aperture, Arroyo::hexagonal_aperture, and Arroyo::tiled_hexagonal_aperture.


Member Data Documentation

bool Arroyo::aperture::areal_weighting [protected]
 

A flag to specify whether partial illumination of edge pixels should be calculated. Default is true.


The documentation for this class was generated from the following file:
Generated on Thu Nov 29 17:16:32 2007 for arroyo by  doxygen 1.3.9.1