EMAN2
Public Member Functions | Protected Attributes | List of all members
EMAN::Projector Class Referenceabstract

Projector class defines a method to generate 2D projections from a 3D model. More...

#include <projector.h>

Inheritance diagram for EMAN::Projector:
Inheritance graph
[legend]
Collaboration diagram for EMAN::Projector:
Collaboration graph
[legend]

Public Member Functions

virtual ~Projector ()
 
virtual EMDataproject3d (EMData *image) const =0
 Project an 3D image into a 2D image. More...
 
virtual EMDatabackproject3d (EMData *image) const =0
 Back-project a 2D image into a 3D image. More...
 
virtual string get_name () const =0
 Get the projector's name. More...
 
virtual string get_desc () const =0
 
virtual Dict get_params () const
 Get the projector parameters in a key/value dictionary. More...
 
void set_params (const Dict &new_params)
 Set the projector parameters using a key/value dictionary. More...
 
virtual TypeDict get_param_types () const
 Get processor parameter information in a dictionary. More...
 

Protected Attributes

Dict params
 

Detailed Description

Projector class defines a method to generate 2D projections from a 3D model.

Projector class is the base class for all projectors. Each specific projector has a unique name and should be called through the name.

All Projector classes in EMAN are managed by a Factory
pattern. So each Projector class must define:
  - a unique name to idenfity itself in the factory.
  - a static method to register itself in the factory.

Typical usage of Projectors:

Definition at line 77 of file projector.h.

Constructor & Destructor Documentation

◆ ~Projector()

virtual EMAN::Projector::~Projector ( )
inlinevirtual

Definition at line 80 of file projector.h.

81 {
82 }

Member Function Documentation

◆ backproject3d()

virtual EMData * EMAN::Projector::backproject3d ( EMData image) const
pure virtual

Back-project a 2D image into a 3D image.

Returns
A 3D image from the backprojection.

Implemented in EMAN::XYZProjector, EMAN::GaussFFTProjector, EMAN::FourierGriddingProjector, EMAN::PawelProjector, EMAN::MaxValProjector, EMAN::StandardProjector, and EMAN::ChaoProjector.

◆ get_desc()

virtual string EMAN::Projector::get_desc ( ) const
pure virtual

◆ get_name()

virtual string EMAN::Projector::get_name ( ) const
pure virtual

Get the projector's name.

Each projector is indentified by unique name.

Returns
The projector's name.

Implemented in EMAN::XYZProjector, EMAN::GaussFFTProjector, EMAN::FourierGriddingProjector, EMAN::PawelProjector, EMAN::MaxValProjector, EMAN::StandardProjector, and EMAN::ChaoProjector.

◆ get_param_types()

virtual TypeDict EMAN::Projector::get_param_types ( ) const
inlinevirtual

Get processor parameter information in a dictionary.

Each parameter has one record in the dictionary. Each record contains its name, data-type, and description.

Returns
A dictionary containing the parameter info.

Reimplemented in EMAN::XYZProjector, EMAN::GaussFFTProjector, EMAN::FourierGriddingProjector, EMAN::PawelProjector, EMAN::MaxValProjector, EMAN::StandardProjector, and EMAN::ChaoProjector.

Definition at line 121 of file projector.h.

122 {
123 TypeDict d;
124 return d;
125 }

◆ get_params()

virtual Dict EMAN::Projector::get_params ( ) const
inlinevirtual

Get the projector parameters in a key/value dictionary.

return A key/value pair dictionary containing the parameters.

Definition at line 106 of file projector.h.

107 {
108 return params;
109 }

References params.

◆ project3d()

virtual EMData * EMAN::Projector::project3d ( EMData image) const
pure virtual

Project an 3D image into a 2D image.

Returns
A 2D image from the projection.

Implemented in EMAN::XYZProjector, EMAN::GaussFFTProjector, EMAN::FourierGriddingProjector, EMAN::PawelProjector, EMAN::MaxValProjector, EMAN::StandardProjector, and EMAN::ChaoProjector.

◆ set_params()

void EMAN::Projector::set_params ( const Dict new_params)
inline

Set the projector parameters using a key/value dictionary.

Definition at line 111 of file projector.h.

112 {
113 params = new_params;
114 }

References params.

Referenced by EMAN::GaussFFTProjector::set_params().

Member Data Documentation

◆ params

Dict EMAN::Projector::params
protected

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