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

In This Package:

ElecPulse.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_ElecPulse_H
00016 #define ElecEvent_ElecPulse_H 1
00017 
00018 // Include files
00019 #include "Conventions/Electronics.h"
00020 #include "GaudiKernel/boost_allocator.h"
00021 #include <ostream>
00022 
00023 // Forward declarations
00024 
00025 namespace DayaBay 
00026 {
00027 
00028   // Forward declarations
00029   class ElecPulseCollection;
00030   class SimHit;
00031   
00032 
00042   class ElecPulse
00043   {
00044   public:
00045 
00047     ElecPulse() : m_pc(0),
00048                   m_time(0.0),
00049                   m_channelId(0),
00050                   m_amplitude(0.0),
00051                   m_ancestor(0),
00052                   m_type(0) {}
00053   
00055     virtual ~ElecPulse() {}
00056   
00058    virtual std::ostream& fillStream(std::ostream& s) const;
00059   
00062   const DayaBay::ElecPulseCollection* pc() const;
00063   
00066   void setPc(DayaBay::ElecPulseCollection* value);
00067   
00070   double time() const;
00071   
00074   void setTime(double value);
00075   
00078   const DayaBay::ElecChannelId& channelId() const;
00079   
00082   void setChannelId(const DayaBay::ElecChannelId& value);
00083   
00086   float amplitude() const;
00087   
00090   void setAmplitude(float value);
00091   
00094   const DayaBay::SimHit* ancestor() const;
00095   
00098   DayaBay::SimHit* ancestor();
00099   
00102   void setAncestor(DayaBay::SimHit* value);
00103   
00106   int type() const;
00107   
00110   void setType(int value);
00111   
00112   
00113   #ifndef GOD_NOALLOC
00114 
00115     static void* operator new ( size_t size )
00116     {
00117       return ( sizeof(ElecPulse) == size ? 
00118                boost::singleton_pool<ElecPulse, sizeof(ElecPulse)>::malloc() :
00119                ::operator new(size) );
00120     }
00121   
00125     static void* operator new ( size_t size, void* pObj )
00126     {
00127       return ::operator new (size,pObj);
00128     }
00129   
00131     static void operator delete ( void* p )
00132     {
00133       boost::singleton_pool<ElecPulse, sizeof(ElecPulse)>::is_from(p) ?
00134       boost::singleton_pool<ElecPulse, sizeof(ElecPulse)>::free(p) :
00135       ::operator delete(p);
00136     }
00137   
00140     static void operator delete ( void* p, void* pObj )
00141     {
00142       ::operator delete (p, pObj);
00143     }
00144   #endif
00145   protected:
00146 
00147   private:
00148 
00149     DayaBay::ElecPulseCollection* m_pc;        
00150     double                        m_time;      
00151     DayaBay::ElecChannelId        m_channelId; 
00152     float                         m_amplitude; 
00153     DayaBay::SimHit*              m_ancestor;  
00154     int                           m_type;      
00155   
00156   }; // class ElecPulse
00157 
00158   inline std::ostream& operator<< (std::ostream& str, const ElecPulse& obj)
00159   {
00160     return obj.fillStream(str);
00161   }
00162   
00163 } // namespace DayaBay;
00164 
00165 // -----------------------------------------------------------------------------
00166 // end of class
00167 // -----------------------------------------------------------------------------
00168 
00169 // Including forward declarations
00170 #include "ElecPulseCollection.h"
00171 #include "Event/SimHit.h"
00172 
00173 
00174 inline std::ostream& DayaBay::ElecPulse::fillStream(std::ostream& s) const
00175 {
00176   s << "{ " << "pc :    " << m_pc << std::endl
00177             << "time :  " << (float)m_time << std::endl
00178             << "channelId :     " << m_channelId << std::endl
00179             << "amplitude :     " << m_amplitude << std::endl
00180             << "ancestor :      " << m_ancestor << std::endl
00181             << "type :  " << m_type << std::endl << " }";
00182   return s;
00183 }
00184 
00185 
00186 inline const DayaBay::ElecPulseCollection* DayaBay::ElecPulse::pc() const 
00187 {
00188   return m_pc;
00189 }
00190 
00191 inline void DayaBay::ElecPulse::setPc(DayaBay::ElecPulseCollection* value) 
00192 {
00193   m_pc = value;
00194 }
00195 
00196 inline double DayaBay::ElecPulse::time() const 
00197 {
00198   return m_time;
00199 }
00200 
00201 inline void DayaBay::ElecPulse::setTime(double value) 
00202 {
00203   m_time = value;
00204 }
00205 
00206 inline const DayaBay::ElecChannelId& DayaBay::ElecPulse::channelId() const 
00207 {
00208   return m_channelId;
00209 }
00210 
00211 inline void DayaBay::ElecPulse::setChannelId(const DayaBay::ElecChannelId& value) 
00212 {
00213   m_channelId = value;
00214 }
00215 
00216 inline float DayaBay::ElecPulse::amplitude() const 
00217 {
00218   return m_amplitude;
00219 }
00220 
00221 inline void DayaBay::ElecPulse::setAmplitude(float value) 
00222 {
00223   m_amplitude = value;
00224 }
00225 
00226 inline const DayaBay::SimHit* DayaBay::ElecPulse::ancestor() const 
00227 {
00228   return m_ancestor;
00229 }
00230 
00231 inline DayaBay::SimHit* DayaBay::ElecPulse::ancestor() 
00232 {
00233   return m_ancestor;
00234 }
00235 
00236 inline void DayaBay::ElecPulse::setAncestor(DayaBay::SimHit* value) 
00237 {
00238   m_ancestor = value;
00239 }
00240 
00241 inline int DayaBay::ElecPulse::type() const 
00242 {
00243   return m_type;
00244 }
00245 
00246 inline void DayaBay::ElecPulse::setType(int value) 
00247 {
00248   m_type = value;
00249 }
00250 
00251 
00252 #endif ///ElecEvent_ElecPulse_H
| Classes | Job Modules | Data Objects | Services | Algorithms | Tools | Packages | Directories | Tracs |

Generated on Fri May 16 2014 10:05:49 for ElecEvent by doxygen 1.7.4