Humble Framework for SkyOS


Main Page | Modules | Class Hierarchy | Alphabetical List | Data Structures | Directories | File List | Data Fields | Globals | Related Pages

HBase.h

Go to the documentation of this file.
00001 /****************************************************************************
00002 **
00003 **  $Header: /SkyOS.root/pig/Humble/HBase.h 4     12/23/04 1:34p Neusel $
00004 **
00005 ****************************************************************************/
00021 #ifndef HBASE_H
00022     #define HBASE_H
00023 
00028 class HObj
00029     {
00030     static StringPtr    ClassName(void) { return "HObj"; }
00031 /*  ----------------------------------------------------------------------
00032     CTOR / DTOR
00033     ----------------------------------------------------------------------  */
00034 protected:
00035     HObj(void)  
00036         { /* EMPTY CTOR */ }
00037     virtual
00038     ~HObj(void)
00039         { /* EMPTY DTOR */ }
00040 
00041     TEST_ONLY(friend class HTest);
00042     };
00052 class HObjNoCopy : HObj
00053     {
00054     typedef HObj        base_class;
00055     static StringPtr    ClassName(void) { return "HObjNoCopy"; }
00056 /*  ----------------------------------------------------------------------
00057     CTOR / DTOR
00058     ----------------------------------------------------------------------  */
00059 protected:
00060     HObjNoCopy(void)    
00061         { /* EMPTY CTOR */ }
00062     
00063     virtual             
00064     ~HObjNoCopy(void)
00065         { /* EMPTY DTOR */ }
00066 private:
00070                         HObjNoCopy(const HObjNoCopy &);
00074     const HObjNoCopy &  operator=(const HObjNoCopy &);
00075     };
00081 class HID
00082     {
00083 /*  ----------------------------------------------------------------------
00084     VARIABLES
00085     ----------------------------------------------------------------------  */
00086 protected:
00087     int32               m_id;           
00088 /*  ----------------------------------------------------------------------
00089     CTOR / DTOR
00090     ----------------------------------------------------------------------  */
00091 public:
00092     HID(int32 id = 0) : m_id(id)
00093         { /* EMPTY CTOR */ }
00094     
00095     virtual
00096     ~HID(void)
00097         { /* EMPTY DTOR */ }
00098 /*  ----------------------------------------------------------------------
00099     GETTERS / SETTERS
00100     ----------------------------------------------------------------------  */
00105     inline int32        GetID(void) const
00106                             { return m_id; }
00112     int32               SetID(int32 id)
00113                             {
00114                             if (id)
00115                                 std::swap(m_id, id);
00116                             return id;
00117                             }
00118     };
00119 
00120 #endif  // HBASE_H
00121 /****************************************************************************
00122 **
00123 **  $History: HBase.h $
00124  * 
00125  * *****************  Version 4  *****************
00126  * User: Neusel       Date: 12/23/04   Time: 1:34p
00127  * Updated in $/SkyOS.root/pig/Humble
00128  * Posted as HFramework-debug 20041223
00129  * 
00130  * *****************  Version 3  *****************
00131  * User: Neusel       Date: 12/08/04   Time: 5:06p
00132  * Updated in $/SkyOS.root/pig/Humble
00133  * 20041208
00134  * 
00135  * *****************  Version 2  *****************
00136  * User: Neusel       Date: 11/30/04   Time: 1:01p
00137  * Updated in $/SkyOS.root/pig/Humble
00138  * Released as HUMBLE_VER 20041130.
00139  * 
00140  * *****************  Version 1  *****************
00141  * User: Neusel       Date: 11/23/04   Time: 8:24a
00142  * Created in $/SkyOS.root/pig/Humble
00143 **
00144 **  -------------------------------------------------------------------------
00145 **
00146 **  End of HBase.h
00147 **
00148 ****************************************************************************/