]> jfr.im git - irc/gameservirc.git/blame_incremental - gameserv/listnode.h
added items to the tavern.dat, added the filename option to the config file
[irc/gameservirc.git] / gameserv / listnode.h
... / ...
CommitLineData
1#ifndef LISTNODE_H
2#define LISTNODE_H
3
4#include "aClient.h"
5
6template<class T> class List;
7
8
9template <class T>
10class ListNode {
11 friend class List<T>;
12 public:
13 ListNode(const T &);
14 ListNode(T &);
15 T *getData();
16 void setData(const T &);
17 void setPtr( T * );
18 void setNewPtr( T * );
19 ListNode<T> *Next() { return next; };
20 ListNode<T> *Prev() { return prev; };
21 private:
22 T *data;
23 ListNode<T> *next;
24 ListNode<T> *prev;
25};
26
27template <class T>
28ListNode<T>::ListNode(const T &info)
29{
30 next = NULL;
31 prev = NULL;
32 data = new T(info);
33}
34template <class T>
35ListNode<T>::ListNode(T &info)
36{
37 next = NULL;
38 prev = NULL;
39 data = new T(info);
40}
41
42template <class T>
43T *ListNode<T>::getData() { return data; }
44
45template <class T>
46void ListNode<T>::setData( const T &info )
47 { data ( info ); }
48
49template <class T>
50void ListNode<T>::setPtr( T *newPtr )
51{
52 T *temp;
53 temp = data;
54 data = newPtr;
55 delete temp;
56}
57
58template <class T>
59void ListNode<T>::setNewPtr( T *newPtr )
60{
61 data = newPtr;
62}
63#endif