EMAN::FiniteProcessor Class Reference

f(x) = f(x) if f(x) is finite | to if f(x) is not finite More...

#include <processor.h>

Inheritance diagram for EMAN::FiniteProcessor:

Inheritance graph
[legend]
Collaboration diagram for EMAN::FiniteProcessor:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 FiniteProcessor ()
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 ProcessorNEW ()

Static Public Attributes

static const string NAME = "math.finite"

Protected Member Functions

void process_pixel (float *x) const

Private Attributes

float to

Detailed Description

f(x) = f(x) if f(x) is finite | to if f(x) is not finite

Parameters:
to Pixels which are not finite will be set to this value

Definition at line 2065 of file processor.h.


Constructor & Destructor Documentation

EMAN::FiniteProcessor::FiniteProcessor (  )  [inline]

Definition at line 2068 of file processor.h.

Referenced by NEW().

02068                                          :to(0)
02069                         {
02070                         }


Member Function Documentation

string EMAN::FiniteProcessor::get_desc (  )  const [inline, virtual]

Get the descrition of this specific processor.

This function must be overwritten by a subclass.

Returns:
The description of this processor.

Implements EMAN::Processor.

Definition at line 2095 of file processor.h.

02096                         {
02097                                 return "f(x) = f(x) if f(x) is finite | to if f(x) is not finite";
02098                         }

string EMAN::FiniteProcessor::get_name (  )  const [inline, virtual]

Get the processor's name.

Each processor is identified by a unique name.

Returns:
The processor's name.

Implements EMAN::Processor.

Definition at line 2072 of file processor.h.

References NAME.

02073                         {
02074                                 return NAME;
02075                         }

TypeDict EMAN::FiniteProcessor::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.

Returns:
A dictionary containing the parameter info.

Reimplemented from EMAN::Processor.

Definition at line 2088 of file processor.h.

References EMAN::EMObject::FLOAT, and EMAN::TypeDict::put().

02089                         {
02090                                 TypeDict d;
02091                                 d.put("to", EMObject::FLOAT, "Pixels which are not finite will be set to this value");
02092                                 return d;
02093                         }

static Processor* EMAN::FiniteProcessor::NEW (  )  [inline, static]

Definition at line 2077 of file processor.h.

References FiniteProcessor().

02078                         {
02079                                 return new FiniteProcessor();
02080                         }

void FiniteProcessor::process_pixel ( float *  x  )  const [protected, virtual]

Implements EMAN::RealPixelProcessor.

Definition at line 480 of file processor.cpp.

References EMAN::Util::goodf(), and to.

00481 {
00482         if ( !Util::goodf(x) ) {
00483                 *x = to;
00484         }
00485 }

void EMAN::FiniteProcessor::set_params ( const Dict new_params  )  [inline, virtual]

Set the processor parameters using a key/value dictionary.

Parameters:
new_params A dictionary containing the new parameters.

Reimplemented from EMAN::RealPixelProcessor.

Definition at line 2082 of file processor.h.

References EMAN::Dict::has_key(), EMAN::Processor::params, and to.

02083                         {
02084                                 if (new_params.has_key("to") )
02085                                         to = params["to"];
02086                         }


Member Data Documentation

const string FiniteProcessor::NAME = "math.finite" [static]

Definition at line 2100 of file processor.h.

Referenced by get_name().

float EMAN::FiniteProcessor::to [private]

Definition at line 2108 of file processor.h.

Referenced by process_pixel(), and set_params().


The documentation for this class was generated from the following files:
Generated on Tue May 25 17:16:42 2010 for EMAN2 by  doxygen 1.4.7