#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 2049 of file processor.h.
|
Definition at line 2052 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 2081 of file processor.h. 02082 { 02083 return "f(x) = exp( x / low - high)"; 02084 }
|
|
Get the processor's name. Each processor is identified by a unique name.
Implements EMAN::Processor. Definition at line 2056 of file processor.h. 02057 {
02058 return NAME;
02059 }
|
|
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 2073 of file processor.h. References EMAN::TypeDict::put(). 02074 { 02075 TypeDict d; 02076 d.put("low", EMObject::FLOAT, "Pixels are divided by (low - high) prior to the exponential operation"); 02077 d.put("high", EMObject::FLOAT, "Pixels are divided by (low - high) prior to the exponential operation"); 02078 return d; 02079 }
|
|
Definition at line 2061 of file processor.h. 02062 { 02063 return new ExpProcessor(); 02064 }
|
|
'40' is used to avoid floating number overflow.
Implements EMAN::RealPixelProcessor. Definition at line 2092 of file processor.h. 02093 { 02094 float v = *x / low - high; 02095 if (v > 40) { 02096 v = 40; 02097 } 02098 *x = exp(v); 02099 }
|
|
Set the processor parameters using a key/value dictionary.
Reimplemented from EMAN::RealPixelProcessor. Definition at line 2066 of file processor.h. References EMAN::Dict::get(). 02067 { 02068 params = new_params; 02069 low = params.get("low"); 02070 high = params.get("high"); 02071 }
|
|
Definition at line 2103 of file processor.h. |
|
Definition at line 2102 of file processor.h. |
|
Definition at line 99 of file processor.cpp. |