Main Page   Namespace List   Class Hierarchy   Compound List   File List   Namespace Members   Compound Members   File Members  

VolumeID.h

Go to the documentation of this file.
00001 // $Header: /nfs/slac/g/glast/ground/cvs/GlastEvent/GlastEvent/Utilities/VolumeID.h,v 1.4 2001/04/18 19:07:26 igable Exp $
00002 #ifndef GlastEvent_VolumeID_H
00003 #define GlastEvent_VolumeID_H 1
00004 
00005 // If you wish to introduce the namespace `GlastEvent', uncomment
00006 // the lines commented as `NameSpace'.
00007 
00008 
00009 // Include files
00010 #include <iostream>
00011 #include "GaudiKernel/StreamBuffer.h"
00012 #include "GlastEvent/TopLevel/Definitions.h"
00013 
00022 //namespace GlastEvent { // NameSpace
00023 
00024 class VolumeID {
00025 public:
00026     typedef unsigned long  ID;
00028     VolumeID(){};
00029     VolumeID( ID value ){ m_volumeID = value; };
00031     ~VolumeID(){};
00032 
00033     VolumeID operator= ( ID value );
00034 
00036     ID volumeID() const;
00038     void setVolumeID( unsigned long value );
00039 
00040 
00042     friend StreamBuffer& operator<< ( StreamBuffer& s, const VolumeID& obj ){
00043         return s << obj.m_volumeID;
00044     }
00046     friend StreamBuffer& operator>> ( StreamBuffer& s, VolumeID& obj ){
00047         return s >> obj.m_volumeID;
00048     }
00049 
00051     friend std::ostream& operator<< ( std::ostream& s, const VolumeID& obj ){
00052         return obj.fillStream(s);
00053     }
00055     std::ostream& fillStream( std::ostream& s ) const{
00056         return s << "class VolumeID : "
00057           << GlastEventField( GlastEvent::field4 )
00058           << m_volumeID;
00059     }
00060 
00061 
00062 private:
00063     ID  m_volumeID;
00064 };
00065 
00066 //} // NameSpace GlastEvent
00067 
00068 
00069 
00070 // Inline codes
00071 
00072 //namespace GlastEvent { // NameSpace
00073 
00074 
00075 inline VolumeID VolumeID::operator= ( VolumeID::ID value ){
00076     return VolumeID(value);
00077 }
00078 
00079 
00081 inline VolumeID::ID VolumeID::volumeID() const
00082 {
00083     return m_volumeID;
00084 }
00085 
00086 
00088 inline void VolumeID::setVolumeID( VolumeID::ID value )
00089 {
00090     m_volumeID = value;
00091 }
00092 
00093 //} // NameSpace GlastEvent
00094 
00095 #endif // GlastEvent_VolumeID_H

Generated at Wed Nov 21 12:22:50 2001 by doxygen1.2.3 written by Dimitri van Heesch, © 1997-2000