Tulip  6.0.0
Large graphs analysis and drawing
BmdLink.h
1 /*
2  *
3  * This file is part of Tulip (https://tulip.labri.fr)
4  *
5  * Authors: David Auber and the Tulip development Team
6  * from LaBRI, University of Bordeaux
7  *
8  * Tulip is free software; you can redistribute it and/or modify
9  * it under the terms of the GNU Lesser General Public License
10  * as published by the Free Software Foundation, either version 3
11  * of the License, or (at your option) any later version.
12  *
13  * Tulip is distributed in the hope that it will be useful,
14  * but WITHOUT ANY WARRANTY; without even the implied warranty of
15  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
16  * See the GNU General Public License for more details.
17  *
18  */
19 ///@cond DOXYGEN_HIDDEN
20 
21 #ifndef BMDLINK_H
22 #define BMDLINK_H
23 
24 #ifndef DOXYGEN_NOTFOR_USER
25 
26 template <typename TYPE>
27 class BmdList;
28 template <typename TYPE>
29 class BmdListTest;
30 
31 namespace tlp {
32 template <typename TYPE>
33 class BmdLink {
34 
35  friend class BmdList<TYPE>;
36  friend class BmdListTest<TYPE>;
37 
38 public:
39  TYPE getData() {
40  return data;
41  }
42  BmdLink *prev() {
43  return pre;
44  }
45  BmdLink *succ() {
46  return suc;
47  }
48  // protected:
49  TYPE data;
50  BmdLink *pre;
51  BmdLink *suc;
52  BmdLink(TYPE a, BmdLink<TYPE> *pre, BmdLink<TYPE> *suc);
53 };
54 } // namespace tlp
55 #include <tulip/cxx/BmdLink.cxx>
56 
57 #endif
58 #endif
59 ///@endcond