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

In This Package:

RegistrationSequence.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 BaseEvent_RegistrationSequence_H
00016 #define BaseEvent_RegistrationSequence_H 1
00017 
00018 // Include files
00019 #include "Event/TemporalDataObject.h"
00020 #include "DybKernel/IRegistrationSequence.h"
00021 #include "GaudiKernel/boost_allocator.h"
00022 #include <vector>
00023 #include <ostream>
00024 
00025 // Forward declarations
00026 
00027 namespace DayaBay 
00028 {
00029 
00030   // Forward declarations
00031   
00032   // Class ID definition
00033   static const CLID CLID_RegistrationSequence = 51103;
00034   
00035   // Namespace for locations in TDS
00036   namespace RegistrationSequenceLocation {
00037     static const std::string& Default = "/Event/RegistrationSequence";
00038   }
00039   
00040 
00050   class RegistrationSequence: public TemporalDataObject, virtual public IRegistrationSequence
00051   {
00052   public:
00053 
00055   static const std::string& defaultLocation() { return RegistrationSequenceLocation::Default; }
00056   virtual const std::string& defLoc() const { return RegistrationSequenceLocation::Default; }
00057   
00059     typedef IRegistrationSequence::Registration Registration;
00061     typedef IRegistrationSequence::Registrations Registrations;
00063     typedef IRegistrationSequence::size_type size_type;
00064   
00066   RegistrationSequence();
00067   
00069   virtual ~RegistrationSequence();
00070   
00071     // Retrieve pointer to class definition structure
00072     virtual const CLID& clID() const;
00073     static const CLID& classID();
00074   
00076     virtual bool empty() const;
00077   
00079     virtual size_type size() const;
00080   
00082     virtual const Registrations& registrations() const;
00083   
00085     virtual Registrations registration(const std::string& path) const;
00086   
00088     virtual Registration* registration(const DataObject* dobj) const;
00089   
00091     void insert(IRegistry* registry,
00092                 DataObject* object,
00093                 bool marked);
00094   
00096     void setRegistrations(Registrations* value);
00097   
00099     std::ostream& fillStream(std::ostream& s) const;
00100   
00101   
00102   #ifndef GOD_NOALLOC
00104     static void* operator new ( size_t size )
00105     {
00106       return ( sizeof(RegistrationSequence) == size ? 
00107                boost::singleton_pool<RegistrationSequence, sizeof(RegistrationSequence)>::malloc() :
00108                ::operator new(size) );
00109     }
00110   
00114     static void* operator new ( size_t size, void* pObj )
00115     {
00116       return ::operator new (size,pObj);
00117     }
00118   
00120     static void operator delete ( void* p )
00121     {
00122       boost::singleton_pool<RegistrationSequence, sizeof(RegistrationSequence)>::is_from(p) ?
00123       boost::singleton_pool<RegistrationSequence, sizeof(RegistrationSequence)>::free(p) :
00124       ::operator delete(p);
00125     }
00126   
00129     static void operator delete ( void* p, void* pObj )
00130     {
00131       ::operator delete (p, pObj);
00132     }
00133   #endif
00134   protected:
00135 
00136   private:
00137 
00138     Registrations* m_registrations; 
00139   
00140   }; // class RegistrationSequence
00141 
00142   inline std::ostream& operator<< (std::ostream& str, const RegistrationSequence& obj)
00143   {
00144     return obj.fillStream(str);
00145   }
00146   
00147 } // namespace DayaBay;
00148 
00149 // -----------------------------------------------------------------------------
00150 // end of class
00151 // -----------------------------------------------------------------------------
00152 
00153 // Including forward declarations
00154 
00155 inline const CLID& DayaBay::RegistrationSequence::clID() const
00156 {
00157   return DayaBay::RegistrationSequence::classID();
00158 }
00159 
00160 inline const CLID& DayaBay::RegistrationSequence::classID()
00161 {
00162   return CLID_RegistrationSequence;
00163 }
00164 
00165 
00166 #endif 
| Classes | Job Modules | Data Objects | Services | Algorithms | Tools | Packages | Directories | Tracs |

Generated on Mon Apr 11 20:18:02 2011 for BaseEvent by doxygen 1.4.7