#include <processor.h>
Inheritance diagram for EMAN::ExpProcessor:
Public Member Functions | |
ExpProcessor () | |
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 | |
Processor * | NEW () |
Static Public Attributes | |
const string | NAME = "math.exp" |
Protected Member Functions | |
void | process_pixel (float *x) const |
'40' is used to avoid floating number overflow. | |
Private Attributes | |
float | low |
float | high |
low | Pixels are divided by (low - high) prior to the exponential operation | |
high | Pixels are divided by (low - high) prior to the exponential operation |
Definition at line 2051 of file processor.h.
|
Definition at line 2054 of file processor.h.
|
|
Get the descrition of this specific processor. This function must be overwritten by a subclass.
Implements EMAN::Processor. Definition at line 2083 of file processor.h. 02084 { 02085 return "f(x) = exp( x / low - high)"; 02086 }
|
|
Get the processor's name. Each processor is identified by a unique name.
Implements EMAN::Processor. Definition at line 2058 of file processor.h. 02059 {
02060 return NAME;
02061 }
|
|
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 2075 of file processor.h. References EMAN::TypeDict::put(). 02076 { 02077 TypeDict d; 02078 d.put("low", EMObject::FLOAT, "Pixels are divided by (low - high) prior to the exponential operation"); 02079 d.put("high", EMObject::FLOAT, "Pixels are divided by (low - high) prior to the exponential operation"); 02080 return d; 02081 }
|
|
Definition at line 2063 of file processor.h. 02064 { 02065 return new ExpProcessor(); 02066 }
|
|
'40' is used to avoid floating number overflow.
Implements EMAN::RealPixelProcessor. Definition at line 2094 of file processor.h. 02095 { 02096 float v = *x / low - high; 02097 if (v > 40) { 02098 v = 40; 02099 } 02100 *x = exp(v); 02101 }
|
|
Set the processor parameters using a key/value dictionary.
Reimplemented from EMAN::RealPixelProcessor. Definition at line 2068 of file processor.h. References EMAN::Dict::get(). 02069 { 02070 params = new_params; 02071 low = params.get("low"); 02072 high = params.get("high"); 02073 }
|
|
Definition at line 2105 of file processor.h. |
|
Definition at line 2104 of file processor.h. |
|
Definition at line 99 of file processor.cpp. |