#include <processor.h>
Inheritance diagram for EMAN::PeakOnlyProcessor:
Public Member Functions | |
string | get_name () const |
Get the processor's name. | |
void | set_params (const Dict &new_params) |
Set the processor parameters using a key/value dictionary. | |
TypeDict | get_param_types () const |
Get processor parameter information in a dictionary. | |
string | get_desc () const |
Get the descrition of this specific processor. | |
Static Public Member Functions | |
static Processor * | NEW () |
Static Public Attributes | |
static const string | NAME = "mask.onlypeaks" |
Protected Member Functions | |
void | process_pixel (float *pixel, const float *data, int n) const |
Private Attributes | |
int | npeaks |
npeaks | the number of surrounding peaks allow to >= pixel values |
Definition at line 3125 of file processor.h.
string EMAN::PeakOnlyProcessor::get_desc | ( | ) | const [inline, virtual] |
Get the descrition of this specific processor.
This function must be overwritten by a subclass.
Implements EMAN::Processor.
Definition at line 3152 of file processor.h.
03153 { 03154 return "peak processor -> if npeaks or more surrounding values >= value, value->0"; 03155 }
string EMAN::PeakOnlyProcessor::get_name | ( | ) | const [inline, virtual] |
Get the processor's name.
Each processor is identified by a unique name.
Implements EMAN::Processor.
Definition at line 3128 of file processor.h.
References NAME.
03129 { 03130 return NAME; 03131 }
TypeDict EMAN::PeakOnlyProcessor::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 from EMAN::BoxStatProcessor.
Definition at line 3145 of file processor.h.
References EMAN::EMObject::INT, and EMAN::TypeDict::put().
03146 { 03147 TypeDict d; 03148 d.put("npeaks", EMObject::INT, "the number of surrounding peaks allow to >= pixel values"); 03149 return d; 03150 }
static Processor* EMAN::PeakOnlyProcessor::NEW | ( | ) | [inline, static] |
void EMAN::PeakOnlyProcessor::process_pixel | ( | float * | pixel, | |
const float * | data, | |||
int | n | |||
) | const [inline, protected, virtual] |
Implements EMAN::BoxStatProcessor.
Definition at line 3160 of file processor.h.
References npeaks.
03161 { 03162 int r = 0; 03163 03164 for (int i = 0; i < n; i++) 03165 { 03166 if (data[i] >= *pixel) { 03167 r++; 03168 } 03169 } 03170 03171 if (r > npeaks) 03172 { 03173 *pixel = 0; 03174 } 03175 }
void EMAN::PeakOnlyProcessor::set_params | ( | const Dict & | new_params | ) | [inline, virtual] |
Set the processor parameters using a key/value dictionary.
new_params | A dictionary containing the new parameters. |
Reimplemented from EMAN::Processor.
Definition at line 3136 of file processor.h.
References npeaks, and EMAN::Processor::params.
03137 { 03138 params = new_params; 03139 npeaks = params["npeaks"]; 03140 if (npeaks == 0) { 03141 npeaks = 1; 03142 } 03143 }
const string PeakOnlyProcessor::NAME = "mask.onlypeaks" [static] |
int EMAN::PeakOnlyProcessor::npeaks [private] |