AlgStripListFromSliceList Class Reference

#include <AlgStripListFromSliceList.h>

Inheritance diagram for AlgStripListFromSliceList:
AlgBase

List of all members.

Public Member Functions

 AlgStripListFromSliceList ()
virtual ~AlgStripListFromSliceList ()
virtual void RunAlg (AlgConfig &ac, CandHandle &ch, CandContext &cx)
virtual void Trace (const char *c) const

Detailed Description

Definition at line 16 of file AlgStripListFromSliceList.h.


Constructor & Destructor Documentation

AlgStripListFromSliceList::AlgStripListFromSliceList (  ) 

Definition at line 49 of file AlgStripListFromSliceList.cxx.

00050 {
00051 }

AlgStripListFromSliceList::~AlgStripListFromSliceList (  )  [virtual]

Definition at line 54 of file AlgStripListFromSliceList.cxx.

00055 {
00056 }


Member Function Documentation

void AlgStripListFromSliceList::RunAlg ( AlgConfig ac,
CandHandle ch,
CandContext cx 
) [virtual]

Algorithm to make a complete strip list from the strip list in each CandSlice.

Implements AlgBase.

Definition at line 61 of file AlgStripListFromSliceList.cxx.

References CandContext::GetDataIn(), CandHandle::GetDaughterIterator(), Msg::kWarning, and MSG.

00064 {
00068 
00069   assert(candHandle.InheritsFrom("CandStripListHandle"));
00070   CandStripListHandle &stripList = dynamic_cast<CandStripListHandle &>(candHandle);
00071 
00072    assert(candContext.GetDataIn());
00073    if (!(candContext.GetDataIn()->InheritsFrom("CandSliceListHandle"))) {
00074      MSG("Chop",Msg::kWarning ) << "Data into AlgStripListFromSliceList is not a slice list." << std::endl;
00075    }
00076    
00077    const CandSliceListHandle *sliceList = 
00078      dynamic_cast<const CandSliceListHandle*>(candContext.GetDataIn());
00079    assert(sliceList);
00080 
00081    // Loop over all slices:
00082    CandSliceHandleItr sliceItr(sliceList->GetDaughterIterator());
00083    while (CandSliceHandle* slice = sliceItr()) {
00084      
00085      // Loop over all strips:
00086      CandStripHandleItr stripItr(slice->GetDaughterIterator());
00087      while( CandStripHandle* strip = stripItr() ) {
00088        stripList.AddDaughterLink(*strip);
00089      }     
00090    }
00091 }

void AlgStripListFromSliceList::Trace ( const char *  c  )  const [virtual]

Reimplemented from AlgBase.

Definition at line 94 of file AlgStripListFromSliceList.cxx.

00095 {
00096 }


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

Generated on 2 Nov 2017 for loon by  doxygen 1.6.1