| Classes | Job Modules | Data Objects | Services | Algorithms | Tools | Packages | Directories | Tracs |

In This Package:

ElecFeeChannel.h

Go to the documentation of this file.
00001 
00002 //   **************************************************************************
00003 //   *                                                                        *
00004 //   *                      ! ! ! A T T E N T I O N ! ! !                     *
00005 //   *                                                                        *
00006 //   *  This file was created automatically by GaudiObjDesc, please do not    *
00007 //   *  delete it or edit it by hand.                                         *
00008 //   *                                                                        *
00009 //   *  If you want to change this file, first change the corresponding       *
00010 //   *  xml-file and rerun the tools from GaudiObjDesc (or run make if you    *
00011 //   *  are using it from inside a Gaudi-package).                            *
00012 //   *                                                                        *
00013 //   **************************************************************************
00014 
00015 #ifndef ElecEvent_ElecFeeChannel_H
00016 #define ElecEvent_ElecFeeChannel_H 1
00017 
00018 // Include files
00019 #include "Conventions/Electronics.h"
00020 #include "GaudiKernel/boost_allocator.h"
00021 #include "GaudiKernel/SerializeSTL.h"
00022 #include <ostream>
00023 
00024 // Forward declarations
00025 
00026 namespace DayaBay 
00027 {
00028 
00029   // Forward declarations
00030   using GaudiUtils::operator<<;
00031   
00032 
00042   class ElecFeeChannel
00043   {
00044   public:
00045 
00047     ElecFeeChannel() : m_hit(),
00048                        m_adcHigh(),
00049                        m_adcLow(),
00050                        m_energy(),
00051                        m_tdc() {}
00052   
00054     virtual ~ElecFeeChannel() {}
00055   
00057    virtual std::ostream& fillStream(std::ostream& s) const;
00058   
00061   const DayaBay::DigitalSignal& hit() const;
00062   
00065   void setHit(const DayaBay::DigitalSignal& value);
00066   
00069   const DayaBay::DigitalSignal& adcHigh() const;
00070   
00073   void setAdcHigh(const DayaBay::DigitalSignal& value);
00074   
00077   const DayaBay::DigitalSignal& adcLow() const;
00078   
00081   void setAdcLow(const DayaBay::DigitalSignal& value);
00082   
00085   const DayaBay::AnalogSignal& energy() const;
00086   
00089   DayaBay::AnalogSignal& energy();
00090   
00093   void setEnergy(const DayaBay::AnalogSignal& value);
00094   
00097   const std::vector<int>& tdc() const;
00098   
00101   void setTdc(const std::vector<int>& value);
00102   
00103   
00104   #ifndef GOD_NOALLOC
00106     static void* operator new ( size_t size )
00107     {
00108       return ( sizeof(ElecFeeChannel) == size ? 
00109                boost::singleton_pool<ElecFeeChannel, sizeof(ElecFeeChannel)>::malloc() :
00110                ::operator new(size) );
00111     }
00112   
00116     static void* operator new ( size_t size, void* pObj )
00117     {
00118       return ::operator new (size,pObj);
00119     }
00120   
00122     static void operator delete ( void* p )
00123     {
00124       boost::singleton_pool<ElecFeeChannel, sizeof(ElecFeeChannel)>::is_from(p) ?
00125       boost::singleton_pool<ElecFeeChannel, sizeof(ElecFeeChannel)>::free(p) :
00126       ::operator delete(p);
00127     }
00128   
00131     static void operator delete ( void* p, void* pObj )
00132     {
00133       ::operator delete (p, pObj);
00134     }
00135   #endif
00136   protected:
00137 
00138   private:
00139 
00140     DayaBay::DigitalSignal m_hit;     
00141     DayaBay::DigitalSignal m_adcHigh; 
00142     DayaBay::DigitalSignal m_adcLow;  
00143     DayaBay::AnalogSignal  m_energy;  
00144     std::vector<int>       m_tdc;     
00145   
00146   }; // class ElecFeeChannel
00147 
00148   inline std::ostream& operator<< (std::ostream& str, const ElecFeeChannel& obj)
00149   {
00150     return obj.fillStream(str);
00151   }
00152   
00153 } // namespace DayaBay;
00154 
00155 // -----------------------------------------------------------------------------
00156 // end of class
00157 // -----------------------------------------------------------------------------
00158 
00159 // Including forward declarations
00160 
00161 inline std::ostream& DayaBay::ElecFeeChannel::fillStream(std::ostream& s) const
00162 {
00163   s << "{ " << "hit :   " << m_hit << std::endl
00164             << "adcHigh :       " << m_adcHigh << std::endl
00165             << "adcLow :        " << m_adcLow << std::endl
00166             << "energy :        " << m_energy << std::endl
00167             << "tdc :   " << m_tdc << std::endl << " }";
00168   return s;
00169 }
00170 
00171 
00172 inline const DayaBay::DigitalSignal& DayaBay::ElecFeeChannel::hit() const 
00173 {
00174   return m_hit;
00175 }
00176 
00177 inline void DayaBay::ElecFeeChannel::setHit(const DayaBay::DigitalSignal& value) 
00178 {
00179   m_hit = value;
00180 }
00181 
00182 inline const DayaBay::DigitalSignal& DayaBay::ElecFeeChannel::adcHigh() const 
00183 {
00184   return m_adcHigh;
00185 }
00186 
00187 inline void DayaBay::ElecFeeChannel::setAdcHigh(const DayaBay::DigitalSignal& value) 
00188 {
00189   m_adcHigh = value;
00190 }
00191 
00192 inline const DayaBay::DigitalSignal& DayaBay::ElecFeeChannel::adcLow() const 
00193 {
00194   return m_adcLow;
00195 }
00196 
00197 inline void DayaBay::ElecFeeChannel::setAdcLow(const DayaBay::DigitalSignal& value) 
00198 {
00199   m_adcLow = value;
00200 }
00201 
00202 inline const DayaBay::AnalogSignal& DayaBay::ElecFeeChannel::energy() const 
00203 {
00204   return m_energy;
00205 }
00206 
00207 inline DayaBay::AnalogSignal& DayaBay::ElecFeeChannel::energy() 
00208 {
00209   return m_energy;
00210 }
00211 
00212 inline void DayaBay::ElecFeeChannel::setEnergy(const DayaBay::AnalogSignal& value) 
00213 {
00214   m_energy = value;
00215 }
00216 
00217 inline const std::vector<int>& DayaBay::ElecFeeChannel::tdc() const 
00218 {
00219   return m_tdc;
00220 }
00221 
00222 inline void DayaBay::ElecFeeChannel::setTdc(const std::vector<int>& value) 
00223 {
00224   m_tdc = value;
00225 }
00226 
00227 
00228 #endif 
| Classes | Job Modules | Data Objects | Services | Algorithms | Tools | Packages | Directories | Tracs |

Generated on Mon Apr 11 20:32:32 2011 for ElecEvent by doxygen 1.4.7