/* xblnknod.h XBase64 Software Library Copyright (c) 1997,2003,2014,2022 Gary A Kunkel The xb64 software library is covered under the terms of the GPL Version 3, 2007 license. Email Contact: XDB-devel@lists.sourceforge.net XDB-users@lists.sourceforge.net */ #ifndef __XB_XBLNKNOD_H__ #define __XB_XBLNKNOD_H__ #ifdef XB_LINKLIST_SUPPORT namespace xb{ template class XBDLLEXPORT xbLinkListNode { public: xbLinkListNode( const xbNodeType & ); xbLinkListNode( const xbNodeType &, const xbString & ); xbNodeType GetKey() const; xbString &GetData(); xbLinkListNode *GetNextNode() const; xbLinkListNode *GetPrevNode() const; void SetNextNode( xbLinkListNode *llNext ); void SetPrevNode( xbLinkListNode *llPrev ); private: xbNodeType ntKey; xbString sData; xbLinkListNode *llNext; xbLinkListNode *llPrev; }; template xbLinkListNode::xbLinkListNode( const xbNodeType &key ){ ntKey = key; llNext = NULL; llPrev = NULL; } template xbLinkListNode::xbLinkListNode( const xbNodeType &key, const xbString &s ){ ntKey = key; sData = s; llNext = NULL; llPrev = NULL; } template xbNodeType xbLinkListNode::GetKey() const { return ntKey; } template xbString &xbLinkListNode::GetData(){ return sData; } template xbLinkListNode *xbLinkListNode::GetNextNode() const { return llNext; } template xbLinkListNode *xbLinkListNode::GetPrevNode() const { return llPrev; } template void xbLinkListNode::SetNextNode( xbLinkListNode *lln ){ llNext = lln; } template void xbLinkListNode::SetPrevNode( xbLinkListNode *llp ){ llPrev = llp; } } // namespace #endif // XB_LINKLIST_SUPPORT #endif // XB_XBLNKNOD_H__