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 TagEvent_TagData_H 00016 #define TagEvent_TagData_H 1 00017 00018 // Include files 00019 #include "GaudiKernel/boost_allocator.h" 00020 #include <ostream> 00021 00022 // Forward declarations 00023 00024 namespace DayaBay 00025 { 00026 00027 // Forward declarations 00028 class TagHeader; 00029 00030 00040 class TagData 00041 { 00042 public: 00043 00045 TagData() : m_header(0), 00046 m_likelihood(0.0) {} 00047 00049 virtual ~TagData() {} 00050 00052 virtual std::ostream& fillStream(std::ostream& s) const; 00053 00056 const DayaBay::TagHeader* header() const; 00057 00060 void setHeader(DayaBay::TagHeader* value); 00061 00064 float likelihood() const; 00065 00068 void setLikelihood(float value); 00069 00070 00071 #ifndef GOD_NOALLOC 00073 static void* operator new ( size_t size ) 00074 { 00075 return ( sizeof(TagData) == size ? 00076 boost::singleton_pool<TagData, sizeof(TagData)>::malloc() : 00077 ::operator new(size) ); 00078 } 00079 00083 static void* operator new ( size_t size, void* pObj ) 00084 { 00085 return ::operator new (size,pObj); 00086 } 00087 00089 static void operator delete ( void* p ) 00090 { 00091 boost::singleton_pool<TagData, sizeof(TagData)>::is_from(p) ? 00092 boost::singleton_pool<TagData, sizeof(TagData)>::free(p) : 00093 ::operator delete(p); 00094 } 00095 00098 static void operator delete ( void* p, void* pObj ) 00099 { 00100 ::operator delete (p, pObj); 00101 } 00102 #endif 00103 protected: 00104 00105 private: 00106 00107 DayaBay::TagHeader* m_header; 00108 float m_likelihood; 00109 00110 }; // class TagData 00111 00112 inline std::ostream& operator<< (std::ostream& str, const TagData& obj) 00113 { 00114 return obj.fillStream(str); 00115 } 00116 00117 } // namespace DayaBay; 00118 00119 // ----------------------------------------------------------------------------- 00120 // end of class 00121 // ----------------------------------------------------------------------------- 00122 00123 // Including forward declarations 00124 #include "Event/TagHeader.h" 00125 00126 00127 inline std::ostream& DayaBay::TagData::fillStream(std::ostream& s) const 00128 { 00129 s << "{ " << "header : " << m_header << std::endl 00130 << "likelihood : " << m_likelihood << std::endl << " }"; 00131 return s; 00132 } 00133 00134 00135 inline const DayaBay::TagHeader* DayaBay::TagData::header() const 00136 { 00137 return m_header; 00138 } 00139 00140 inline void DayaBay::TagData::setHeader(DayaBay::TagHeader* value) 00141 { 00142 m_header = value; 00143 } 00144 00145 inline float DayaBay::TagData::likelihood() const 00146 { 00147 return m_likelihood; 00148 } 00149 00150 inline void DayaBay::TagData::setLikelihood(float value) 00151 { 00152 m_likelihood = value; 00153 } 00154 00155 00156 #endif