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

In This Package:

ElecHeader.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_ElecHeader_H
00016 #define ElecEvent_ElecHeader_H 1
00017 
00018 // Include files
00019 #include "Event/HeaderObject.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 ElecPulseHeader;
00030   class ElecCrateHeader;
00031   
00032   
00033   // Class ID definition
00034   static const CLID CLID_ElecHeader = 51401;
00035   
00036   // Namespace for locations in TDS
00037   namespace ElecHeaderLocation {
00038     static const std::string& Default = "/Event/Elec/ElecHeader";
00039   }
00040   
00041 
00051   class ElecHeader: public HeaderObject
00052   {
00053   public:
00054 
00056   static const std::string& defaultLocation() { return ElecHeaderLocation::Default; }
00057   virtual const std::string& defLoc() const { return ElecHeaderLocation::Default; }
00058   
00060     ElecHeader() : m_pulseHeader(0),
00061                    m_crateHeader(0) {}
00062   
00064   ~ElecHeader();
00065   
00066     // Retrieve pointer to class definition structure
00067     virtual const CLID& clID() const;
00068     static const CLID& classID();
00069   
00071     std::ostream& fillStream(std::ostream& s) const;
00072   
00075   const DayaBay::ElecPulseHeader* pulseHeader() const;
00076   
00079   void setPulseHeader(DayaBay::ElecPulseHeader* value);
00080   
00083   const DayaBay::ElecCrateHeader* crateHeader() const;
00084   
00087   void setCrateHeader(DayaBay::ElecCrateHeader* value);
00088   
00089   
00090   #ifndef GOD_NOALLOC
00091 
00092     static void* operator new ( size_t size )
00093     {
00094       return ( sizeof(ElecHeader) == size ? 
00095                boost::singleton_pool<ElecHeader, sizeof(ElecHeader)>::malloc() :
00096                ::operator new(size) );
00097     }
00098   
00102     static void* operator new ( size_t size, void* pObj )
00103     {
00104       return ::operator new (size,pObj);
00105     }
00106   
00108     static void operator delete ( void* p )
00109     {
00110       boost::singleton_pool<ElecHeader, sizeof(ElecHeader)>::is_from(p) ?
00111       boost::singleton_pool<ElecHeader, sizeof(ElecHeader)>::free(p) :
00112       ::operator delete(p);
00113     }
00114   
00117     static void operator delete ( void* p, void* pObj )
00118     {
00119       ::operator delete (p, pObj);
00120     }
00121   #endif
00122   protected:
00123 
00124   private:
00125 
00126     DayaBay::ElecPulseHeader* m_pulseHeader; 
00127     DayaBay::ElecCrateHeader* m_crateHeader; 
00128   
00129   }; // class ElecHeader
00130 
00131   inline std::ostream& operator<< (std::ostream& str, const ElecHeader& obj)
00132   {
00133     return obj.fillStream(str);
00134   }
00135   
00136 } // namespace DayaBay;
00137 
00138 // -----------------------------------------------------------------------------
00139 // end of class
00140 // -----------------------------------------------------------------------------
00141 
00142 // Including forward declarations
00143 #include "ElecPulseHeader.h"
00144 #include "ElecCrateHeader.h"
00145 
00146 
00147 inline DayaBay::ElecHeader::~ElecHeader() 
00148 {
00149 
00150            delete m_pulseHeader;
00151            delete m_crateHeader;
00152          
00153 }
00154 
00155 inline const CLID& DayaBay::ElecHeader::clID() const
00156 {
00157   return DayaBay::ElecHeader::classID();
00158 }
00159 
00160 inline const CLID& DayaBay::ElecHeader::classID()
00161 {
00162   return CLID_ElecHeader;
00163 }
00164 
00165 inline const DayaBay::ElecPulseHeader* DayaBay::ElecHeader::pulseHeader() const 
00166 {
00167   return m_pulseHeader;
00168 }
00169 
00170 inline void DayaBay::ElecHeader::setPulseHeader(DayaBay::ElecPulseHeader* value) 
00171 {
00172   m_pulseHeader = value;
00173 }
00174 
00175 inline const DayaBay::ElecCrateHeader* DayaBay::ElecHeader::crateHeader() const 
00176 {
00177   return m_crateHeader;
00178 }
00179 
00180 inline void DayaBay::ElecHeader::setCrateHeader(DayaBay::ElecCrateHeader* value) 
00181 {
00182   m_crateHeader = value;
00183 }
00184 
00185 
00186 #endif ///ElecEvent_ElecHeader_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