#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 1829 of file processor.h.
|
Definition at line 1832 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 1861 of file processor.h. 01862 { 01863 return "f(x) = exp( x / low - high)"; 01864 }
|
|
Get the processor's name. Each processor is identified by a unique name.
Implements EMAN::Processor. Definition at line 1836 of file processor.h. 01837 {
01838 return NAME;
01839 }
|
|
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 1853 of file processor.h. References EMAN::TypeDict::put(). 01854 { 01855 TypeDict d; 01856 d.put("low", EMObject::FLOAT, "Pixels are divided by (low - high) prior to the exponential operation"); 01857 d.put("high", EMObject::FLOAT, "Pixels are divided by (low - high) prior to the exponential operation"); 01858 return d; 01859 }
|
|
Definition at line 1841 of file processor.h. 01842 { 01843 return new ExpProcessor(); 01844 }
|
|
'40' is used to avoid floating number overflow.
Implements EMAN::RealPixelProcessor. Definition at line 1872 of file processor.h. 01873 { 01874 float v = *x / low - high; 01875 if (v > 40) { 01876 v = 40; 01877 } 01878 *x = exp(v); 01879 }
|
|
Set the processor parameters using a key/value dictionary.
Reimplemented from EMAN::RealPixelProcessor. Definition at line 1846 of file processor.h. References EMAN::Dict::get(). 01847 { 01848 params = new_params; 01849 low = params.get("low"); 01850 high = params.get("high"); 01851 }
|
|
Definition at line 1883 of file processor.h. |
|
Definition at line 1882 of file processor.h. |
|
Definition at line 94 of file processor.cpp. |