#include <processor.h>
Inheritance diagram for EMAN::SigmaProcessor:
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 = "math.sigma" |
Protected Member Functions | |
void | process_pixel (float *x) const |
Private Attributes | |
float | value1 |
float | value2 |
value1 | A number reflecting total standard deviations in the right direction | |
value2 | A number reflecting total standard deviations in the left direction |
Definition at line 2219 of file processor.h.
string EMAN::SigmaProcessor::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 2246 of file processor.h.
02247 { 02248 return "f(x) = mean if x<(mean-v2*sigma) or x>(mean+v1*sigma); else f(x) = x;"; 02249 }
string EMAN::SigmaProcessor::get_name | ( | ) | const [inline, virtual] |
Get the processor's name.
Each processor is identified by a unique name.
Implements EMAN::Processor.
Definition at line 2222 of file processor.h.
References NAME.
02223 { 02224 return NAME; 02225 }
TypeDict EMAN::SigmaProcessor::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::Processor.
Definition at line 2238 of file processor.h.
References EMAN::EMObject::FLOAT, and EMAN::TypeDict::put().
02239 { 02240 TypeDict d; 02241 d.put("value1", EMObject::FLOAT, "A number reflecting total standard deviations in the right direction"); 02242 d.put("value2", EMObject::FLOAT, "A number reflecting total standard deviations in the left direction"); 02243 return d; 02244 }
static Processor* EMAN::SigmaProcessor::NEW | ( | ) | [inline, static] |
void EMAN::SigmaProcessor::process_pixel | ( | float * | x | ) | const [inline, protected, virtual] |
Implements EMAN::RealPixelProcessor.
Definition at line 2254 of file processor.h.
References EMAN::RealPixelProcessor::mean, EMAN::RealPixelProcessor::sigma, value1, and value2.
02255 { 02256 if (*x < (mean - value2 * sigma) || *x > (mean + value1 * sigma)) 02257 { 02258 *x = mean; 02259 } 02260 }
void EMAN::SigmaProcessor::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::RealPixelProcessor.
Definition at line 2231 of file processor.h.
References EMAN::Dict::get(), EMAN::Processor::params, value1, and value2.
02232 { 02233 params = new_params; 02234 value1 = params.get("value1"); 02235 value2 = params.get("value2"); 02236 }
const string SigmaProcessor::NAME = "math.sigma" [static] |
float EMAN::SigmaProcessor::value1 [private] |
float EMAN::SigmaProcessor::value2 [private] |