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

Operation on result with value. More...

#include <operations.h>

+ Inheritance diagram for cass::pp2:
+ Collaboration diagram for cass::pp2:

Public Member Functions

 pp2 (const name_t &name)
 constructor More...
 
virtual void loadSettings (size_t)
 load the settings of this pp More...
 
virtual void process (const CASSEvent &evt, result_t &)
 process event 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::tr1::function< result_t::value_t(result_t::value_t)> unaryoperation_t
 define the unary operation More...
 
typedef std::tr1::function< result_t::value_t(result_t::value_t, result_t::value_t)> binaryoperation_t
 define the binary operation More...
 
typedef std::tr1::function< result_t::value_t(const CASSEvent::id_t &)> valueRetrieval_t
 define how to get the value More...
 
typedef std::tr1::function< unaryoperation_t(result_t::value_t)> setParamPos_t
 define how to get the right parameter position More...
 

Protected Member Functions

unaryoperation_t ValAtFirst (result_t::value_t val)
 bind the value to the first parameter of the binaryoperation More...
 
unaryoperation_t ValAtSecond (result_t::value_t val)
 bind the value to the second parameter of the binaryoperation More...
 
result_t::value_t valueFromPP (const CASSEvent::id_t &id)
 retrieve value from Processor More...
 
result_t::value_t valueFromConst (const CASSEvent::id_t &evt)
 retrieve value constant 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
 processor containing input result More...
 
shared_pointer _valuePP
 processor containing 0D value for the unary operation More...
 
result_t::value_t _value
 the value for the unary operation More...
 
binaryoperation_t _op
 the operand More...
 
setParamPos_t _setParamPos
 function to set the value to the requested parameter position More...
 
valueRetrieval_t _retrieveValue
 function to retrieve the value for the unary operation 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

Operation on result with value.

Available PostProcessors:
"2":Operation on result with value
See also
Processor for a list of all commonly available cass.ini settings.
User definable Parameters:

Processor/%name%/{InputName}
the processor name that contains the result to operate on. Needs to be implemented, because default is "Unknown", which is invalid.

Processor/%name%/{Value}
Either the constant value for the operation or a 0D Processor containing the value for the operation. Default is 1

Processor/%name%/{Operation}
Default is "+". Possible values are:

  • "+": Use add as operation
  • "-": Use minus as operation
  • "/": Use divide as operation
  • "*": Use multiply as operation
  • "AND": Use logical AND as operation
  • "OR": Use logical OR as operation
  • ">": Use greater as operation
  • ">=": Use greater or equal as operation
  • "<": Use less than as operation
  • "<=": Use less or equal as operation
  • "==": Use equal to as operation
  • "!=": Use not equal to as operation

Processor/%name%/{ValuePos}
Chooses where in the operation the Value or the value taken from the 0D Processor will be. Default is "first". Possible values are:

  • first: Value will be first operand
  • second: Value will be second operand
Author
Lutz Foucar

Definition at line 121 of file operations.h.

Member Typedef Documentation

define the binary operation

Definition at line 139 of file operations.h.

typedef std::tr1::function<unaryoperation_t(result_t::value_t)> cass::pp2::setParamPos_t
protected

define how to get the right parameter position

Definition at line 145 of file operations.h.

typedef std::tr1::function<result_t::value_t(result_t::value_t)> cass::pp2::unaryoperation_t
protected

define the unary operation

Definition at line 136 of file operations.h.

typedef std::tr1::function<result_t::value_t(const CASSEvent::id_t &)> cass::pp2::valueRetrieval_t
protected

define how to get the value

Definition at line 142 of file operations.h.

Constructor & Destructor Documentation

pp2::pp2 ( const name_t name)

constructor

Definition at line 178 of file operations.cpp.

References loadSettings().

Member Function Documentation

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

process event

only do the operation on the datasize to avoid doing the operation on the statistics

Reimplemented from cass::Processor.

Definition at line 282 of file operations.cpp.

References _hist, _retrieveValue, _setParamPos, cass::Result< T >::begin(), cass::Result< T >::datasize(), cass::CASSEvent::id(), input, and cass::Result< T >::lock.

pp2::unaryoperation_t pp2::ValAtFirst ( result_t::value_t  val)
protected

bind the value to the first parameter of the binaryoperation

Returns
function call where value is bound to the fist parameter

Definition at line 260 of file operations.cpp.

References _op.

Referenced by loadSettings().

pp2::unaryoperation_t pp2::ValAtSecond ( result_t::value_t  val)
protected

bind the value to the second parameter of the binaryoperation

Returns
function call where value is bound to the second parameter

Definition at line 265 of file operations.cpp.

References _op.

Referenced by loadSettings().

float pp2::valueFromConst ( const CASSEvent::id_t evt)
protected

retrieve value constant

Returns
_value
Parameters
evtignored

Definition at line 270 of file operations.cpp.

References _value.

Referenced by loadSettings().

float pp2::valueFromPP ( const CASSEvent::id_t id)
protected

retrieve value from Processor

Returns
value stored in _valuePP
Parameters
idid of the event for which the value should be returned

Definition at line 275 of file operations.cpp.

References _valuePP, and value.

Referenced by loadSettings().

Member Data Documentation

shared_pointer cass::pp2::_hist
protected

processor containing input result

Definition at line 175 of file operations.h.

Referenced by loadSettings(), and process().

binaryoperation_t cass::pp2::_op
protected

the operand

Definition at line 184 of file operations.h.

Referenced by loadSettings(), ValAtFirst(), and ValAtSecond().

valueRetrieval_t cass::pp2::_retrieveValue
protected

function to retrieve the value for the unary operation

Definition at line 190 of file operations.h.

Referenced by loadSettings(), and process().

setParamPos_t cass::pp2::_setParamPos
protected

function to set the value to the requested parameter position

Definition at line 187 of file operations.h.

Referenced by loadSettings(), and process().

result_t::value_t cass::pp2::_value
protected

the value for the unary operation

Definition at line 181 of file operations.h.

Referenced by loadSettings(), and valueFromConst().

shared_pointer cass::pp2::_valuePP
protected

processor containing 0D value for the unary operation

Definition at line 178 of file operations.h.

Referenced by loadSettings(), and valueFromPP().


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