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

In This Package:

TESDemoNeutron.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 TESDemoData_TESDemoNeutron_H
00016 #define TESDemoData_TESDemoNeutron_H 1
00017 
00018 // Include files
00019 #include "Context/TimeStamp.h"
00020 #include "Event/TemporalDataObject.h"
00021 #include "Event/TESDemoReadout.h"
00022 #include "GaudiKernel/boost_allocator.h"
00023 #include "GaudiKernel/SmartRef.h"
00024 #include <ostream>
00025 
00026 // Forward declarations
00027 
00028 namespace DayaBay 
00029 {
00030 
00031   // Forward declarations
00032 
00042   class TESDemoNeutron: public TemporalDataObject
00043   {
00044   public:
00045 
00047   TESDemoNeutron(const TimeStamp& timeStamp,
00048                    const DayaBay::TESDemoReadout* readout);
00049   
00051     TESDemoNeutron() : m_timeStamp() {}
00052   
00054   virtual ~TESDemoNeutron();
00055   
00057    virtual std::ostream& fillStream(std::ostream& s) const;
00058   
00060     void setReadout(const SmartRef<DayaBay::TESDemoReadout>& value);
00061   
00063     void setReadout(const DayaBay::TESDemoReadout* value);
00064   
00067   const TimeStamp& timeStamp() const;
00068   
00071   void setTimeStamp(const TimeStamp& value);
00072   
00075   const DayaBay::TESDemoReadout* readout() const;
00076   
00077   
00078   #ifndef GOD_NOALLOC
00079 
00080     static void* operator new ( size_t size )
00081     {
00082       return ( sizeof(TESDemoNeutron) == size ? 
00083                boost::singleton_pool<TESDemoNeutron, sizeof(TESDemoNeutron)>::malloc() :
00084                ::operator new(size) );
00085     }
00086   
00090     static void* operator new ( size_t size, void* pObj )
00091     {
00092       return ::operator new (size,pObj);
00093     }
00094   
00096     static void operator delete ( void* p )
00097     {
00098       boost::singleton_pool<TESDemoNeutron, sizeof(TESDemoNeutron)>::is_from(p) ?
00099       boost::singleton_pool<TESDemoNeutron, sizeof(TESDemoNeutron)>::free(p) :
00100       ::operator delete(p);
00101     }
00102   
00105     static void operator delete ( void* p, void* pObj )
00106     {
00107       ::operator delete (p, pObj);
00108     }
00109   #endif
00110   protected:
00111 
00112   private:
00113 
00114     TimeStamp                         m_timeStamp; 
00115     SmartRef<DayaBay::TESDemoReadout> m_readout;   
00116   
00117   }; // class TESDemoNeutron
00118 
00119   inline std::ostream& operator<< (std::ostream& str, const TESDemoNeutron& obj)
00120   {
00121     return obj.fillStream(str);
00122   }
00123   
00124 } // namespace DayaBay;
00125 
00126 // -----------------------------------------------------------------------------
00127 // end of class
00128 // -----------------------------------------------------------------------------
00129 
00130 // Including forward declarations
00131 
00132 inline DayaBay::TESDemoNeutron::TESDemoNeutron(const TimeStamp& timeStamp,
00133                                                const DayaBay::TESDemoReadout* readout) 
00134 {
00135 
00136           setTimeStamp(timeStamp);
00137                 setReadout(readout);
00138           setEarliest(timeStamp);
00139           setLatest(timeStamp);
00140       
00141 }
00142 
00143 inline DayaBay::TESDemoNeutron::~TESDemoNeutron() 
00144 {
00145 
00146           // Takes care of reference counting
00147                 setReadout(0);
00148         
00149 }
00150 
00151 inline std::ostream& DayaBay::TESDemoNeutron::fillStream(std::ostream& s) const
00152 {
00153   TemporalDataObject::fillStream(s);
00154   s << "{ " << "timeStamp :     " << m_timeStamp << std::endl << " }";
00155   return s;
00156 }
00157 
00158 
00159 inline const TimeStamp& DayaBay::TESDemoNeutron::timeStamp() const 
00160 {
00161   return m_timeStamp;
00162 }
00163 
00164 inline void DayaBay::TESDemoNeutron::setTimeStamp(const TimeStamp& value) 
00165 {
00166   m_timeStamp = value;
00167 }
00168 
00169 inline const DayaBay::TESDemoReadout* DayaBay::TESDemoNeutron::readout() const 
00170 {
00171   return m_readout;
00172 }
00173 
00174 
00175 #endif ///TESDemoData_TESDemoNeutron_H
| Classes | Job Modules | Data Objects | Services | Algorithms | Tools | Packages | Directories | Tracs |

Generated on Fri May 16 2014 10:08:47 for TESDemoData by doxygen 1.7.4