/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 | Static Public Member Functions | Private Attributes
ROsFeeAdcMultiTool Class Reference

#include <ROsFeeAdcMultiTool.h>

Inheritance diagram for ROsFeeAdcMultiTool:
Inheritance graph
[legend]
Collaboration diagram for ROsFeeAdcMultiTool:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 ROsFeeAdcMultiTool (const std::string &type, const std::string &name, const IInterface *parent)
virtual ~ROsFeeAdcMultiTool ()
virtual StatusCode readoutWaveform (const std::vector< int > &adc_in, unsigned int first_cycle, unsigned int last_cycle, unsigned int stop_cycle, std::vector< int > &adc_out, std::vector< int > &adcCycle_out)
 Modify the event.
virtual StatusCode initialize ()
virtual StatusCode finalize ()

Static Public Member Functions

static const InterfaceID & interfaceID ()
 Retrieve interface ID.

Private Attributes

std::vector< int > m_roCycles

Detailed Description

Definition at line 26 of file ROsFeeAdcMultiTool.h.


Constructor & Destructor Documentation

ROsFeeAdcMultiTool::ROsFeeAdcMultiTool ( const std::string &  type,
const std::string &  name,
const IInterface *  parent 
)

Definition at line 8 of file ROsFeeAdcMultiTool.cc.

  : GaudiTool(type,name,parent)
{
  declareInterface< IROsFeeWaveformTool >(this) ;
  
  m_roCycles.push_back(0);
  m_roCycles.push_back(2);
  m_roCycles.push_back(3);
  m_roCycles.push_back(4);
  m_roCycles.push_back(6);
  m_roCycles.push_back(8);
  m_roCycles.push_back(10);
  m_roCycles.push_back(12);
  m_roCycles.push_back(14);
  m_roCycles.push_back(16);
  m_roCycles.push_back(18);
  declareProperty("ReadoutCycles",m_roCycles,
                  "Clock Cycles to readout relative to reference");
}
ROsFeeAdcMultiTool::~ROsFeeAdcMultiTool ( ) [virtual]

Definition at line 30 of file ROsFeeAdcMultiTool.cc.

{}

Member Function Documentation

StatusCode ROsFeeAdcMultiTool::readoutWaveform ( const std::vector< int > &  adc_in,
unsigned int  first_cycle,
unsigned int  last_cycle,
unsigned int  stop_cycle,
std::vector< int > &  adc_out,
std::vector< int > &  adcCycle_out 
) [virtual]

Modify the event.

Implements IROsFeeWaveformTool.

Definition at line 48 of file ROsFeeAdcMultiTool.cc.

{  

  verbose() << "reading out adc window [ " 
                << first_cycle << "," << last_cycle << ")" << endreq;
    
  std::vector<int>::iterator roIt = m_roCycles.begin(); 
  verbose() << "Adding: ";
  for(;roIt != m_roCycles.end();++roIt){  
    int point = (int)first_cycle + *roIt;
    if(point >= (int)first_cycle && point < (int)last_cycle){
      // ADC will be read with respect to end of readout
      adc_out.push_back(adc_in.at(point));
      adcCycle_out.push_back(stop_cycle - point);
      verbose() << " [" <<  int(stop_cycle)-point << " , " 
                <<  adc_in.at(point) << "]";
    }
  }
  verbose() << " To Readout." << endreq;
  
  return StatusCode::SUCCESS;
}
StatusCode ROsFeeAdcMultiTool::initialize ( ) [virtual]

Definition at line 32 of file ROsFeeAdcMultiTool.cc.

{
  debug() << "Reading Out [" ;
  std::vector<int>::iterator it;
  for(it=m_roCycles.begin();it!=m_roCycles.end();++it){
      debug() << " " << *it << " " ;
  }
  debug() << "]" << endreq;
  return StatusCode::SUCCESS;
}
StatusCode ROsFeeAdcMultiTool::finalize ( ) [virtual]

Definition at line 43 of file ROsFeeAdcMultiTool.cc.

{
  return StatusCode::SUCCESS;
}
const InterfaceID & IROsFeeWaveformTool::interfaceID ( ) [static, inherited]

Retrieve interface ID.

Definition at line 8 of file IROsFeeWaveformTool.cc.

{ 
    return IID_IROsFeeWaveformTool; 
}

Member Data Documentation

std::vector<int> ROsFeeAdcMultiTool::m_roCycles [private]

Definition at line 48 of file ROsFeeAdcMultiTool.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:17:06 for ReadoutSim by doxygen 1.7.4