cafe::EventMultiSplitter Class Reference

#include <EventMultiSplitter.hpp>

Inheritance diagram for cafe::EventMultiSplitter:

cafe::Controller cafe::Processor List of all members.

Public Member Functions

 EventMultiSplitter (const char *name)
 EventMultiSplitter.

 ~EventMultiSplitter (void)
 ~EventMultiSplitter

bool processEvent (cafe::Event &event)
 processEvent

void finish (void)
 finish


Private Member Functions

 ClassDef (EventMultiSplitter, 1)
void processPermutation (double weight, Event &event)
 processPermutation


Private Attributes

cafe::PermuterBase_perm
cafe::Stat_local_stat

Constructor & Destructor Documentation

cafe::EventMultiSplitter::EventMultiSplitter const char *  name  ) 
 

EventMultiSplitter.

Load in the objects that are going to do all the work

Grab the permuter object and name.

Create the new stat object that we will be using!

Definition at line 27 of file EventMultiSplitter.cpp.

References _local_stat, _perm, cafe::Stat::begin(), cafe::Config::get(), and cafe::Processor::name().

cafe::EventMultiSplitter::~EventMultiSplitter void   ) 
 

~EventMultiSplitter

Get rid of the permuter object.

Definition at line 72 of file EventMultiSplitter.cpp.

References _local_stat, and _perm.


Member Function Documentation

cafe::EventMultiSplitter::ClassDef EventMultiSplitter  ,
[private]
 

void cafe::EventMultiSplitter::finish void   )  [virtual]
 

finish

Make sure the stat processor gets a chance!

Reimplemented from cafe::Controller.

Definition at line 112 of file EventMultiSplitter.cpp.

References _local_stat, and cafe::Stat::finish().

bool cafe::EventMultiSplitter::processEvent cafe::Event event  )  [virtual]
 

processEvent

For each possible permutation of the event, run our sub processors.

Hook up our stat guy!

Build the callback and do the permutations!

Unhook our local guy!

Reimplemented from cafe::Controller.

Definition at line 83 of file EventMultiSplitter.cpp.

References _local_stat, _perm, cafe::Stat::chain(), cafe::PermuterBase::permuteEvent(), and cafe::Stat::unchain().

void cafe::EventMultiSplitter::processPermutation double  weight,
Event event
[private]
 

processPermutation

Do one of the permutations!

Get the statics set up

Put in our weight

Call the sub processors!

Let the statistics know it is end of event!

Definition at line 123 of file EventMultiSplitter.cpp.

References _local_stat, cafe::Stat::applyWeight(), cafe::EventBase::clear(), cafe::Stat::eventEnd(), cafe::Stat::inheritWeights(), cafe::Processor::name(), and cafe::Stat::processEvent().

Referenced by cafe::EventMultiSplitter::callback::operator()().


Member Data Documentation

cafe::Stat* cafe::EventMultiSplitter::_local_stat [private]
 

Definition at line 45 of file EventMultiSplitter.hpp.

Referenced by EventMultiSplitter(), finish(), processEvent(), processPermutation(), and ~EventMultiSplitter().

cafe::PermuterBase* cafe::EventMultiSplitter::_perm [private]
 

Definition at line 44 of file EventMultiSplitter.hpp.

Referenced by EventMultiSplitter(), processEvent(), and ~EventMultiSplitter().


The documentation for this class was generated from the following files:
Generated on Thu Apr 3 04:14:27 2008 for CAF by doxygen 1.3.4