/search.css" rel="stylesheet" type="text/css"/> /search.js">
| Classes | Job Modules | Data Objects | Services | Algorithms | Tools | Packages | Directories | Tracs |

In This Package:

Public Member Functions | Private Attributes
DybGenPrune Class Reference

Prune away GenEvent data. More...

#include <DybGenPrune.h>

Collaboration diagram for DybGenPrune:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 DybGenPrune (const std::string &name, ISvcLocator *pSvcLocator)
virtual ~DybGenPrune ()
virtual StatusCode initialize ()
virtual StatusCode execute ()
virtual StatusCode finalize ()

Private Attributes

std::string m_location
 Property: 'Location'.
int m_maxVertices
 Property: MaxVertices.
std::string m_genPruneName
 GenPruneTool.
IGenPruneToolm_genPrune

Detailed Description

Prune away GenEvent data.

With this algorithm, one can prune away GenEvent data

bv@bnl.gov Mon Jun 1 15:28:08 2009

The real content is moved to GenPruneTool. So Fifteen algorithm can use it. Zhe Wang Apr. 12 2010

Definition at line 28 of file DybGenPrune.h.


Constructor & Destructor Documentation

DybGenPrune::DybGenPrune ( const std::string &  name,
ISvcLocator *  pSvcLocator 
)

Definition at line 7 of file DybGenPrune.cc.

    : GaudiAlgorithm(name,pSvcLocator)
    , m_genPrune(0)
{
    declareProperty("MaxVertices",m_maxVertices=0,
                    "Maximum number of vertices to survive the pruning");
    declareProperty("Location",m_location = DayaBay::GenHeader::defaultLocation(),
                    "Location in TES in which to look for the GenHeader");    
    declareProperty("GenPruneName",m_genPruneName = "GenPruneTool", "Name of GenHeader pruner");
}
DybGenPrune::~DybGenPrune ( ) [virtual]

Definition at line 18 of file DybGenPrune.cc.

{
}

Member Function Documentation

StatusCode DybGenPrune::initialize ( ) [virtual]

Be careful: Here it will replace the tool setting.

Definition at line 22 of file DybGenPrune.cc.

{
    this->GaudiAlgorithm::initialize();

    m_genPrune = tool<IGenPruneTool>(m_genPruneName);
    if( !m_genPrune ) {
      error() << "Failed to retrive GenPruneTool" << endreq;
      return StatusCode::FAILURE;
    }

    m_genPrune->setMaxVertices( m_maxVertices );

    return StatusCode::SUCCESS;
}
StatusCode DybGenPrune::execute ( ) [virtual]

Definition at line 39 of file DybGenPrune.cc.

{

    DayaBay::GenHeader* gh = get<DayaBay::GenHeader>(m_location);
    if (!gh) {
        warning() << "No GenHeader found at " << m_location 
                  << ", my work here is already done."
                  << endreq;
        return StatusCode::SUCCESS;
    }
    
    m_genPrune->prune( gh );

    return StatusCode::SUCCESS;
}
StatusCode DybGenPrune::finalize ( ) [virtual]

Definition at line 55 of file DybGenPrune.cc.

{

    return this->GaudiAlgorithm::finalize();
}

Member Data Documentation

std::string DybGenPrune::m_location [private]

Property: 'Location'.

The location in the TES in which to look for GenHeader. Default is set in GenHeader class.

Definition at line 44 of file DybGenPrune.h.

Property: MaxVertices.

The maximum number of vertices allowed to remain in the GenEvent. A value less than zero will be interpreted as to not touch the data. For non-negative values, if the number of vertices are less than or equal to the MaxVertices the GenHeader is left along, otherwise the GenEvent is deleted and GenHeader's pointer to GenEvent is zeroed.

Definition at line 53 of file DybGenPrune.h.

std::string DybGenPrune::m_genPruneName [private]

GenPruneTool.

Definition at line 56 of file DybGenPrune.h.

Definition at line 57 of file DybGenPrune.h.


The documentation for this class was generated from the following files:
| Classes | Job Modules | Data Objects | Services | Algorithms | Tools | Packages | Directories | Tracs |

Generated on Fri May 16 2014 10:09:44 for DybAlg by doxygen 1.7.4