#include <projector.h>
Inheritance diagram for EMAN::Projector:
Public Member Functions | |
virtual | ~Projector () |
virtual EMData * | project3d (EMData *image) const =0 |
Project an 3D image into a 2D image. | |
virtual EMData * | backproject3d (EMData *image) const =0 |
Back-project a 2D image into a 3D image. | |
virtual string | get_name () const =0 |
Get the projector's name. | |
virtual string | get_desc () const =0 |
virtual Dict | get_params () const |
Get the projector parameters in a key/value dictionary. | |
void | set_params (const Dict &new_params) |
Set the projector parameters using a key/value dictionary. | |
virtual TypeDict | get_param_types () const |
Get processor parameter information in a dictionary. | |
Protected Attributes | |
Dict | params |
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:
Typical usage of Projectors:
vector<string> all_projectors = Factory<Projector>::get_list();
EMData* img = ...; Projector* proj = Factory<Projector>::get("fft"); EMData* result = proj->project3d(img);
Definition at line 81 of file projector.h.
virtual EMAN::Projector::~Projector | ( | ) | [inline, virtual] |
Back-project a 2D image into a 3D image.
Implemented in EMAN::XYZProjector, EMAN::GaussFFTProjector, EMAN::FourierGriddingProjector, EMAN::PawelProjector, EMAN::MaxValProjector, EMAN::StandardProjector, and EMAN::ChaoProjector.
Referenced by EMAN::EMData::backproject().
virtual string EMAN::Projector::get_desc | ( | ) | const [pure virtual] |
virtual string EMAN::Projector::get_name | ( | ) | const [pure virtual] |
Get the projector's name.
Each projector is indentified by unique name.
Implemented in EMAN::XYZProjector, EMAN::GaussFFTProjector, EMAN::FourierGriddingProjector, EMAN::PawelProjector, EMAN::MaxValProjector, EMAN::StandardProjector, and EMAN::ChaoProjector.
virtual TypeDict EMAN::Projector::get_param_types | ( | ) | const [inline, virtual] |
Get processor parameter information in a dictionary.
Each parameter has one record in the dictionary. Each record contains its name, data-type, and description.
Reimplemented in EMAN::XYZProjector, EMAN::GaussFFTProjector, EMAN::FourierGriddingProjector, EMAN::PawelProjector, EMAN::MaxValProjector, EMAN::StandardProjector, and EMAN::ChaoProjector.
Definition at line 125 of file projector.h.
virtual Dict EMAN::Projector::get_params | ( | ) | const [inline, virtual] |
Get the projector parameters in a key/value dictionary.
return A key/value pair dictionary containing the parameters.
Definition at line 110 of file projector.h.
References params.
00111 { 00112 return params; 00113 }
Project an 3D image into a 2D image.
Implemented in EMAN::XYZProjector, EMAN::GaussFFTProjector, EMAN::FourierGriddingProjector, EMAN::PawelProjector, EMAN::MaxValProjector, EMAN::StandardProjector, and EMAN::ChaoProjector.
Referenced by EMAN::EMData::project().
void EMAN::Projector::set_params | ( | const Dict & | new_params | ) | [inline] |
Set the projector parameters using a key/value dictionary.
Reimplemented in EMAN::GaussFFTProjector.
Definition at line 115 of file projector.h.
References params.
Referenced by EMAN::GaussFFTProjector::set_params().
00116 { 00117 params = new_params; 00118 }
Dict EMAN::Projector::params [protected] |
Definition at line 132 of file projector.h.
Referenced by EMAN::PawelProjector::backproject3d(), EMAN::ChaoProjector::backproject3d(), get_params(), EMAN::ChaoProjector::project3d(), EMAN::FourierGriddingProjector::project3d(), EMAN::MaxValProjector::project3d(), EMAN::StandardProjector::project3d(), EMAN::PawelProjector::project3d(), EMAN::GaussFFTProjector::project3d(), EMAN::GaussFFTProjector::set_params(), and set_params().