#include <processor.h>
Inheritance diagram for EMAN::ComplexPixelProcessor:
Public Member Functions | |
| void | process_inplace (EMData *image) |
| To process an image in-place. | |
Static Public Member Functions | |
| string | get_group_desc () |
| Get the description of this group of processors. | |
Protected Member Functions | |
| virtual void | process_pixel (float *x) const =0 |
ri2ap() is called before processing, so individual pixels will be A/P rather than R/I. The processor won't consider the pixel's coordinates and neighbors.
Definition at line 2741 of file processor.h.
|
|
Get the description of this group of processors. This function is defined in a parent class. It gives a introduction to a group of processors.
Reimplemented from EMAN::Processor. Definition at line 2746 of file processor.h. 02747 {
02748 return "The base class for fourier space processor working on individual pixels. ri2ap() is called before processing, so individual pixels will be A/P rather than R/I. The processor won't consider the pixel's coordinates and neighbors.";
02749 }
|
|
|
To process an image in-place. For those processors which can only be processed out-of-place, override this function to just print out some error message to remind user call the out-of-place version.
Implements EMAN::Processor. Definition at line 1566 of file processor.cpp. References EMAN::EMData::ap2ri(), data, EMAN::EMData::get_data(), EMAN::EMData::get_xsize(), EMAN::EMData::get_ysize(), EMAN::EMData::get_zsize(), EMAN::EMData::is_complex(), LOGWARN, process_pixel(), EMAN::EMData::ri2ap(), and EMAN::EMData::update(). 01567 {
01568 if (!image) {
01569 LOGWARN("NULL image");
01570 return;
01571 }
01572 if (!image->is_complex()) {
01573 LOGWARN("cannot apply complex processor on a real image. Nothing is done.");
01574 return;
01575 }
01576
01577 size_t size = (size_t)image->get_xsize() *
01578 (size_t)image->get_ysize() *
01579 (size_t)image->get_zsize();
01580 float *data = image->get_data();
01581
01582 image->ri2ap();
01583
01584 for (size_t i = 0; i < size; i += 2) {
01585 process_pixel(data);
01586 data += 2;
01587 }
01588
01589 image->update();
01590 image->ap2ri();
01591 }
|
|
|
Implemented in EMAN::ComplexNormPixel. Referenced by process_inplace(). |
1.3.9.1