#include <processor.h>
Inheritance diagram for EMAN::LinearXformProcessor:
Public Member Functions | |
LinearXformProcessor () | |
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.linear" |
Protected Member Functions | |
void | process_pixel (float *x) const |
Private Attributes | |
float | shift |
float | scale |
shift | The amount to shift pixel values by before scaling | |
scale | The scaling factor to be applied to pixel values |
Definition at line 1998 of file processor.h.
EMAN::LinearXformProcessor::LinearXformProcessor | ( | ) | [inline] |
string EMAN::LinearXformProcessor::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 2029 of file processor.h.
02030 { 02031 return "linear transform processor: f(x) = x * scale + shift. This is equivalent to a regular contrast stretching operation"; 02032 }
string EMAN::LinearXformProcessor::get_name | ( | ) | const [inline, virtual] |
Get the processor's name.
Each processor is identified by a unique name.
Implements EMAN::Processor.
Definition at line 2005 of file processor.h.
References NAME.
02006 { 02007 return NAME; 02008 }
TypeDict EMAN::LinearXformProcessor::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 2021 of file processor.h.
References EMAN::EMObject::FLOAT, and EMAN::TypeDict::put().
02022 { 02023 TypeDict d; 02024 d.put("shift", EMObject::FLOAT, "The amount to shift pixel values by before scaling"); 02025 d.put("scale", EMObject::FLOAT, "The scaling factor to be applied to pixel values"); 02026 return d; 02027 }
static Processor* EMAN::LinearXformProcessor::NEW | ( | ) | [inline, static] |
Definition at line 2009 of file processor.h.
References LinearXformProcessor().
02010 { 02011 return new LinearXformProcessor(); 02012 }
void EMAN::LinearXformProcessor::process_pixel | ( | float * | x | ) | const [inline, protected, virtual] |
void EMAN::LinearXformProcessor::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 2014 of file processor.h.
References EMAN::Dict::get(), EMAN::Processor::params, scale, and shift.
02015 { 02016 params = new_params; 02017 shift = params.get("shift"); 02018 scale = params.get("scale"); 02019 }
const string LinearXformProcessor::NAME = "math.linear" [static] |
float EMAN::LinearXformProcessor::scale [private] |
float EMAN::LinearXformProcessor::shift [private] |