Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members

EMAN::PeakOnlyProcessor Class Reference

peak processor -> if npeaks or more surrounding values >= value, value->0 More...

#include <processor.h>

Inheritance diagram for EMAN::PeakOnlyProcessor:

[legend]
Collaboration diagram for EMAN::PeakOnlyProcessor:
[legend]
List of all members.

Public Member Functions

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

ProcessorNEW ()

Static Public Attributes

const string NAME = "mask.onlypeaks"

Protected Member Functions

void process_pixel (float *pixel, const float *data, int n) const

Private Attributes

int npeaks

Detailed Description

peak processor -> if npeaks or more surrounding values >= value, value->0

Parameters:
npeaks the number of surrounding peaks allow to >= pixel values

Definition at line 3126 of file processor.h.


Member Function Documentation

string EMAN::PeakOnlyProcessor::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 3153 of file processor.h.

03154                 {
03155                         return "peak processor -> if npeaks or more surrounding values >= value, value->0";
03156                 }

string EMAN::PeakOnlyProcessor::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 3129 of file processor.h.

03130                 {
03131                         return NAME;
03132                 }

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

Definition at line 3146 of file processor.h.

References EMAN::TypeDict::put().

03147                 {
03148                         TypeDict d;
03149                         d.put("npeaks", EMObject::INT, "the number of surrounding peaks allow to >= pixel values");
03150                         return d;
03151                 }

Processor* EMAN::PeakOnlyProcessor::NEW  )  [inline, static]
 

Definition at line 3133 of file processor.h.

03134                 {
03135                         return new PeakOnlyProcessor();
03136                 }

void EMAN::PeakOnlyProcessor::process_pixel float *  pixel,
const float *  data,
int  n
const [inline, protected, virtual]
 

Implements EMAN::BoxStatProcessor.

Definition at line 3161 of file processor.h.

References data.

03162                 {
03163                         int r = 0;
03164 
03165                         for (int i = 0; i < n; i++)
03166                         {
03167                                 if (data[i] >= *pixel) {
03168                                         r++;
03169                                 }
03170                         }
03171 
03172                         if (r > npeaks)
03173                         {
03174                                 *pixel = 0;
03175                         }
03176                 }

void EMAN::PeakOnlyProcessor::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::Processor.

Definition at line 3137 of file processor.h.

03138                 {
03139                         params = new_params;
03140                         npeaks = params["npeaks"];
03141                         if (npeaks == 0) {
03142                                 npeaks = 1;
03143                         }
03144                 }


Member Data Documentation

const string PeakOnlyProcessor::NAME = "mask.onlypeaks" [static]
 

Definition at line 120 of file processor.cpp.

int EMAN::PeakOnlyProcessor::npeaks [private]
 

Definition at line 3178 of file processor.h.


The documentation for this class was generated from the following files:
Generated on Fri Apr 30 15:39:22 2010 for EMAN2 by  doxygen 1.3.9.1