CFEL - ASG Software Suite  2.5.0
CASS
Public Member Functions | Protected Types | Protected Member Functions | Protected Attributes | List of all members
cass::pp312 Class Reference

calculate the absolute squared fft of an histogram More...

#include <fft.h>

+ Inheritance diagram for cass::pp312:
+ Collaboration diagram for cass::pp312:

Public Member Functions

 pp312 (const name_t &name)
 constructor More...
 
virtual void process (const CASSEvent &evt, result_t &result)
 process the event More...
 
virtual void loadSettings (size_t)
 load the settings of this pp More...
 
- Public Member Functions inherited from cass::Processor
 Processor (const name_t &name)
 constructor More...
 
virtual ~Processor ()
 virtual destructor More...
 
virtual void processEvent (const CASSEvent &event)
 process the event More...
 
virtual const result_tresult (const CASSEvent::id_t eventid=0)
 retrieve a result for a given id. More...
 
virtual void releaseEvent (const CASSEvent &event)
 tell the list that the result for event can be overwritten More...
 
result_t::shared_pointer resultCopy (const uint64_t eventid)
 retrieve histogram for id More...
 
virtual void load ()
 load the general settings More...
 
virtual void aboutToQuit ()
 function that will be called when the processor is about to be deleted More...
 
const names_tdependencies ()
 Define all processors keys a processor depends on. More...
 
void clearDependencies ()
 clear the dependenies More...
 
void clearHistograms ()
 clear the histograms More...
 
virtual void processCommand (std::string command)
 process command in pp More...
 
const name_t name () const
 retrieve the name of this processor More...
 
bool hide () const
 retrieve the hide flag of this processor More...
 
const std::string & comment () const
 retrieve the comment of this processor More...
 

Protected Types

typedef std::pair< int, int > shape_t
 define the shape More...
 

Protected Member Functions

void fft1d (result_t::const_iterator in, result_t::iterator out)
 calculate the absolute square fft for 1d data More...
 
void fft2d (result_t::const_iterator in, result_t::iterator out)
 calculate the absolute square fft for 2d data More...
 
- Protected Member Functions inherited from cass::Processor
virtual void createHistList (result_t::shared_pointer result)
 create result list. More...
 
void setupGeneral ()
 general setup of the processor More...
 
bool setupCondition (bool defaultConditionType=true)
 setup the condition. More...
 
shared_pointer setupDependency (const std::string &depVarName, const name_t &name="")
 setup the dependecy. More...
 

Protected Attributes

shared_pointer _hist
 pp containing histogram to calculate the autocorrelation for More...
 
size_t _Nx
 the shape of the incomming histogram More...
 
size_t _Ny
 
fftw_plan _fftw_plan
 fftw plan - stores fftw optimization data for given data type+size More...
 
int _fft_tmp_padding
 info about temporary memory for the fftw calculation More...
 
std::tr1::function< void(result_t::const_iterator, result_t::iterator)> _func
 function to call for processing More...
 
- Protected Attributes inherited from cass::Processor
const name_t _name
 the processors name More...
 
bool _hide
 flag to tell whether this pp should be hidden in the dropdown list More...
 
std::string _comment
 optional comment that one can add to a processor. More...
 
CachedList _resultList
 the list of results More...
 
names_t _dependencies
 the list of dependencies More...
 
shared_pointer _condition
 pointer to the processor that will contain the condition More...
 

Additional Inherited Members

- Public Types inherited from cass::Processor
typedef std::tr1::shared_ptr< Processorshared_pointer
 a shared pointer of this More...
 
typedef std::string name_t
 define the name type More...
 
typedef std::list< name_tnames_t
 define the list of names More...
 
typedef CachedList::item_type result_t
 define the results More...
 
typedef CachedList::item_sp resultsp_t
 define the shared pointer to the result More...
 

Detailed Description

calculate the absolute squared fft of an histogram

details

Available PostProcessors:
"312": calculate the absolute square fft of an histogram
User definable Parameters:
Processor/%name%/{InputName}
processor name containing the histogram whos fft should be calculated.
Author
Stephan Kassemeyer
Lutz Foucar

Definition at line 58 of file fft.h.

Member Typedef Documentation

typedef std::pair<int,int> cass::pp312::shape_t
protected

define the shape

Definition at line 79 of file fft.h.

Constructor & Destructor Documentation

pp312::pp312 ( const name_t name)

constructor

Parameters
namethe name of this Processor

Definition at line 28 of file fft.cpp.

References loadSettings().

Member Function Documentation

void pp312::fft1d ( result_t::const_iterator  in,
result_t::iterator  out 
)
protected

calculate the absolute square fft for 1d data

Parameters
inthe incomming data
outwhere the fft will be written to

Definition at line 82 of file fft.cpp.

References _fft_tmp_padding, _fftw_plan, and _Nx.

Referenced by loadSettings().

void pp312::fft2d ( result_t::const_iterator  in,
result_t::iterator  out 
)
protected

calculate the absolute square fft for 2d data

Parameters
inthe incomming data
outwhere the fft will be written to

Definition at line 115 of file fft.cpp.

References _fft_tmp_padding, _fftw_plan, _Nx, and _Ny.

Referenced by loadSettings().

void pp312::loadSettings ( size_t  )
virtual
void pp312::process ( const CASSEvent evt,
result_t result 
)
virtual

process the event

Parameters
evtthe event that contains the id
resultthe histogram that will contain the result of the process

Reimplemented from cass::Processor.

Definition at line 182 of file fft.cpp.

References _func, _hist, cass::Result< T >::begin(), cass::CASSEvent::id(), and cass::Result< T >::lock.

Member Data Documentation

int cass::pp312::_fft_tmp_padding
protected

info about temporary memory for the fftw calculation

Definition at line 109 of file fft.h.

Referenced by fft1d(), fft2d(), and loadSettings().

fftw_plan cass::pp312::_fftw_plan
protected

fftw plan - stores fftw optimization data for given data type+size

Definition at line 106 of file fft.h.

Referenced by fft1d(), fft2d(), and loadSettings().

std::tr1::function<void(result_t::const_iterator, result_t::iterator)> cass::pp312::_func
protected

function to call for processing

Definition at line 112 of file fft.h.

Referenced by loadSettings(), and process().

shared_pointer cass::pp312::_hist
protected

pp containing histogram to calculate the autocorrelation for

Definition at line 98 of file fft.h.

Referenced by loadSettings(), and process().

size_t cass::pp312::_Nx
protected

the shape of the incomming histogram

Definition at line 101 of file fft.h.

Referenced by fft1d(), fft2d(), and loadSettings().

size_t cass::pp312::_Ny
protected

Definition at line 102 of file fft.h.

Referenced by fft2d(), and loadSettings().


The documentation for this class was generated from the following files: