Main Page   Modules   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members   Related Pages   Examples  

CTBmapNode.icc

Go to the documentation of this file.
00001 
00006 /*----------------------------------------------------------------------------*/
00007 /* C Tool Box: Designed and implemented by:                                   */
00008 /*    Walter F.J. Mueller   Gesellschaft fuer Schwerionenforschung (GSI)      */
00009 /*                          Planckstrasse 1, D-64291 Darmstadt, Germany       */
00010 /*                  Email:  W.F.J.Mueller@gsi.de                              */
00011 /*                  WWW:    http://www-kp3.gsi.de/www/kp3/people/mueller.html */
00012 /*------------------------------------------+---------------------------------*/
00013 
00019 //------------------------------------------+-----------------------------------
00021 
00022 template <class K, class V, class C>
00023 inline CTBmapNode<K,V,C>::CTBmapNode()
00024   : m_pair()
00025 {}
00026 
00027 //------------------------------------------+-----------------------------------
00029 
00030 template <class K, class V, class C>
00031 inline CTBmapNode<K,V,C>::CTBmapNode(const K& key)
00032   : m_pair(key)
00033 {}
00034 
00035 //------------------------------------------+-----------------------------------
00037 
00038 template <class K, class V, class C>
00039 inline CTBmapNode<K,V,C>::CTBmapNode(const K& key, const V& value)
00040   : m_pair(key,value)
00041 {}
00042 
00043 //------------------------------------------+-----------------------------------
00045 
00046 template <class K, class V, class C>
00047 inline CTBmapNode<K,V,C>::CTBmapNode(const CTBpair<const K,V>& pair)
00048   : m_pair(pair)
00049 {}
00050 
00051 //------------------------------------------+-----------------------------------
00053 
00054 template <class K, class V, class C>
00055 inline CTBmapNode<K,V,C>::~CTBmapNode()
00056 {}
00057 
00058 //------------------------------------------+-----------------------------------
00060 
00061 template <class K, class V, class C>
00062 inline CTBbtreeNode* CTBmapNode<K,V,C>::Clone() const
00063 {
00064   return new CTBmapNode(Key(),Value());
00065 }
00066 
00067 // Note:
00068 //  1. compilers (e.g. VMS) don't implement the ANSI resolution
00069 //     therefore the return type is CTBbtreeNode* rather than CTBmapNode<K,V,C>*
00070 //------------------------------------------+-----------------------------------
00072 
00073 template <class K, class V, class C>
00074 inline const K& CTBmapNode<K,V,C>::Key() const
00075 {
00076   return m_pair.Key();
00077 }
00078 
00079 //------------------------------------------+-----------------------------------
00081 
00082 template <class K, class V, class C>
00083 inline V& CTBmapNode<K,V,C>::Value()
00084 {
00085   return m_pair.Value();
00086 }
00087 
00088 //------------------------------------------+-----------------------------------
00090 
00091 template <class K, class V, class C>
00092 inline const V& CTBmapNode<K,V,C>::Value() const
00093 {
00094   return m_pair.Value();
00095 }
00096 
00097 //------------------------------------------+-----------------------------------
00099 
00100 template <class K, class V, class C>
00101 inline CTBpair<const K,V>& CTBmapNode<K,V,C>::Pair()
00102 {
00103   return m_pair;
00104 }
00105 
00106 //------------------------------------------+-----------------------------------
00108 
00109 template <class K, class V, class C>
00110 inline const CTBpair<const K,V>& CTBmapNode<K,V,C>::Pair() const
00111 {
00112   return m_pair;
00113 }
00114 
00115 //------------------------------------------+-----------------------------------
00117 
00118 template <class K, class V, class C>
00119 inline CTBmapNode<K,V,C>* CTBmapNode<K,V,C>::Up() const
00120 {
00121   return (Node*) CTBbtreeNode::Up();
00122 }
00123 
00124 //------------------------------------------+-----------------------------------
00126 
00127 template <class K, class V, class C>
00128 inline CTBmapNode<K,V,C>* CTBmapNode<K,V,C>::Left() const
00129 {
00130   return (Node*) CTBbtreeNode::Left();
00131 }
00132 
00133 //------------------------------------------+-----------------------------------
00135 
00136 template <class K, class V, class C>
00137 inline CTBmapNode<K,V,C>* CTBmapNode<K,V,C>::Right() const
00138 {
00139   return (Node*) CTBbtreeNode::Right();
00140 }
00141 
00142 //------------------------------------------+-----------------------------------
00144 
00145 template <class K, class V, class C>
00146 inline CTBmapNode<K,V,C>* CTBmapNode<K,V,C>::Next() const
00147 {
00148   return (Node*) CTBbtreeNode::Next();
00149 }
00150 
00151 //------------------------------------------+-----------------------------------
00153 
00154 template <class K, class V, class C>
00155 inline CTBmapNode<K,V,C>* CTBmapNode<K,V,C>::Prev() const
00156 {
00157   return (Node*) CTBbtreeNode::Prev();
00158 }
00159 
00160 //------------------------------------------+-----------------------------------
00162 
00163 template <class K, class V, class C>
00164 inline CTBmapNode<K,V,C>* CTBmapNode<K,V,C>::Skip(CTBint i_offset) const
00165 {
00166   return (Node*) CTBbtreeNode::Skip(i_offset);
00167 }

Generated at Fri Oct 24 18:11:29 2003 for CTBbase by doxygen1.2.9-20010812 written by Dimitri van Heesch, © 1997-2001