/home/bes3soft/bes3soft/Boss/7.0.2/dist/7.0.2/Event/ZddEvent/ZddEvent-00-00-04/ZddEvent/RecZddChannel.h

Go to the documentation of this file.
00001 #ifndef Event_RecZddChannel_H
00002 #define Event_RecZddChannel_H
00003 
00004 #include "GaudiKernel/ObjectVector.h"
00005 #include "GaudiKernel/ContainedObject.h"
00006 #include <vector>
00007 #include <memory>  //std::pair
00008 
00009 extern const CLID & CLID_RecZddChannel;
00010 
00011 class RecZddChannel : virtual public ContainedObject
00012 {
00013     public :
00014 
00015         typedef std::pair<int, float> FragType;  //time and energy
00016 
00017         virtual const CLID& clID() const { return RecZddChannel::classID(); }
00018         static  const CLID& classID() { return CLID_RecZddChannel; }
00019 
00020         RecZddChannel();
00021         virtual ~RecZddChannel();
00022 
00023         RecZddChannel(const RecZddChannel&);
00024         RecZddChannel& operator=(const RecZddChannel&);
00025 
00026         int  channelId() const { return m_chId; }
00027         int  scanCode()  const { return m_scanCode; }
00028         int  baseLine()  const { return m_baseLine; }
00029         int  phase()     const { return m_phase; }
00030         const std::vector<FragType>& fragments() const { return m_frags; }
00031 
00032         void setChannelId(int chId) { m_chId = chId; }
00033         void setScanCode(int scanCode) { m_scanCode = scanCode; }
00034         void setBaseLine(int baseLine) { m_baseLine = baseLine; }
00035         void setPhase(int phase) { m_phase = phase; }
00036         void setFragments(const std::vector<FragType>& frags) { m_frags = frags; }
00037 
00038         void addFragment(int time, float energy) { m_frags.push_back(std::make_pair(time, energy)); }
00039         void addFragment(const FragType& fragment) { m_frags.push_back(fragment); }
00040 
00041     private :
00042 
00043         int  m_chId;
00044         int  m_scanCode;
00045         int  m_baseLine;
00046         int  m_phase;
00047         std::vector<FragType>  m_frags;
00048 };
00049 
00050 typedef ObjectVector<RecZddChannel> RecZddChannelCol;
00051 typedef RecZddChannelCol::iterator  RecZddChannelIterator;
00052 
00053 #endif

Generated on Tue Nov 29 23:11:44 2016 for BOSS_7.0.2 by  doxygen 1.4.7