├── .gitignore
├── AUTHORS
├── COPYING
├── COPYING.LESSER
├── ChangeLog
├── GTL.spec
├── INSTALL
├── Makefile.am
├── Makefile.in
├── NEWS
├── README
├── README.Irix
├── README.md
├── README.win
├── TODO
├── aclocal.m4
├── config
├── config.guess
├── config.sub
├── depcomp
├── install-sh
├── ltmain.sh
└── missing
├── configure
├── configure.in
├── doc
├── Makefile.am
├── Makefile.in
├── history.html
├── index.html
├── lists.html
├── manual
│ ├── GTL.jpeg
│ ├── a00001.html
│ ├── a00002.html
│ ├── a00003.html
│ ├── a00004.html
│ ├── a00005.html
│ ├── a00006.html
│ ├── a00007.html
│ ├── a00008.html
│ ├── a00009.html
│ ├── a00010.html
│ ├── a00011.html
│ ├── a00012.html
│ ├── a00013.html
│ ├── a00014.html
│ ├── a00015.html
│ ├── a00016.html
│ ├── a00017.html
│ ├── a00018.html
│ ├── a00019.html
│ ├── a00020.html
│ ├── a00021.html
│ ├── a00022.html
│ ├── a00023.html
│ ├── a00024.html
│ ├── a00025.html
│ ├── a00026.html
│ ├── a00027.html
│ ├── a00028.html
│ ├── a00066.html
│ ├── a00068.html
│ ├── a00069.html
│ ├── a00070.html
│ ├── a00071.html
│ ├── a00072.html
│ ├── a00073.html
│ ├── a00074.html
│ ├── a00075.html
│ ├── a00076.html
│ ├── a00077.html
│ ├── a00078.html
│ ├── a00079.html
│ ├── a00080.html
│ ├── a00081.html
│ ├── a00082.html
│ ├── a00083.html
│ ├── a00084.html
│ ├── a00085.html
│ ├── a00086.html
│ ├── a00087.html
│ ├── a00088.html
│ ├── a00089.html
│ ├── a00090.html
│ ├── a00091.html
│ ├── a00092.html
│ ├── a00093.html
│ ├── a00094.html
│ ├── a00095.html
│ ├── a00096.html
│ ├── a00097.html
│ ├── a00098.html
│ ├── a00099.html
│ ├── a00100.html
│ ├── a00101.html
│ ├── a00102.gif
│ ├── a00102.map
│ ├── a00102.md5
│ ├── a00104.html
│ ├── a00105.gif
│ ├── a00105.map
│ ├── a00105.md5
│ ├── a00107.gif
│ ├── a00107.map
│ ├── a00107.md5
│ ├── a00109.html
│ ├── a00110.gif
│ ├── a00110.map
│ ├── a00110.md5
│ ├── a00112.gif
│ ├── a00112.map
│ ├── a00112.md5
│ ├── a00114.html
│ ├── a00115.gif
│ ├── a00115.map
│ ├── a00115.md5
│ ├── a00117.gif
│ ├── a00117.map
│ ├── a00117.md5
│ ├── a00119.html
│ ├── a00120.gif
│ ├── a00120.map
│ ├── a00120.md5
│ ├── a00122.gif
│ ├── a00122.map
│ ├── a00122.md5
│ ├── a00124.html
│ ├── a00125.html
│ ├── a00126.gif
│ ├── a00126.map
│ ├── a00126.md5
│ ├── a00128.gif
│ ├── a00128.map
│ ├── a00128.md5
│ ├── a00130.html
│ ├── a00131.gif
│ ├── a00131.map
│ ├── a00131.md5
│ ├── a00133.gif
│ ├── a00133.map
│ ├── a00133.md5
│ ├── a00135.html
│ ├── a00136.gif
│ ├── a00136.map
│ ├── a00136.md5
│ ├── a00138.gif
│ ├── a00138.map
│ ├── a00138.md5
│ ├── a00140.html
│ ├── a00141.html
│ ├── a00142.gif
│ ├── a00142.map
│ ├── a00142.md5
│ ├── a00144.gif
│ ├── a00144.map
│ ├── a00144.md5
│ ├── a00146.html
│ ├── a00147.gif
│ ├── a00147.map
│ ├── a00147.md5
│ ├── a00149.gif
│ ├── a00149.map
│ ├── a00149.md5
│ ├── a00151.html
│ ├── a00152.html
│ ├── a00153.html
│ ├── a00154.gif
│ ├── a00154.map
│ ├── a00154.md5
│ ├── a00156.gif
│ ├── a00156.map
│ ├── a00156.md5
│ ├── a00158.html
│ ├── a00159.gif
│ ├── a00159.map
│ ├── a00159.md5
│ ├── a00161.gif
│ ├── a00161.map
│ ├── a00161.md5
│ ├── a00163.html
│ ├── a00164.gif
│ ├── a00164.map
│ ├── a00164.md5
│ ├── a00166.gif
│ ├── a00166.map
│ ├── a00166.md5
│ ├── a00168.html
│ ├── a00169.gif
│ ├── a00169.map
│ ├── a00169.md5
│ ├── a00171.gif
│ ├── a00171.map
│ ├── a00171.md5
│ ├── a00173.html
│ ├── a00174.gif
│ ├── a00174.map
│ ├── a00174.md5
│ ├── a00176.html
│ ├── a00177.gif
│ ├── a00177.map
│ ├── a00177.md5
│ ├── a00179.html
│ ├── a00180.gif
│ ├── a00180.map
│ ├── a00180.md5
│ ├── a00182.gif
│ ├── a00182.map
│ ├── a00182.md5
│ ├── a00184.html
│ ├── a00185.gif
│ ├── a00185.map
│ ├── a00185.md5
│ ├── a00187.html
│ ├── a00188.gif
│ ├── a00188.map
│ ├── a00188.md5
│ ├── a00190.gif
│ ├── a00190.map
│ ├── a00190.md5
│ ├── a00192.html
│ ├── a00193.html
│ ├── a00194.gif
│ ├── a00194.map
│ ├── a00194.md5
│ ├── a00196.gif
│ ├── a00196.map
│ ├── a00196.md5
│ ├── a00198.html
│ ├── a00199.gif
│ ├── a00199.map
│ ├── a00199.md5
│ ├── a00201.gif
│ ├── a00201.map
│ ├── a00201.md5
│ ├── a00203.html
│ ├── a00204.html
│ ├── a00205.gif
│ ├── a00205.map
│ ├── a00205.md5
│ ├── a00207.gif
│ ├── a00207.map
│ ├── a00207.md5
│ ├── a00209.html
│ ├── a00210.gif
│ ├── a00210.map
│ ├── a00210.md5
│ ├── a00212.gif
│ ├── a00212.map
│ ├── a00212.md5
│ ├── a00214.gif
│ ├── a00214.map
│ ├── a00214.md5
│ ├── a00216.gif
│ ├── a00216.map
│ ├── a00216.md5
│ ├── a00218.gif
│ ├── a00218.map
│ ├── a00218.md5
│ ├── a00220.gif
│ ├── a00220.map
│ ├── a00220.md5
│ ├── a00222.gif
│ ├── a00222.map
│ ├── a00222.md5
│ ├── a00224.gif
│ ├── a00224.map
│ ├── a00224.md5
│ ├── a00226.gif
│ ├── a00226.map
│ ├── a00226.md5
│ ├── a00228.gif
│ ├── a00228.map
│ ├── a00228.md5
│ ├── a00230.gif
│ ├── a00230.map
│ ├── a00230.md5
│ ├── a00232.gif
│ ├── a00232.map
│ ├── a00232.md5
│ ├── annotated.html
│ ├── classes.html
│ ├── deprecated.html
│ ├── doxygen.css
│ ├── doxygen.png
│ ├── files.html
│ ├── form_0.png
│ ├── form_1.png
│ ├── form_2.png
│ ├── form_3.png
│ ├── form_4.png
│ ├── form_5.png
│ ├── form_6.png
│ ├── form_7.png
│ ├── formula.repository
│ ├── functions.html
│ ├── functions_0x62.html
│ ├── functions_0x63.html
│ ├── functions_0x64.html
│ ├── functions_0x65.html
│ ├── functions_0x66.html
│ ├── functions_0x67.html
│ ├── functions_0x68.html
│ ├── functions_0x69.html
│ ├── functions_0x6c.html
│ ├── functions_0x6d.html
│ ├── functions_0x6e.html
│ ├── functions_0x6f.html
│ ├── functions_0x70.html
│ ├── functions_0x71.html
│ ├── functions_0x72.html
│ ├── functions_0x73.html
│ ├── functions_0x74.html
│ ├── functions_0x75.html
│ ├── functions_0x77.html
│ ├── functions_0x7e.html
│ ├── functions_eval.html
│ ├── functions_func.html
│ ├── functions_func_0x62.html
│ ├── functions_func_0x63.html
│ ├── functions_func_0x64.html
│ ├── functions_func_0x65.html
│ ├── functions_func_0x66.html
│ ├── functions_func_0x67.html
│ ├── functions_func_0x68.html
│ ├── functions_func_0x69.html
│ ├── functions_func_0x6c.html
│ ├── functions_func_0x6d.html
│ ├── functions_func_0x6e.html
│ ├── functions_func_0x6f.html
│ ├── functions_func_0x70.html
│ ├── functions_func_0x72.html
│ ├── functions_func_0x73.html
│ ├── functions_func_0x74.html
│ ├── functions_func_0x75.html
│ ├── functions_func_0x77.html
│ ├── functions_func_0x7e.html
│ ├── functions_type.html
│ ├── functions_vars.html
│ ├── graph_legend.dot
│ ├── graph_legend.gif
│ ├── graph_legend.html
│ ├── hierarchy.html
│ ├── index.html
│ ├── inherits.html
│ ├── pages.html
│ ├── tab_b.gif
│ ├── tab_l.gif
│ ├── tab_r.gif
│ └── tabs.css
├── platforms.html
├── refer.html
├── register.html
├── style.css
└── userguide
│ ├── GTL.ps
│ ├── Makefile.am
│ └── Makefile.in
├── include
├── GTL
│ ├── GTL.h
│ ├── Makefile.am
│ ├── Makefile.in
│ ├── algorithm.h
│ ├── bellman_ford.h
│ ├── bfs.h
│ ├── biconnectivity.h
│ ├── bid_dijkstra.h
│ ├── bin_heap.h
│ ├── components.h
│ ├── debug.h
│ ├── dfs.h
│ ├── dijkstra.h
│ ├── edge.h
│ ├── edge_data.h
│ ├── edge_map.h
│ ├── embedding.h
│ ├── fm_partition.h
│ ├── gml_parser.h
│ ├── gml_scanner.h
│ ├── graph.h
│ ├── maxflow_ff.h
│ ├── maxflow_pp.h
│ ├── maxflow_sap.h
│ ├── min_tree.h
│ ├── ne_map.h
│ ├── node.h
│ ├── node_data.h
│ ├── node_map.h
│ ├── planarity.h
│ ├── pq_node.h
│ ├── pq_tree.h
│ ├── ratio_cut_partition.h
│ ├── st_number.h
│ ├── symlist.h
│ ├── topsort.h
│ ├── version.h
│ └── version.h.in
├── Makefile.am
└── Makefile.in
├── src
├── GTL.dsw
├── GTL.sln
├── GTL_dynamic.dsp
├── GTL_dynamic.vcproj
├── GTL_static.dsp
├── GTL_static.vcproj
├── Makefile.am
├── Makefile.in
├── bellman_ford.cpp
├── bfs.cpp
├── biconnectivity.cpp
├── bid_dijkstra.cpp
├── components.cpp
├── debug.cpp
├── dfs.cpp
├── dijkstra.cpp
├── edge.cpp
├── embedding.cpp
├── fm_partition.cpp
├── gml_parser.cpp
├── gml_scanner.cpp
├── graph.cpp
├── maxflow_ff.cpp
├── maxflow_pp.cpp
├── maxflow_sap.cpp
├── min_tree.cpp
├── node.cpp
├── planarity.cpp
├── pq_node.cpp
├── pq_tree.cpp
├── ratio_cut_partition.cpp
├── st_number.cpp
└── topsort.cpp
└── tests
├── Makefile.am
├── Makefile.in
├── bellman_ford_test.cpp
└── graph_test.cpp
/.gitignore:
--------------------------------------------------------------------------------
1 | Makefile
2 |
3 | *.lo
4 | *.la
5 | *.Po
6 | *.log
7 | *~
8 |
9 | autom4te.cache
10 |
11 | config.status
12 | config/compile
13 |
14 | libtool
15 |
16 | src/.deps
17 | src/.libs
18 |
19 | test/.deps
20 |
--------------------------------------------------------------------------------
/AUTHORS:
--------------------------------------------------------------------------------
1 | GTL was designed and implemented by
2 |
3 | Michael Forster
4 | Andreas Pick
5 | Marcus Raitner
6 |
7 |
8 | Acknowledgements to
9 |
10 | Christian Bachmaier
11 |
--------------------------------------------------------------------------------
/ChangeLog:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/rdmpage/graph-template-library/fb195cbaab5572312f230950e314522afc38eca2/ChangeLog
--------------------------------------------------------------------------------
/GTL.spec:
--------------------------------------------------------------------------------
1 | ### BEGIN GTL.spec
2 | # Note that this is NOT a relocatable package
3 |
4 | Name: GTL
5 | Summary: The Graph Template Library
6 | Version: 1.0.0
7 | Release: 1
8 | Group: Development/Libraries
9 | Source: http://infosun.fmi.uni-passau.de/GTL/download/GTL-1.0.0.tar.gz
10 | URL: http://infosun.fmi.uni-passau.de/GTL/
11 | Copyright: Copyright (C) 1999 University of Passau
12 | Vendor: University of Passau
13 | Packager: Marcus Raitner
14 | Prefix: /usr
15 | BuildRoot: /var/tmp/%{name}-%{version}-root
16 |
17 | %description
18 |
19 | There are some basic data structures and algorithms that are frequently
20 | used in many programs. This includes container classes such as vectors,
21 | sets and lists.
22 |
23 | Many commercial but some free libraries have implemented these data
24 | structures and algorithms in a general way. This makes them usable for
25 | many purposes.
26 |
27 | One of these libraries is the Standard Template Library (STL), an
28 | extremely flexible implementation of many container classes and standard
29 | algorithms. STL is supposed to become a part of the C++ standard library
30 | and therefore is an ideal basis when writing portable programs.
31 |
32 | Unfortunately, STL has no support for graphs and graph
33 | algorithms. However, graphs are widely used for complex relational
34 | structures.
35 |
36 | Since we are intensively working with graph algorithms and Graphlet, we
37 | decided to implement GTL, a graph library based on STL. For the design
38 | of GTL's API the API of LEDA has served as a basis. GTL contains the
39 | classes needed to work with graphs, nodes and edges and some basic
40 | algorithms as building blocks for more complex graph algorithms. Further
41 | algorithms are under work.'
42 |
43 | %changelog
44 | * Thu Oct 26 2000 Marcus Raitner
45 | - New release
46 | * Tue Mar 07 2000 Marcus Raitner
47 | - New release
48 | * Wed Feb 02 2000 Reinhard Katzmann
49 | - Added cleanup section for temporary BuildRoot
50 | - Simplified file section
51 | - Needed to fix GTL.h to use map even with gcc 2.95 :-( (patch file)
52 | - Added Buildroot which was missing and would overwrite old version of GTL while installing
53 | * Fri Nov 26 1999 Marcus Raitner
54 | - Initial RPM packaging.
55 |
56 | %prep
57 | %setup
58 | #%patch -p0
59 |
60 | %build
61 | CXXFLAGS=-O3 CPPFLAGS="" CFLAGS="" ./configure --enable-static --prefix=/usr
62 | make
63 |
64 | %install
65 | make prefix=$RPM_BUILD_ROOT%{prefix} install
66 | strip $RPM_BUILD_ROOT%{prefix}/lib/libGTL-1.0.0.so $RPM_BUILD_ROOT%{prefix}/lib/libGTL.a
67 |
68 | %clean
69 | rm -rf $RPM_BUILD_ROOT
70 |
71 | %post
72 | PATH="$PATH:/sbin" ldconfig -n /usr/lib
73 |
74 | %files
75 | %doc README
76 | %doc INSTALL
77 | %doc doc/latex/GTL.ps
78 | %doc doc/html
79 | /usr/include/GTL
80 | /usr/lib
81 | ###END GTL.spec
82 |
--------------------------------------------------------------------------------
/Makefile.am:
--------------------------------------------------------------------------------
1 | #===========================================================================
2 | #
3 | # Makefile.am
4 | #
5 | #===========================================================================
6 | # $Id: Makefile.am,v 1.17 2003/03/17 12:48:16 raitner Exp $
7 |
8 | #---------------------------------------------------------------------------
9 | # General Settings
10 | #---------------------------------------------------------------------------
11 |
12 | SUBDIRS = doc src include tests
13 |
14 | AUTOMAKE_OPTIONS = dist-zip dist-bzip2 dist-zip
15 |
16 | EXTRA_DIST = \
17 | GTL.spec \
18 | README.Irix \
19 | README.win \
20 | src/GTL.dsw \
21 | src/GTL_dynamic.dsp \
22 | src/GTL_static.dsp \
23 | src/GTL.sln \
24 | src/GTL_dynamic.vcproj \
25 | src/GTL_static.vcproj
26 |
27 | #---------------------------------------------------------------------------
28 | # Goal for building documentation
29 | #---------------------------------------------------------------------------
30 |
31 | .PHONY: doc runtests
32 |
33 | runtests:
34 | cd tests; $(MAKE) runtests
35 |
36 | doc:
37 | cd doc; $(MAKE) doc
38 |
39 | #---------------------------------------------------------------------------
40 | # end of file
41 | #---------------------------------------------------------------------------
42 |
--------------------------------------------------------------------------------
/NEWS:
--------------------------------------------------------------------------------
1 | * Fixes to make GTL compatible with newer gcc version (>= 3.4)
--------------------------------------------------------------------------------
/README.Irix:
--------------------------------------------------------------------------------
1 |
2 | Date: Thu, 13 Apr 2000 09:38:04 +0200
3 | From: Andreas Unterkircher
4 | To: gtl-users@infosun.fmi.uni-passau.de
5 | Subject: GTL on IRIX and True64/Digitial Unix
6 |
7 |
8 | There have been some complaints that linking the GTL archive under SGI's
9 | IRIX and Compaq's True64 Unix (earlier it was called "Digital Unix") does
10 | not work. Here is description how to do it (I tested it only for static
11 | linking, but I think it should work for dynamic linking too).
12 |
13 | SGI (MIPSpro C++ compiler V7.30):
14 |
15 | Compile the GTL sources with "CC -LANG:std -ptused" then build the archive
16 | (ar cru libGTL.a *.o).
17 |
18 | Compaq/DEC (Compaq C++ compiler V6.2-024):
19 |
20 | Compile the GTL sources with "cxx". The compiler produces the object files
21 | plus a directory called "cxx_repository" with template instantiation
22 | object files. Put the GTL object files and the instantiation object files
23 | into libGTL.a.
24 |
25 | Best regards,
26 | Andreas
27 |
28 | ---
29 | Andreas Unterkircher Institut fuer Umformtechnik
30 | ETH Zentrum / CLA, Tannenstr. 3, CH-8092 Zuerich, Switzerland
31 | unterkir@ifu.bepr.ethz.ch / ++41 1 632 66 21 / www.ifu.ethz.ch
32 |
33 |
34 |
35 |
36 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | graph-template-library
2 | ======================
3 |
4 | This is a copy of the GTL (Graph Template Library) from http://www.fim.uni-passau.de/en/fim/faculty/chairs/theoretische-informatik/projects.html. The original authors are Michael Forster, Andreas Pick, and Marcus Raitner. Their code is licensed under both the GPL and LGPL.
5 |
6 |
--------------------------------------------------------------------------------
/README.win:
--------------------------------------------------------------------------------
1 | ============================================================================
2 |
3 | README.win
4 |
5 | ============================================================================
6 | $Id: README.win,v 1.4 2003/11/12 06:33:02 chris Exp $
7 |
8 | Please note, Visual C++ 6.0 is not supported any more and thus the
9 | corresponding project files are not kept up to date any longer.
10 | The new project files are for Visual C++ .NET 2003. Visual Studio .NET 2002
11 | is not supported any more.
12 |
13 |
14 |
15 |
16 | =====
17 | INDEX
18 | =====
19 |
20 | 1. Using GTL as a shared library
21 | 2. Using GTL as a static library
22 | 3. Example usage: GTLTest
23 |
24 |
25 |
26 |
27 | =============================
28 | Using GTL as a shared library
29 | =============================
30 |
31 | STEP 1:
32 | =======
33 |
34 | Open GTL.sln in GTL\src
35 |
36 | choose
37 |
38 | GTL_dynamic Win 32 Release
39 | GTL_dynamic Win 32 Debug
40 |
41 | depending on what you need.
42 |
43 | build GTL
44 |
45 | STEP 2:
46 | =======
47 |
48 | Add library-Path and library to your project.
49 |
50 | The files can be found:
51 |
52 | release:
53 |
54 | lib/GTL.lib
55 | bin/GTL.dll
56 |
57 | debug:
58 |
59 | lib-debug/GTL.lib
60 | bin-debug/GTL.dll
61 |
62 | STEP 3:
63 | =======
64 |
65 | Change your project settings for
66 |
67 | all:
68 | - disable use of precompiled headers
69 | - change setting for "force conformace in for loop scope"
70 | to "Yes:/Zc:forScope"
71 |
72 | debug:
73 | - make sure "Microsoft Foundation classes" are used as shared library
74 | - use debug info "none", "line numbers", "program database" or
75 | "C7 compatible"
76 | - make sure symbol "_DEBUG" is defined
77 | - use compiler option "Multithreaded Debug DLL"
78 |
79 | release:
80 | - use compiler option "Multithreaded DLL"
81 |
82 | STEP 4:
83 | =======
84 |
85 | compile your project
86 |
87 | STEP 5:
88 | =======
89 |
90 | make sure GTL.dll can be found for running your program
91 | (e.g. where your exe file lies)
92 |
93 |
94 |
95 |
96 |
97 |
98 | =============================
99 | Using GTL as a static library
100 | =============================
101 |
102 | STEP 1:
103 | =======
104 |
105 | Open GTL.sln in GTL\src
106 |
107 | choose
108 |
109 | GTL_static Win 32 Release
110 | GTL_static Win 32 Debug
111 |
112 | depending on what you need.
113 |
114 | build GTL
115 |
116 |
117 | STEP 2:
118 | =======
119 |
120 | Add library-Path and library to your project.
121 |
122 | The files can be found:
123 |
124 | release:
125 |
126 | lib/GTLstatic.lib
127 |
128 | debug:
129 |
130 | lib-debug/GTLstatic.lib
131 |
132 | STEP 3:
133 | =======
134 |
135 | Change your project settings for
136 |
137 | all:
138 | - define symbol "GTL_STATIC"
139 | - disable use of precompiled headers
140 | - change setting for "force conformace in for loop scope"
141 | to "Yes:/Zc:forScope"
142 |
143 | debug:
144 | - make sure Microsoft Foundation classes are used as shared library
145 | - use debug info "none", "line numbers", "program database" or
146 | "C7 compatible"
147 | - make sure symbol "_DEBUG" is defined
148 |
149 | release:
150 |
151 | STEP 4:
152 | =======
153 |
154 | compile youre project
155 |
156 |
157 |
158 |
159 |
160 |
161 | ======================
162 | Example usage: GLTTest
163 | ======================
164 |
165 | GTLTest is an example for using both
166 | versions of GTL, dynamic and static.
167 |
168 | For usage download GTLTest and unzip
169 | to the same directory as GTL:
170 |
171 | GTL\
172 | GTLTest\
173 |
174 | With this directory structure the project file
175 |
176 | GTLTest\win\GTLTest.sln
177 |
178 | will find, compile, and copy the necessary GTL.dll
179 | automatically. If you want to set up a new project
180 | have a look on the settings of GTLTest.
181 |
--------------------------------------------------------------------------------
/TODO:
--------------------------------------------------------------------------------
1 | #-----------------------------------------------------------------------
2 | # TODO
3 | #-----------------------------------------------------------------------
4 | # $Id: TODO,v 1.2 2002/12/23 16:30:40 raitner Exp $
5 |
6 | #-----------------------------------------------------------------------
7 | # Library
8 | #-----------------------------------------------------------------------
9 |
10 | [ Subgraphs ]
11 |
12 | RATIONALE: Many algorithms work only on part of a graph. A subgraph is
13 | a convenient way of refering to a part of a graph. The nodes and the
14 | edges in the subgraph must be the same as in the origninal graph. The
15 | same behaviour can be achieved through hiding nodes and edges in a
16 | graph, but then only one subgraph is possible.
17 |
18 | STATUS: open
19 |
20 |
21 | [ Genric Attributes ]
22 |
23 | RATIONALE: Graphs with additional attributes for nodes and edges. This
24 | is possible by making a sub-class of graph and keeping a node_map and
25 | edge_map of appropriate type therein. This process of subclassing
26 | should be automated a generic graph class with template parameters.
27 |
28 | STATUS: open
29 |
30 |
31 | [ DFS Iterators ]
32 |
33 | RATIONALE: Iterator based variants of common algorithms.
34 |
35 | STATUS: in progress
36 |
37 |
38 | [ GraphML Support ]
39 |
40 | RATIONALE: GraphML seems to be the upcoming standard for saving
41 | graphs. However, support for GML should be kept up for a while as
42 | well. Alternativly we could provide converters for GML to GraphML.
43 |
44 | STATUS: open
45 |
46 |
47 | [ Graph Generator ]
48 |
49 | RATIONALE: In many applications random graph are needed for
50 | testing. Graph Generators for general graphs as well as for special
51 | graph classes (connected, biconnected, planar, etc.) are needed.
52 |
53 | STATUS: open
54 |
55 |
56 | #-----------------------------------------------------------------------
57 | # Web
58 | #-----------------------------------------------------------------------
59 |
60 | [ Download Form ]
61 |
62 | RATIONALE: At the moment everyone sends a mail with unspecified
63 | format to gtl_download. This should be standardized.
64 |
65 | STATUS: open
66 |
67 |
68 | #-----------------------------------------------------------------------
69 | # Documentation
70 | #-----------------------------------------------------------------------
71 |
72 | [ Doxygen ]
73 |
74 | RATIONALE: Doxygen is way better supported and documented than
75 | KDoc. Furthermore it has more features (graphs ...).
76 |
77 | STATUS: in progress
78 |
79 | # Local Variables:
80 | # mode: text
81 | # comment-start: "#"
82 | # End:
83 |
--------------------------------------------------------------------------------
/configure.in:
--------------------------------------------------------------------------------
1 | #===========================================================================
2 | #
3 | # configure.in
4 | #
5 | #===========================================================================
6 | # $Id: configure.in,v 1.32 2006/06/01 09:50:12 chris Exp $
7 |
8 | #---------------------------------------------------------------------------
9 | # Init Auto Tools
10 | #---------------------------------------------------------------------------
11 |
12 | # autoconf
13 |
14 | AC_INIT
15 | AC_CONFIG_SRCDIR([src/graph.cpp])
16 | AC_CONFIG_AUX_DIR(config)
17 |
18 | dnl -----------------------------------------------
19 | dnl Package name and version number (user defined)
20 | dnl -----------------------------------------------
21 |
22 | GENERIC_LIBRARY_NAME=GTL
23 |
24 | #release versioning
25 | GENERIC_MAJOR_VERSION=1
26 | GENERIC_MINOR_VERSION=2
27 | GENERIC_MICRO_VERSION=4
28 |
29 | #shared library versioning
30 | GENERIC_LIBRARY_VERSION=3:4:2
31 | # | | |
32 | # +------+ | +---+
33 | # | | |
34 | # current:revision:age
35 | # | | |
36 | # | | +- increment if interfaces have been added
37 | # | | set to zero if interfaces have been removed
38 | # or changed
39 | # | +- increment if source code has changed
40 | # | set to zero if current is incremented
41 | # +- increment if interfaces have been added, removed or changed
42 |
43 |
44 | dnl --------------------------------
45 | dnl Package name and version number
46 | dnl --------------------------------
47 |
48 | AC_SUBST(GENERIC_LIBRARY_VERSION)
49 |
50 | PACKAGE=$GENERIC_LIBRARY_NAME
51 | AC_SUBST(GENERIC_LIBRARY_NAME)
52 |
53 | GENERIC_VERSION=$GENERIC_MAJOR_VERSION.$GENERIC_MINOR_VERSION.$GENERIC_MICRO_VERSION
54 | GENERIC_RELEASE=$GENERIC_MAJOR_VERSION.$GENERIC_MINOR_VERSION
55 | AC_SUBST(GENERIC_RELEASE)
56 | AC_SUBST(GENERIC_VERSION)
57 |
58 | AC_DEFINE_UNQUOTED(GENERIC_MAJOR_VERSION, $GENERIC_MAJOR_VERSION)
59 | AC_DEFINE_UNQUOTED(GENERIC_MINOR_VERSION, $GENERIC_MINOR_VERSION)
60 | AC_DEFINE_UNQUOTED(GENERIC_MICRO_VERSION, $GENERIC_MICRO_VERSION)
61 |
62 | VERSION=$GENERIC_VERSION
63 |
64 | # automake
65 |
66 | AM_INIT_AUTOMAKE($PACKAGE, $VERSION)
67 |
68 | # libtool
69 |
70 | AC_PROG_CXX
71 | AC_LANG([C++])
72 | AC_DISABLE_STATIC
73 | LT_INIT
74 |
75 | LIBTOOL="$LIBTOOL --silent"
76 |
77 | #---------------------------------------------------------------------------
78 | # Documentation utilites
79 | #---------------------------------------------------------------------------
80 |
81 | AC_CHECK_PROGS(doxygen, doxygen)
82 |
83 | #---------------------------------------------------------------------------
84 | # generate Files
85 | #---------------------------------------------------------------------------
86 |
87 | ### AC_OUTPUT BEGIN ###
88 | #
89 | # this section is generated automatically by Makefile.local
90 | # DO NOT MODIFY !!
91 | #
92 | AC_CONFIG_FILES([\
93 | doc/Makefile \
94 | doc/userguide/Makefile \
95 | include/GTL/Makefile \
96 | include/GTL/version.h \
97 | include/Makefile \
98 | Makefile \
99 | src/Makefile \
100 | tests/Makefile \
101 | ])
102 | AC_OUTPUT
103 | ### AC_OUTPUT END ###
104 |
105 | #---------------------------------------------------------------------------
106 | # end of file
107 | #---------------------------------------------------------------------------
108 |
--------------------------------------------------------------------------------
/doc/Makefile.am:
--------------------------------------------------------------------------------
1 | #===========================================================================
2 | #
3 | # doc/Makefile.am
4 | #
5 | #===========================================================================
6 | # $Id: Makefile.am,v 1.8 2003/03/17 12:47:15 raitner Exp $
7 |
8 | SUBDIRS = userguide
9 |
10 | dist-hook: doc
11 | cp -R manual $(distdir)
12 | mkdir $(distdir)/icons
13 | cp -f www/icons/GTL.jpeg $(distdir)/icons
14 | cp -f www/style.css $(distdir)
15 | cp -f www/index.html $(distdir)
16 | cp -f www/register.html $(distdir)
17 | cp -f www/refer.html $(distdir)
18 | cp -f www/platforms.html $(distdir)
19 | cp -f www/lists.html $(distdir)
20 | cp -f www/history.html $(distdir)
21 |
22 | .PHONY: doc
23 |
24 | doc:
25 | doxygen doxygen_config
26 | cp www/icons/GTL.jpeg manual
27 | cd userguide; $(MAKE) doc
28 |
29 | homepage: doc
30 | cp -Rf manual /home/http/htdocs/infosun/br/projects/GTL
31 | cp -f www/icons/GTL.jpeg /home/http/htdocs/infosun/br/projects/GTL/icons
32 | cp -f www/style.css /home/http/htdocs/infosun/br/projects/GTL
33 | cp -f www/index.html /home/http/htdocs/infosun/br/projects/GTL
34 | cp -f www/register.html /home/http/htdocs/infosun/br/projects/GTL
35 | cp -f www/refer.html /home/http/htdocs/infosun/br/projects/GTL
36 | cp -f www/platforms.html /home/http/htdocs/infosun/br/projects/GTL
37 | cp -f www/lists.html /home/http/htdocs/infosun/br/projects/GTL
38 | cp -f www/history.html /home/http/htdocs/infosun/br/projects/GTL
39 | cp -f www/download.html /home/http/htdocs/infosun/br/projects/GTL/download/index.html
40 |
41 | homepagetest: doc
42 | cp -Rf manual $(HOME)/public_html/GTL
43 | cp -f www/icons/GTL.jpeg $(HOME)/public_html/GTL/icons
44 | cp -f www/style.css $(HOME)/public_html/GTL
45 | cp -f www/index.html $(HOME)/public_html/GTL
46 | cp -f www/register.html $(HOME)/public_html/GTL
47 | cp -f www/refer.html $(HOME)/public_html/GTL
48 | cp -f www/platforms.html $(HOME)/public_html/GTL
49 | cp -f www/lists.html $(HOME)/public_html/GTL
50 | cp -f www/history.html $(HOME)/public_html/GTL
51 | cp -f www/download.html $(HOME)/public_html/GTL/download/index.html
52 |
53 |
54 | #---------------------------------------------------------------------------
55 | # end of file
56 | #---------------------------------------------------------------------------
57 |
58 |
--------------------------------------------------------------------------------
/doc/history.html:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/rdmpage/graph-template-library/fb195cbaab5572312f230950e314522afc38eca2/doc/history.html
--------------------------------------------------------------------------------
/doc/lists.html:
--------------------------------------------------------------------------------
1 |
3 |
8 |
9 |
10 |
11 |
12 | [ GTL ] Mailing Lists
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 | Home |
22 | Documentation |
23 | Download |
24 | Platforms |
25 | Projects |
26 | Mailing Lists |
27 | Version History
28 |
29 | { Mailing-lists }
30 | Currently no mailing lists available.
31 |
32 |
47 |
48 |
49 | University of Passau
50 | -
51 | FMI
52 | -
53 | Theoretical
54 | Computer Science
55 |
56 |
59 |
60 |
61 |
62 |
65 |
66 |
67 |
68 |
69 |
70 |
--------------------------------------------------------------------------------
/doc/manual/GTL.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/rdmpage/graph-template-library/fb195cbaab5572312f230950e314522afc38eca2/doc/manual/GTL.jpeg
--------------------------------------------------------------------------------
/doc/manual/a00101.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | GTL - Graph Template Library: version.h Source File
6 |
7 |
8 |
9 |
10 | Home |
11 | Documentation |
12 | Download |
13 | Platforms |
14 | Projects |
15 | Mailing Lists |
16 | Version History
17 |
18 |
19 |
20 |
28 | version.h 00001
29 | 00002
30 | 00003
31 | 00004
32 | 00005
33 | 00006
34 | 00007
35 | 00008 #ifndef GTL_VERSION_H
36 | 00009 #define GTL_VERSION_H
37 | 00010
38 | 00011 #define GTL_MAJOR_VERSION "@MAJOR_VERSION @"
39 | #define GTL_MINOR_VERSION " @MINOR_VERSION@"
40 | #define GTL_MINI_VERSION " @MINI_VERSION@"
41 |
42 | #endif // GT_VERSION_H
43 |
44 | //--------------------------------------------------------------------------
45 | // end of file
46 | //--------------------------------------------------------------------------
47 |
48 | University of Passau
49 | -
50 | FMI
51 | -
52 | Theoretical
53 | Computer Science
54 |
55 |
58 |
59 |
60 |
--------------------------------------------------------------------------------
/doc/manual/a00102.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/rdmpage/graph-template-library/fb195cbaab5572312f230950e314522afc38eca2/doc/manual/a00102.gif
--------------------------------------------------------------------------------
/doc/manual/a00102.map:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
--------------------------------------------------------------------------------
/doc/manual/a00102.md5:
--------------------------------------------------------------------------------
1 | 0067369a1b0ddcd462ec098b6a1af55a
--------------------------------------------------------------------------------
/doc/manual/a00104.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | GTL - Graph Template Library: Member List
6 |
7 |
8 |
9 |
10 | Home |
11 | Documentation |
12 | Download |
13 | Platforms |
14 | Projects |
15 | Mailing Lists |
16 | Version History
17 |
18 |
19 |
20 |
28 |
36 | algorithm Member List This is the complete list of members for algorithm , including all inherited members.
45 | University of Passau
46 | -
47 | FMI
48 | -
49 | Theoretical
50 | Computer Science
51 |
52 |
55 |
56 |
57 |
--------------------------------------------------------------------------------
/doc/manual/a00105.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/rdmpage/graph-template-library/fb195cbaab5572312f230950e314522afc38eca2/doc/manual/a00105.gif
--------------------------------------------------------------------------------
/doc/manual/a00105.map:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/doc/manual/a00105.md5:
--------------------------------------------------------------------------------
1 | 39179cfafb1274c6b757778e236f2743
--------------------------------------------------------------------------------
/doc/manual/a00107.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/rdmpage/graph-template-library/fb195cbaab5572312f230950e314522afc38eca2/doc/manual/a00107.gif
--------------------------------------------------------------------------------
/doc/manual/a00107.map:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
--------------------------------------------------------------------------------
/doc/manual/a00107.md5:
--------------------------------------------------------------------------------
1 | 04a62c5ad2b320aadc9a41965cb7cbcd
--------------------------------------------------------------------------------
/doc/manual/a00110.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/rdmpage/graph-template-library/fb195cbaab5572312f230950e314522afc38eca2/doc/manual/a00110.gif
--------------------------------------------------------------------------------
/doc/manual/a00110.map:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/doc/manual/a00110.md5:
--------------------------------------------------------------------------------
1 | f6c524bc5467dcbd2bf570520c5d709a
--------------------------------------------------------------------------------
/doc/manual/a00112.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/rdmpage/graph-template-library/fb195cbaab5572312f230950e314522afc38eca2/doc/manual/a00112.gif
--------------------------------------------------------------------------------
/doc/manual/a00112.map:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
--------------------------------------------------------------------------------
/doc/manual/a00112.md5:
--------------------------------------------------------------------------------
1 | 8e66f61195eb49fb6670147fba848247
--------------------------------------------------------------------------------
/doc/manual/a00115.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/rdmpage/graph-template-library/fb195cbaab5572312f230950e314522afc38eca2/doc/manual/a00115.gif
--------------------------------------------------------------------------------
/doc/manual/a00115.map:
--------------------------------------------------------------------------------
1 |
2 |
3 |
--------------------------------------------------------------------------------
/doc/manual/a00115.md5:
--------------------------------------------------------------------------------
1 | 8b10501bb5d543e46ddbeca7cdb2c79b
--------------------------------------------------------------------------------
/doc/manual/a00117.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/rdmpage/graph-template-library/fb195cbaab5572312f230950e314522afc38eca2/doc/manual/a00117.gif
--------------------------------------------------------------------------------
/doc/manual/a00117.map:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
--------------------------------------------------------------------------------
/doc/manual/a00117.md5:
--------------------------------------------------------------------------------
1 | 304d4ca23fc99238d7ad1de6fc45e396
--------------------------------------------------------------------------------
/doc/manual/a00120.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/rdmpage/graph-template-library/fb195cbaab5572312f230950e314522afc38eca2/doc/manual/a00120.gif
--------------------------------------------------------------------------------
/doc/manual/a00120.map:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/doc/manual/a00120.md5:
--------------------------------------------------------------------------------
1 | c7df7279f58cf1bc39db7fdf47faf323
--------------------------------------------------------------------------------
/doc/manual/a00122.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/rdmpage/graph-template-library/fb195cbaab5572312f230950e314522afc38eca2/doc/manual/a00122.gif
--------------------------------------------------------------------------------
/doc/manual/a00122.map:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
--------------------------------------------------------------------------------
/doc/manual/a00122.md5:
--------------------------------------------------------------------------------
1 | 65d6238a764107636656b0381afd1d2a
--------------------------------------------------------------------------------
/doc/manual/a00126.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/rdmpage/graph-template-library/fb195cbaab5572312f230950e314522afc38eca2/doc/manual/a00126.gif
--------------------------------------------------------------------------------
/doc/manual/a00126.map:
--------------------------------------------------------------------------------
1 |
2 |
3 |
--------------------------------------------------------------------------------
/doc/manual/a00126.md5:
--------------------------------------------------------------------------------
1 | 1bbd2e2289c5a9b75b25ce75e635a5a8
--------------------------------------------------------------------------------
/doc/manual/a00128.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/rdmpage/graph-template-library/fb195cbaab5572312f230950e314522afc38eca2/doc/manual/a00128.gif
--------------------------------------------------------------------------------
/doc/manual/a00128.map:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
--------------------------------------------------------------------------------
/doc/manual/a00128.md5:
--------------------------------------------------------------------------------
1 | 572b925a05d791bbd15aa7bb2f33abad
--------------------------------------------------------------------------------
/doc/manual/a00131.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/rdmpage/graph-template-library/fb195cbaab5572312f230950e314522afc38eca2/doc/manual/a00131.gif
--------------------------------------------------------------------------------
/doc/manual/a00131.map:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
--------------------------------------------------------------------------------
/doc/manual/a00131.md5:
--------------------------------------------------------------------------------
1 | a87d52581ae557db299c167aa6a02426
--------------------------------------------------------------------------------
/doc/manual/a00133.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/rdmpage/graph-template-library/fb195cbaab5572312f230950e314522afc38eca2/doc/manual/a00133.gif
--------------------------------------------------------------------------------
/doc/manual/a00133.map:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
--------------------------------------------------------------------------------
/doc/manual/a00133.md5:
--------------------------------------------------------------------------------
1 | ba7a8153381acb0a9d21168c9fba0fcd
--------------------------------------------------------------------------------
/doc/manual/a00136.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/rdmpage/graph-template-library/fb195cbaab5572312f230950e314522afc38eca2/doc/manual/a00136.gif
--------------------------------------------------------------------------------
/doc/manual/a00136.map:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/doc/manual/a00136.md5:
--------------------------------------------------------------------------------
1 | 148f5c7d5599624404e75b22fd4b61fc
--------------------------------------------------------------------------------
/doc/manual/a00138.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/rdmpage/graph-template-library/fb195cbaab5572312f230950e314522afc38eca2/doc/manual/a00138.gif
--------------------------------------------------------------------------------
/doc/manual/a00138.map:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
--------------------------------------------------------------------------------
/doc/manual/a00138.md5:
--------------------------------------------------------------------------------
1 | de938d7226483828d247d0dc13841207
--------------------------------------------------------------------------------
/doc/manual/a00141.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | GTL - Graph Template Library: Member List
6 |
7 |
8 |
9 |
10 | Home |
11 | Documentation |
12 | Download |
13 | Platforms |
14 | Projects |
15 | Mailing Lists |
16 | Version History
17 |
18 |
19 |
20 |
28 |
36 | edge Member List This is the complete list of members for edge , including all inherited members.
46 | University of Passau
47 | -
48 | FMI
49 | -
50 | Theoretical
51 | Computer Science
52 |
53 |
56 |
57 |
58 |
--------------------------------------------------------------------------------
/doc/manual/a00142.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/rdmpage/graph-template-library/fb195cbaab5572312f230950e314522afc38eca2/doc/manual/a00142.gif
--------------------------------------------------------------------------------
/doc/manual/a00142.map:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/doc/manual/a00142.md5:
--------------------------------------------------------------------------------
1 | 9cee1128d776fb5ddd2a48a30d8e0b91
--------------------------------------------------------------------------------
/doc/manual/a00144.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/rdmpage/graph-template-library/fb195cbaab5572312f230950e314522afc38eca2/doc/manual/a00144.gif
--------------------------------------------------------------------------------
/doc/manual/a00144.map:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/doc/manual/a00144.md5:
--------------------------------------------------------------------------------
1 | 9cee1128d776fb5ddd2a48a30d8e0b91
--------------------------------------------------------------------------------
/doc/manual/a00146.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | GTL - Graph Template Library: Member List
6 |
7 |
8 |
9 |
10 | Home |
11 | Documentation |
12 | Download |
13 | Platforms |
14 | Projects |
15 | Mailing Lists |
16 | Version History
17 |
18 |
19 |
20 |
28 |
36 | edge_map< T, Alloc > Member List This is the complete list of members for edge_map< T, Alloc > , including all inherited members.
37 | clear ()ne_map< edge, T, graph, Alloc >
38 | edge_map ()edge_map< T, Alloc > [inline]
39 | edge_map (const graph &g, T t=T())edge_map< T, Alloc > [inline, explicit]
40 | init (const graph &, Tdef=T())ne_map< edge, T, graph, Alloc >
41 | ne_map ()ne_map< edge, T, graph, Alloc > [protected]
42 | ne_map (const graph &g, Tdef=T())ne_map< edge, T, graph, Alloc > [explicit, protected]
43 | operator[] (edgekey)ne_map< edge, T, graph, Alloc >
44 | operator[] (edgekey) const ne_map< edge, T, graph, Alloc >
45 |
46 | University of Passau
47 | -
48 | FMI
49 | -
50 | Theoretical
51 | Computer Science
52 |
53 |
56 |
57 |
58 |
--------------------------------------------------------------------------------
/doc/manual/a00147.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/rdmpage/graph-template-library/fb195cbaab5572312f230950e314522afc38eca2/doc/manual/a00147.gif
--------------------------------------------------------------------------------
/doc/manual/a00147.map:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/doc/manual/a00147.md5:
--------------------------------------------------------------------------------
1 | b773da2364201ec083555939e802a575
--------------------------------------------------------------------------------
/doc/manual/a00149.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/rdmpage/graph-template-library/fb195cbaab5572312f230950e314522afc38eca2/doc/manual/a00149.gif
--------------------------------------------------------------------------------
/doc/manual/a00149.map:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
--------------------------------------------------------------------------------
/doc/manual/a00149.md5:
--------------------------------------------------------------------------------
1 | 688488a2b5fa401c8069a9da720914dc
--------------------------------------------------------------------------------
/doc/manual/a00152.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | GTL - Graph Template Library: Member List
6 |
7 |
8 |
9 |
10 | Home |
11 | Documentation |
12 | Download |
13 | Platforms |
14 | Projects |
15 | Mailing Lists |
16 | Version History
17 |
18 |
19 |
20 |
28 |
36 | GML_error Member List This is the complete list of members for GML_error , including all inherited members.
41 | University of Passau
42 | -
43 | FMI
44 | -
45 | Theoretical
46 | Computer Science
47 |
48 |
51 |
52 |
53 |
--------------------------------------------------------------------------------
/doc/manual/a00154.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/rdmpage/graph-template-library/fb195cbaab5572312f230950e314522afc38eca2/doc/manual/a00154.gif
--------------------------------------------------------------------------------
/doc/manual/a00154.map:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/doc/manual/a00154.md5:
--------------------------------------------------------------------------------
1 | 466af44b8c2d25984a93de64743be5cc
--------------------------------------------------------------------------------
/doc/manual/a00156.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/rdmpage/graph-template-library/fb195cbaab5572312f230950e314522afc38eca2/doc/manual/a00156.gif
--------------------------------------------------------------------------------
/doc/manual/a00156.map:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
--------------------------------------------------------------------------------
/doc/manual/a00156.md5:
--------------------------------------------------------------------------------
1 | 788022abcef3a2a42a9c6034adca47da
--------------------------------------------------------------------------------
/doc/manual/a00159.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/rdmpage/graph-template-library/fb195cbaab5572312f230950e314522afc38eca2/doc/manual/a00159.gif
--------------------------------------------------------------------------------
/doc/manual/a00159.map:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/doc/manual/a00159.md5:
--------------------------------------------------------------------------------
1 | b3fab9f42eb1205d2256b71da8cd74b2
--------------------------------------------------------------------------------
/doc/manual/a00161.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/rdmpage/graph-template-library/fb195cbaab5572312f230950e314522afc38eca2/doc/manual/a00161.gif
--------------------------------------------------------------------------------
/doc/manual/a00161.map:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
--------------------------------------------------------------------------------
/doc/manual/a00161.md5:
--------------------------------------------------------------------------------
1 | 8973c566f2e412c98fc25d561b2796a4
--------------------------------------------------------------------------------
/doc/manual/a00164.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/rdmpage/graph-template-library/fb195cbaab5572312f230950e314522afc38eca2/doc/manual/a00164.gif
--------------------------------------------------------------------------------
/doc/manual/a00164.map:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/doc/manual/a00164.md5:
--------------------------------------------------------------------------------
1 | 6ce63f895e8748342e6c23f39c0993bc
--------------------------------------------------------------------------------
/doc/manual/a00166.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/rdmpage/graph-template-library/fb195cbaab5572312f230950e314522afc38eca2/doc/manual/a00166.gif
--------------------------------------------------------------------------------
/doc/manual/a00166.map:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
--------------------------------------------------------------------------------
/doc/manual/a00166.md5:
--------------------------------------------------------------------------------
1 | ff183f6d1a79286bddc78484c4afb642
--------------------------------------------------------------------------------
/doc/manual/a00169.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/rdmpage/graph-template-library/fb195cbaab5572312f230950e314522afc38eca2/doc/manual/a00169.gif
--------------------------------------------------------------------------------
/doc/manual/a00169.map:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/doc/manual/a00169.md5:
--------------------------------------------------------------------------------
1 | 2a7aa0f5ba4e156b6420b66d15ca6bab
--------------------------------------------------------------------------------
/doc/manual/a00171.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/rdmpage/graph-template-library/fb195cbaab5572312f230950e314522afc38eca2/doc/manual/a00171.gif
--------------------------------------------------------------------------------
/doc/manual/a00171.map:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/doc/manual/a00171.md5:
--------------------------------------------------------------------------------
1 | 9e0ca87d5e2cac403c0d517e4f20497d
--------------------------------------------------------------------------------
/doc/manual/a00174.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/rdmpage/graph-template-library/fb195cbaab5572312f230950e314522afc38eca2/doc/manual/a00174.gif
--------------------------------------------------------------------------------
/doc/manual/a00174.map:
--------------------------------------------------------------------------------
1 |
2 |
3 |
--------------------------------------------------------------------------------
/doc/manual/a00174.md5:
--------------------------------------------------------------------------------
1 | c126a43ad4fa3ce8c8d8e3f664882d59
--------------------------------------------------------------------------------
/doc/manual/a00176.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | GTL - Graph Template Library: Member List
6 |
7 |
8 |
9 |
10 | Home |
11 | Documentation |
12 | Download |
13 | Platforms |
14 | Projects |
15 | Mailing Lists |
16 | Version History
17 |
18 |
19 |
20 |
28 |
36 | ne_map< Key, Value, Graph, Alloc > Member List This is the complete list of members for ne_map< Key, Value, Graph, Alloc > , including all inherited members.
37 | clear ()ne_map< Key, Value, Graph, Alloc > [inline]
38 | init (const Graph &, Value def=Value())ne_map< Key, Value, Graph, Alloc > [inline]
39 | ne_map ()ne_map< Key, Value, Graph, Alloc > [inline, protected]
40 | ne_map (const Graph &g, Value def=Value())ne_map< Key, Value, Graph, Alloc > [inline, explicit, protected]
41 | operator[] (Key key)ne_map< Key, Value, Graph, Alloc > [inline]
42 | operator[] (Key key) const ne_map< Key, Value, Graph, Alloc > [inline]
43 |
44 | University of Passau
45 | -
46 | FMI
47 | -
48 | Theoretical
49 | Computer Science
50 |
51 |
54 |
55 |
56 |
--------------------------------------------------------------------------------
/doc/manual/a00177.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/rdmpage/graph-template-library/fb195cbaab5572312f230950e314522afc38eca2/doc/manual/a00177.gif
--------------------------------------------------------------------------------
/doc/manual/a00177.map:
--------------------------------------------------------------------------------
1 |
2 |
3 |
--------------------------------------------------------------------------------
/doc/manual/a00177.md5:
--------------------------------------------------------------------------------
1 | 7b7fcf0d50a50f8a9b2e06a354102468
--------------------------------------------------------------------------------
/doc/manual/a00180.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/rdmpage/graph-template-library/fb195cbaab5572312f230950e314522afc38eca2/doc/manual/a00180.gif
--------------------------------------------------------------------------------
/doc/manual/a00180.map:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/doc/manual/a00180.md5:
--------------------------------------------------------------------------------
1 | 6e88a92639d2bcac87db904b3b2942a4
--------------------------------------------------------------------------------
/doc/manual/a00182.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/rdmpage/graph-template-library/fb195cbaab5572312f230950e314522afc38eca2/doc/manual/a00182.gif
--------------------------------------------------------------------------------
/doc/manual/a00182.map:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/doc/manual/a00182.md5:
--------------------------------------------------------------------------------
1 | 6e88a92639d2bcac87db904b3b2942a4
--------------------------------------------------------------------------------
/doc/manual/a00184.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | GTL - Graph Template Library: Member List
6 |
7 |
8 |
9 |
10 | Home |
11 | Documentation |
12 | Download |
13 | Platforms |
14 | Projects |
15 | Mailing Lists |
16 | Version History
17 |
18 |
19 |
20 |
28 |
36 | node_map< T, Alloc > Member List This is the complete list of members for node_map< T, Alloc > , including all inherited members.
37 | clear ()ne_map< node, T, graph, Alloc >
38 | init (const graph &, Tdef=T())ne_map< node, T, graph, Alloc >
39 | ne_map ()ne_map< node, T, graph, Alloc > [protected]
40 | ne_map (const graph &g, Tdef=T())ne_map< node, T, graph, Alloc > [explicit, protected]
41 | node_map ()node_map< T, Alloc > [inline]
42 | node_map (const graph &g, T t=T())node_map< T, Alloc > [inline, explicit]
43 | operator[] (nodekey)ne_map< node, T, graph, Alloc >
44 | operator[] (nodekey) const ne_map< node, T, graph, Alloc >
45 |
46 | University of Passau
47 | -
48 | FMI
49 | -
50 | Theoretical
51 | Computer Science
52 |
53 |
56 |
57 |
58 |
--------------------------------------------------------------------------------
/doc/manual/a00185.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/rdmpage/graph-template-library/fb195cbaab5572312f230950e314522afc38eca2/doc/manual/a00185.gif
--------------------------------------------------------------------------------
/doc/manual/a00185.map:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/doc/manual/a00185.md5:
--------------------------------------------------------------------------------
1 | 04aa713eb152f42c64ad95ebccfda64e
--------------------------------------------------------------------------------
/doc/manual/a00188.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/rdmpage/graph-template-library/fb195cbaab5572312f230950e314522afc38eca2/doc/manual/a00188.gif
--------------------------------------------------------------------------------
/doc/manual/a00188.map:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/doc/manual/a00188.md5:
--------------------------------------------------------------------------------
1 | d5e3659f92744ba718a45c1511e9fc85
--------------------------------------------------------------------------------
/doc/manual/a00190.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/rdmpage/graph-template-library/fb195cbaab5572312f230950e314522afc38eca2/doc/manual/a00190.gif
--------------------------------------------------------------------------------
/doc/manual/a00190.map:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/doc/manual/a00190.md5:
--------------------------------------------------------------------------------
1 | e214e9e43cf1d093d1b44c508dea2f26
--------------------------------------------------------------------------------
/doc/manual/a00194.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/rdmpage/graph-template-library/fb195cbaab5572312f230950e314522afc38eca2/doc/manual/a00194.gif
--------------------------------------------------------------------------------
/doc/manual/a00194.map:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/doc/manual/a00194.md5:
--------------------------------------------------------------------------------
1 | 341eb454afd13c5ab1de36cd9ed5d89f
--------------------------------------------------------------------------------
/doc/manual/a00196.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/rdmpage/graph-template-library/fb195cbaab5572312f230950e314522afc38eca2/doc/manual/a00196.gif
--------------------------------------------------------------------------------
/doc/manual/a00196.map:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
--------------------------------------------------------------------------------
/doc/manual/a00196.md5:
--------------------------------------------------------------------------------
1 | b1e402323333306a0b5c387825b567fe
--------------------------------------------------------------------------------
/doc/manual/a00199.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/rdmpage/graph-template-library/fb195cbaab5572312f230950e314522afc38eca2/doc/manual/a00199.gif
--------------------------------------------------------------------------------
/doc/manual/a00199.map:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/doc/manual/a00199.md5:
--------------------------------------------------------------------------------
1 | 9b0cca9e12f9f45b868470553a58476b
--------------------------------------------------------------------------------
/doc/manual/a00201.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/rdmpage/graph-template-library/fb195cbaab5572312f230950e314522afc38eca2/doc/manual/a00201.gif
--------------------------------------------------------------------------------
/doc/manual/a00201.map:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
--------------------------------------------------------------------------------
/doc/manual/a00201.md5:
--------------------------------------------------------------------------------
1 | 5bfd2717d2a8a18efd48778e5142a7be
--------------------------------------------------------------------------------
/doc/manual/a00205.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/rdmpage/graph-template-library/fb195cbaab5572312f230950e314522afc38eca2/doc/manual/a00205.gif
--------------------------------------------------------------------------------
/doc/manual/a00205.map:
--------------------------------------------------------------------------------
1 |
2 |
3 |
--------------------------------------------------------------------------------
/doc/manual/a00205.md5:
--------------------------------------------------------------------------------
1 | 1770f75c4cb2757b3ab4b0f7fb067d1d
--------------------------------------------------------------------------------
/doc/manual/a00207.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/rdmpage/graph-template-library/fb195cbaab5572312f230950e314522afc38eca2/doc/manual/a00207.gif
--------------------------------------------------------------------------------
/doc/manual/a00207.map:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
--------------------------------------------------------------------------------
/doc/manual/a00207.md5:
--------------------------------------------------------------------------------
1 | d171ec36e50a49cb095eec952d848908
--------------------------------------------------------------------------------
/doc/manual/a00210.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/rdmpage/graph-template-library/fb195cbaab5572312f230950e314522afc38eca2/doc/manual/a00210.gif
--------------------------------------------------------------------------------
/doc/manual/a00210.map:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
--------------------------------------------------------------------------------
/doc/manual/a00210.md5:
--------------------------------------------------------------------------------
1 | b37c05f13e097bc81cd86f5bc8938746
--------------------------------------------------------------------------------
/doc/manual/a00212.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/rdmpage/graph-template-library/fb195cbaab5572312f230950e314522afc38eca2/doc/manual/a00212.gif
--------------------------------------------------------------------------------
/doc/manual/a00212.map:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/doc/manual/a00212.md5:
--------------------------------------------------------------------------------
1 | 9194619c6bc0d11005171c002f51febd
--------------------------------------------------------------------------------
/doc/manual/a00214.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/rdmpage/graph-template-library/fb195cbaab5572312f230950e314522afc38eca2/doc/manual/a00214.gif
--------------------------------------------------------------------------------
/doc/manual/a00214.map:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/doc/manual/a00214.md5:
--------------------------------------------------------------------------------
1 | 66d9274796b99a21e0be1e2bab9a6bb8
--------------------------------------------------------------------------------
/doc/manual/a00216.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/rdmpage/graph-template-library/fb195cbaab5572312f230950e314522afc38eca2/doc/manual/a00216.gif
--------------------------------------------------------------------------------
/doc/manual/a00216.map:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/doc/manual/a00216.md5:
--------------------------------------------------------------------------------
1 | 98f9c282a8fe58122020ed73ec85f48a
--------------------------------------------------------------------------------
/doc/manual/a00218.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/rdmpage/graph-template-library/fb195cbaab5572312f230950e314522afc38eca2/doc/manual/a00218.gif
--------------------------------------------------------------------------------
/doc/manual/a00218.map:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/doc/manual/a00218.md5:
--------------------------------------------------------------------------------
1 | 1637b6913098313049146672cda7dbaf
--------------------------------------------------------------------------------
/doc/manual/a00220.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/rdmpage/graph-template-library/fb195cbaab5572312f230950e314522afc38eca2/doc/manual/a00220.gif
--------------------------------------------------------------------------------
/doc/manual/a00220.map:
--------------------------------------------------------------------------------
1 |
2 |
3 |
--------------------------------------------------------------------------------
/doc/manual/a00220.md5:
--------------------------------------------------------------------------------
1 | 0678ada89b918981880175683cd93e4c
--------------------------------------------------------------------------------
/doc/manual/a00222.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/rdmpage/graph-template-library/fb195cbaab5572312f230950e314522afc38eca2/doc/manual/a00222.gif
--------------------------------------------------------------------------------
/doc/manual/a00222.map:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/doc/manual/a00222.md5:
--------------------------------------------------------------------------------
1 | 116e677c37b3380aeb01e66282cd2e97
--------------------------------------------------------------------------------
/doc/manual/a00224.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/rdmpage/graph-template-library/fb195cbaab5572312f230950e314522afc38eca2/doc/manual/a00224.gif
--------------------------------------------------------------------------------
/doc/manual/a00224.map:
--------------------------------------------------------------------------------
1 |
2 |
3 |
--------------------------------------------------------------------------------
/doc/manual/a00224.md5:
--------------------------------------------------------------------------------
1 | 433c7fa2f843d97ceacef26ec5b3d160
--------------------------------------------------------------------------------
/doc/manual/a00226.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/rdmpage/graph-template-library/fb195cbaab5572312f230950e314522afc38eca2/doc/manual/a00226.gif
--------------------------------------------------------------------------------
/doc/manual/a00226.map:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/doc/manual/a00226.md5:
--------------------------------------------------------------------------------
1 | 48a02a70a50a7dcfcf282650aa76e91a
--------------------------------------------------------------------------------
/doc/manual/a00228.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/rdmpage/graph-template-library/fb195cbaab5572312f230950e314522afc38eca2/doc/manual/a00228.gif
--------------------------------------------------------------------------------
/doc/manual/a00228.map:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/doc/manual/a00228.md5:
--------------------------------------------------------------------------------
1 | 0a1652af460bc50a750cd602357f4e4f
--------------------------------------------------------------------------------
/doc/manual/a00230.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/rdmpage/graph-template-library/fb195cbaab5572312f230950e314522afc38eca2/doc/manual/a00230.gif
--------------------------------------------------------------------------------
/doc/manual/a00230.map:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/doc/manual/a00230.md5:
--------------------------------------------------------------------------------
1 | a43898c896f7409d0a9e096d079218bb
--------------------------------------------------------------------------------
/doc/manual/a00232.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/rdmpage/graph-template-library/fb195cbaab5572312f230950e314522afc38eca2/doc/manual/a00232.gif
--------------------------------------------------------------------------------
/doc/manual/a00232.map:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/doc/manual/a00232.md5:
--------------------------------------------------------------------------------
1 | a061bdd1649235b3125d04509a849255
--------------------------------------------------------------------------------
/doc/manual/deprecated.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | GTL - Graph Template Library: Deprecated List
6 |
7 |
8 |
9 |
10 | Home |
11 | Documentation |
12 | Download |
13 | Platforms |
14 | Projects |
15 | Mailing Lists |
16 | Version History
17 |
18 |
19 |
20 |
28 |
29 | Member graph::del_all_nodes ()
30 | Deletes all visible nodes, i.e. the hidden ones stay.
31 |
32 |
33 |
34 | Member graph::del_all_edges ()
35 | Deletes all visible edges, i.e. the hidden ones stay.
36 |
37 |
38 |
39 | Member graph::all_nodes () const
40 | Returns: a list of all nodes of the graph
41 |
42 |
43 |
44 |
45 | Member graph::all_edges () const
46 | Returns: a list of all edges of the graph
47 |
48 |
49 |
50 |
51 | Member graph::choose_node () const
52 |
53 |
54 |
55 |
56 | Member graph::insert_reverse_edges ()
57 | inserts for all edges of the graph a reverse edge NOTE: this functions does NOT care about existing reverse edges
58 |
59 |
60 | University of Passau
61 | -
62 | FMI
63 | -
64 | Theoretical
65 | Computer Science
66 |
67 |
70 |
71 |
72 |
--------------------------------------------------------------------------------
/doc/manual/doxygen.css:
--------------------------------------------------------------------------------
1 | body
2 | {
3 | margin-left:1cm;
4 | margin-right:1cm;
5 | margin-top:140px;
6 | background-image:url(GTL.jpeg);
7 | background-position:top center;
8 | background-repeat:no-repeat;
9 | font-family:"Lucida Grande", "Verdana", sans-serif;
10 | font-size:10pt;
11 | }
12 |
13 | .links
14 | {
15 | margin-left:-0.5cm;
16 | margin-right:-0.5cm;
17 | text-align:center;
18 | font-size:10pt;
19 | background-color:#CCC;
20 | border-top-width:1px;
21 | border-top-style:solid;
22 | border-bottom-width:1px;
23 | border-bottom-style:solid;
24 | border-color:black;
25 | padding:5px;
26 | }
27 |
28 | .copyright
29 | {
30 | margin-right:-0.5cm;
31 | text-align:right;
32 | font-size:10pt;
33 | }
34 |
35 | h1
36 | {
37 | text-align:center;
38 | color: #C60;
39 | font-style: normal;
40 | }
41 |
42 | CAPTION
43 | {
44 | font-weight:bold
45 | }
46 |
47 | TD.md
48 | {
49 | background-color:#CCC;
50 | font-weight: bold;
51 | }
52 |
53 | TD.mdname1
54 | {
55 | background-color: #CCC;
56 | font-weight: bold;
57 | color: #602020;
58 | }
59 |
60 | TD.mdname
61 | {
62 | background-color:#CCC;
63 | font-weight: bold;
64 | width: 600px;
65 | }
66 |
67 | DIV.ah
68 | {
69 | background-color: #CCC;
70 | font-weight: bold;
71 | margin-bottom: 3px;
72 | margin-top: 3px;
73 | }
74 |
75 |
76 | a:link
77 | {
78 | color: #900;
79 | font-style: normal;
80 | font-weight: normal;
81 | text-decoration: none;
82 | }
83 |
84 | a:visited
85 | {
86 | color: #600;
87 | font-style: normal;
88 | font-weight: normal;
89 | text-decoration: none;
90 | }
91 |
92 | a:active
93 | {
94 | color: #C60;
95 | font-style: normal;
96 | font-weight: normal;
97 | text-decoration: none;
98 | }
99 |
100 | a:hover
101 | {
102 | color: #900;
103 | font-style: normal;
104 | font-weight: normal;
105 | text-decoration: underline;
106 | }
107 |
--------------------------------------------------------------------------------
/doc/manual/doxygen.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/rdmpage/graph-template-library/fb195cbaab5572312f230950e314522afc38eca2/doc/manual/doxygen.png
--------------------------------------------------------------------------------
/doc/manual/form_0.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/rdmpage/graph-template-library/fb195cbaab5572312f230950e314522afc38eca2/doc/manual/form_0.png
--------------------------------------------------------------------------------
/doc/manual/form_1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/rdmpage/graph-template-library/fb195cbaab5572312f230950e314522afc38eca2/doc/manual/form_1.png
--------------------------------------------------------------------------------
/doc/manual/form_2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/rdmpage/graph-template-library/fb195cbaab5572312f230950e314522afc38eca2/doc/manual/form_2.png
--------------------------------------------------------------------------------
/doc/manual/form_3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/rdmpage/graph-template-library/fb195cbaab5572312f230950e314522afc38eca2/doc/manual/form_3.png
--------------------------------------------------------------------------------
/doc/manual/form_4.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/rdmpage/graph-template-library/fb195cbaab5572312f230950e314522afc38eca2/doc/manual/form_4.png
--------------------------------------------------------------------------------
/doc/manual/form_5.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/rdmpage/graph-template-library/fb195cbaab5572312f230950e314522afc38eca2/doc/manual/form_5.png
--------------------------------------------------------------------------------
/doc/manual/form_6.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/rdmpage/graph-template-library/fb195cbaab5572312f230950e314522afc38eca2/doc/manual/form_6.png
--------------------------------------------------------------------------------
/doc/manual/form_7.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/rdmpage/graph-template-library/fb195cbaab5572312f230950e314522afc38eca2/doc/manual/form_7.png
--------------------------------------------------------------------------------
/doc/manual/formula.repository:
--------------------------------------------------------------------------------
1 | \form#0:$\mathcal{O}((|V| + |E|) log |V|)$
2 | \form#1:$\ge 0$
3 | \form#2:$\mathcal{O}(\mbox{length of this path})$
4 | \form#3:$N$
5 | \form#4:$\mathcal{O}(N)$
6 | \form#5:$\mathcal{O}(E)$
7 | \form#6:$E$
8 | \form#7:$\mathcal{O}(1)$
9 |
--------------------------------------------------------------------------------
/doc/manual/functions_0x71.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | GTL - Graph Template Library: Class Members
6 |
7 |
8 |
9 |
10 | Home |
11 | Documentation |
12 | Download |
13 | Platforms |
14 | Projects |
15 | Mailing Lists |
16 | Version History
17 |
18 |
19 |
20 |
28 |
36 |
45 |
46 |
47 | a
48 | b
49 | c
50 | d
51 | e
52 | f
53 | g
54 | h
55 | i
56 | l
57 | m
58 | n
59 | o
60 | p
61 | q
62 | r
63 | s
64 | t
65 | u
66 | w
67 | ~
68 |
69 |
70 |
71 |
72 | Here is a list of all documented class members with links to the class documentation for each member:
73 |
74 |
78 |
79 | University of Passau
80 | -
81 | FMI
82 | -
83 | Theoretical
84 | Computer Science
85 |
86 |
89 |
90 |
91 |
--------------------------------------------------------------------------------
/doc/manual/functions_eval.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | GTL - Graph Template Library: Class Members - Enumerator
6 |
7 |
8 |
9 |
10 | Home |
11 | Documentation |
12 | Download |
13 | Platforms |
14 | Projects |
15 | Mailing Lists |
16 | Version History
17 |
18 |
19 |
20 |
28 |
36 |
45 |
46 |
47 |
53 |
54 | University of Passau
55 | -
56 | FMI
57 | -
58 | Theoretical
59 | Computer Science
60 |
61 |
64 |
65 |
66 |
--------------------------------------------------------------------------------
/doc/manual/functions_func_0x68.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | GTL - Graph Template Library: Class Members - Functions
6 |
7 |
8 |
9 |
10 | Home |
11 | Documentation |
12 | Download |
13 | Platforms |
14 | Projects |
15 | Mailing Lists |
16 | Version History
17 |
18 |
19 |
20 |
28 |
36 |
45 |
46 |
47 | a
48 | b
49 | c
50 | d
51 | e
52 | f
53 | g
54 | h
55 | i
56 | l
57 | m
58 | n
59 | o
60 | p
61 | r
62 | s
63 | t
64 | u
65 | w
66 | ~
67 |
68 |
69 |
70 |
71 |
72 |
73 |
74 | hide_edge()
75 | : graph
76 | hide_node()
77 | : graph
78 |
79 |
80 | University of Passau
81 | -
82 | FMI
83 | -
84 | Theoretical
85 | Computer Science
86 |
87 |
90 |
91 |
92 |
--------------------------------------------------------------------------------
/doc/manual/functions_func_0x75.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | GTL - Graph Template Library: Class Members - Functions
6 |
7 |
8 |
9 |
10 | Home |
11 | Documentation |
12 | Download |
13 | Platforms |
14 | Projects |
15 | Mailing Lists |
16 | Version History
17 |
18 |
19 |
20 |
28 |
36 |
45 |
46 |
47 | a
48 | b
49 | c
50 | d
51 | e
52 | f
53 | g
54 | h
55 | i
56 | l
57 | m
58 | n
59 | o
60 | p
61 | r
62 | s
63 | t
64 | u
65 | w
66 | ~
67 |
68 |
69 |
70 |
71 |
72 |
73 |
74 | unused_node_handler()
75 | : bfs
76 | used_node_handler()
77 | : bfs
78 |
79 |
80 | University of Passau
81 | -
82 | FMI
83 | -
84 | Theoretical
85 | Computer Science
86 |
87 |
90 |
91 |
92 |
--------------------------------------------------------------------------------
/doc/manual/graph_legend.dot:
--------------------------------------------------------------------------------
1 | digraph G
2 | {
3 | edge [fontname="FreeSans.ttf",fontsize=10,labelfontname="FreeSans.ttf",labelfontsize=10];
4 | node [fontname="FreeSans.ttf",fontsize=10,shape=record];
5 | Node9 [shape="box",label="Inherited",fontsize=10,height=0.2,width=0.4,fontname="FreeSans.ttf",fillcolor="grey75",style="filled" fontcolor="black"];
6 | Node10 -> Node9 [dir=back,color="midnightblue",fontsize=10,style="solid",fontname="FreeSans.ttf"];
7 | Node10 [shape="box",label="PublicBase",fontsize=10,height=0.2,width=0.4,fontname="FreeSans.ttf",color="black",URL="$classPublicBase.html"];
8 | Node11 -> Node10 [dir=back,color="midnightblue",fontsize=10,style="solid",fontname="FreeSans.ttf"];
9 | Node11 [shape="box",label="Truncated",fontsize=10,height=0.2,width=0.4,fontname="FreeSans.ttf",color="red",URL="$classTruncated.html"];
10 | Node13 -> Node9 [dir=back,color="darkgreen",fontsize=10,style="solid",fontname="FreeSans.ttf"];
11 | Node13 [shape="box",label="ProtectedBase",fontsize=10,height=0.2,width=0.4,fontname="FreeSans.ttf",color="black",URL="$classProtectedBase.html"];
12 | Node14 -> Node9 [dir=back,color="firebrick4",fontsize=10,style="solid",fontname="FreeSans.ttf"];
13 | Node14 [shape="box",label="PrivateBase",fontsize=10,height=0.2,width=0.4,fontname="FreeSans.ttf",color="black",URL="$classPrivateBase.html"];
14 | Node15 -> Node9 [dir=back,color="midnightblue",fontsize=10,style="solid",fontname="FreeSans.ttf"];
15 | Node15 [shape="box",label="Undocumented",fontsize=10,height=0.2,width=0.4,fontname="FreeSans.ttf",color="grey75"];
16 | Node16 -> Node9 [dir=back,color="midnightblue",fontsize=10,style="solid",fontname="FreeSans.ttf"];
17 | Node16 [shape="box",label="Templ< int >",fontsize=10,height=0.2,width=0.4,fontname="FreeSans.ttf",color="black",URL="$classTempl.html"];
18 | Node17 -> Node16 [dir=back,color="orange",fontsize=10,style="dashed",label="< int >",fontname="FreeSans.ttf"];
19 | Node17 [shape="box",label="Templ< T >",fontsize=10,height=0.2,width=0.4,fontname="FreeSans.ttf",color="black",URL="$classTempl.html"];
20 | Node18 -> Node9 [dir=back,color="darkorchid3",fontsize=10,style="dashed",label="m_usedClass",fontname="FreeSans.ttf"];
21 | Node18 [shape="box",label="Used",fontsize=10,height=0.2,width=0.4,fontname="FreeSans.ttf",color="black",URL="$classUsed.html"];
22 | }
23 |
--------------------------------------------------------------------------------
/doc/manual/graph_legend.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/rdmpage/graph-template-library/fb195cbaab5572312f230950e314522afc38eca2/doc/manual/graph_legend.gif
--------------------------------------------------------------------------------
/doc/manual/hierarchy.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | GTL - Graph Template Library: Hierarchical Index
6 |
7 |
8 |
9 |
10 | Home |
11 | Documentation |
12 | Download |
13 | Platforms |
14 | Projects |
15 | Mailing Lists |
16 | Version History
17 |
18 |
19 |
20 |
28 |
36 | GTL - Graph Template Library Class Hierarchy Go to the graphical class hierarchy
37 |
38 | This inheritance list is sorted roughly, but not completely, alphabetically:
39 | algorithm
40 |
60 | bin_heap< T, Pred >
61 | edge
62 | GML_error
63 | graph
64 | ne_map< Key, Value, Graph, Alloc >
65 | ne_map< edge, T, graph, Alloc >
66 |
69 | ne_map< node, T, graph, Alloc >
70 |
73 | node
74 | planar_embedding
75 | pq_tree
76 | symlist< T >
77 |
78 |
79 | University of Passau
80 | -
81 | FMI
82 | -
83 | Theoretical
84 | Computer Science
85 |
86 |
89 |
90 |
91 |
--------------------------------------------------------------------------------
/doc/manual/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | GTL - Graph Template Library: Main Page
6 |
7 |
8 |
9 |
10 | Home |
11 | Documentation |
12 | Download |
13 | Platforms |
14 | Projects |
15 | Mailing Lists |
16 | Version History
17 |
18 |
19 |
20 |
28 | GTL - Graph Template Library Documentation
29 |
30 |
1.2.4
31 | University of Passau
32 | -
33 | FMI
34 | -
35 | Theoretical
36 | Computer Science
37 |
38 |
41 |
42 |
43 |
--------------------------------------------------------------------------------
/doc/manual/pages.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | GTL - Graph Template Library: Page Index
6 |
7 |
8 |
9 |
10 | Home |
11 | Documentation |
12 | Download |
13 | Platforms |
14 | Projects |
15 | Mailing Lists |
16 | Version History
17 |
18 |
19 |
20 |
28 | GTL - Graph Template Library Related Pages Here is a list of all related documentation pages:
32 |
33 | University of Passau
34 | -
35 | FMI
36 | -
37 | Theoretical
38 | Computer Science
39 |
40 |
43 |
44 |
45 |
--------------------------------------------------------------------------------
/doc/manual/tab_b.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/rdmpage/graph-template-library/fb195cbaab5572312f230950e314522afc38eca2/doc/manual/tab_b.gif
--------------------------------------------------------------------------------
/doc/manual/tab_l.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/rdmpage/graph-template-library/fb195cbaab5572312f230950e314522afc38eca2/doc/manual/tab_l.gif
--------------------------------------------------------------------------------
/doc/manual/tab_r.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/rdmpage/graph-template-library/fb195cbaab5572312f230950e314522afc38eca2/doc/manual/tab_r.gif
--------------------------------------------------------------------------------
/doc/manual/tabs.css:
--------------------------------------------------------------------------------
1 | /* tabs styles, based on http://www.alistapart.com/articles/slidingdoors */
2 |
3 | DIV.tabs
4 | {
5 | float : left;
6 | width : 100%;
7 | background : url("tab_b.gif") repeat-x bottom;
8 | margin-bottom : 4px;
9 | }
10 |
11 | DIV.tabs UL
12 | {
13 | margin : 0px;
14 | padding-left : 10px;
15 | list-style : none;
16 | }
17 |
18 | DIV.tabs LI, DIV.tabs FORM
19 | {
20 | display : inline;
21 | margin : 0px;
22 | padding : 0px;
23 | }
24 |
25 | DIV.tabs FORM
26 | {
27 | float : right;
28 | }
29 |
30 | DIV.tabs A
31 | {
32 | float : left;
33 | background : url("tab_r.gif") no-repeat right top;
34 | border-bottom : 1px solid #84B0C7;
35 | font-size : x-small;
36 | font-weight : bold;
37 | text-decoration : none;
38 | }
39 |
40 | DIV.tabs A:hover
41 | {
42 | background-position: 100% -150px;
43 | }
44 |
45 | DIV.tabs A:link, DIV.tabs A:visited,
46 | DIV.tabs A:active, DIV.tabs A:hover
47 | {
48 | color: #1A419D;
49 | }
50 |
51 | DIV.tabs SPAN
52 | {
53 | float : left;
54 | display : block;
55 | background : url("tab_l.gif") no-repeat left top;
56 | padding : 5px 9px;
57 | white-space : nowrap;
58 | }
59 |
60 | DIV.tabs INPUT
61 | {
62 | float : right;
63 | display : inline;
64 | font-size : 1em;
65 | }
66 |
67 | DIV.tabs TD
68 | {
69 | font-size : x-small;
70 | font-weight : bold;
71 | text-decoration : none;
72 | }
73 |
74 |
75 |
76 | /* Commented Backslash Hack hides rule from IE5-Mac \*/
77 | DIV.tabs SPAN {float : none;}
78 | /* End IE5-Mac hack */
79 |
80 | DIV.tabs A:hover SPAN
81 | {
82 | background-position: 0% -150px;
83 | }
84 |
85 | DIV.tabs LI.current A
86 | {
87 | background-position: 100% -150px;
88 | border-width : 0px;
89 | }
90 |
91 | DIV.tabs LI.current SPAN
92 | {
93 | background-position: 0% -150px;
94 | padding-bottom : 6px;
95 | }
96 |
97 | DIV.nav
98 | {
99 | background : none;
100 | border : none;
101 | border-bottom : 1px solid #84B0C7;
102 | }
103 |
--------------------------------------------------------------------------------
/doc/platforms.html:
--------------------------------------------------------------------------------
1 |
3 |
4 |
5 | [ GTL ] Supported Platforms
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 | Home |
15 | Documentation |
16 | Download |
17 | Platforms |
18 | Projects |
19 | Mailing Lists |
20 | Version History
21 |
22 | { Supported Platforms }
23 | At the moment the following configurations are tested:
24 |
25 |
26 | Windows XP using Visual Studio .NET
27 | Linux using gcc 3.x, 4.x
28 | Solaris using gcc 3.x, 4.x
29 | Mac OS X 10.2.x, 10.3.x, and 10.4.x
30 |
31 |
32 | GTL should basically compile on any platform with an recent gcc,
33 | i.e., at least 3.0, although we recommend at least version 3.1. If
34 | you suceed in compiling GTL on any platform not listed above,
35 | please send us a mail .
37 |
38 |
39 | University of Passau
40 | -
41 | FMI
42 | -
43 | Theoretical
44 | Computer Science
45 |
46 |
49 |
50 |
51 |
52 |
55 |
56 |
57 |
58 |
59 |
60 |
--------------------------------------------------------------------------------
/doc/refer.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | People and Projects using GTL
5 |
6 |
12 |
13 |
14 |
15 |
16 | Home |
17 | Documentation |
18 | Download |
19 | Platforms |
20 | Projects |
21 | Mailing Lists |
22 | Version History
23 |
24 | { People and Projects using GTL }
25 |
29 |
35 |
39 |
44 |
49 |
54 |
58 |
59 |
Kjell Petersen
60 |
61 | Bioinformatics: Modeling protein folding
62 |
63 |
67 |
72 |
76 |
81 |
84 |
89 |
90 | University of Passau
91 | -
92 | FMI
93 | -
94 | Theoretical
95 | Computer Science
96 |
97 |
100 |
101 |
102 |
103 |
104 |
105 |
--------------------------------------------------------------------------------
/doc/register.html:
--------------------------------------------------------------------------------
1 |
3 |
4 |
5 | [ GTL ] Register for Download
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 | Home |
15 | Documentation |
16 | Download |
17 | Platforms |
18 | Projects |
19 | Mailing Lists |
20 | Version History
21 |
22 |
23 |
{ License } The
24 | Graph Template Library (GTL) is copyrighted by the University of
25 | Passau. The following terms apply to all files in the GTL
26 | distribution:
27 |
28 |
The authors hereby grant permission to use, copy and modify
29 | this software and its documentation for any purpose, except the
30 | ones mentioned in this copyright notice, provided that existing
31 | copyright notices are retained in all copies. No written
32 | agreement, license, or royally fee is required for any of the
33 | authorized uses.
34 |
35 |
36 |
Commercial use of GTL without prior written permission is
37 | prohibited. GTL must not be distributed without prior written
38 | permission. The terms of this copyright notice also apply to any
39 | modification to this software.
40 |
41 |
42 |
43 | { Download } With the release of version 1.0.0 the download
44 | policy of GTL has been changed. GTL can be downloaded free of charge for non-commercial use. Please follow the
45 | steps below to get access to the download archive:
46 |
47 |
48 |
49 | Send an email to
50 | gtl-download@infosun.fmi.uni-passau.de containing
51 | the following information:
52 |
53 | Your Name
54 | Your Affiliation
55 | And your email address. Please use your academic address, e.g. .edu, if you have. Otherwise your are
56 | classified as a "commercial" user.
57 |
58 |
59 | As soon as possible you will receive an answer from the GTL Team containing the access code to the
60 | download page .
61 |
62 |
63 |
64 | If you intend to use GTL commercially please send an email to brandenb@fmi.uni-passau.de .
66 |
67 |
68 | University of Passau
69 | -
70 | FMI
71 | -
72 | Theoretical
73 | Computer Science
74 |
75 |
78 |
79 |
80 |
81 |
84 |
85 |
86 |
87 |
88 |
89 |
--------------------------------------------------------------------------------
/doc/style.css:
--------------------------------------------------------------------------------
1 | body
2 | {
3 | margin-left:1cm;
4 | margin-right:1cm;
5 | margin-top:140px;
6 | background-image:url(icons/GTL.jpeg);
7 | background-position:top center;
8 | background-repeat:no-repeat;
9 | font-family:"Lucida Grande", "Verdana", sans-serif;
10 | font-size:10pt;
11 | }
12 |
13 | .wide
14 | {
15 | margin-top:1em;
16 | }
17 |
18 | .links
19 | {
20 | margin-left:-0.5cm;
21 | margin-right:-0.5cm;
22 | text-align:center;
23 | font-size:10pt;
24 | background-color:#CCC;
25 | border-top-width:1px;
26 | border-top-style:solid;
27 | border-bottom-width:1px;
28 | border-bottom-style:solid;
29 | border-color:black;
30 | padding:5px;
31 | }
32 |
33 | .copyright
34 | {
35 | margin-right:-0.5cm;
36 | text-align:right;
37 | font-size:8pt;
38 | }
39 |
40 | .heading
41 | {
42 | color: #C60;
43 | font-weight: bold;
44 | font-style: normal;
45 | padding-right:5pt;
46 | }
47 |
48 | .license
49 | {
50 | font-style:italic;
51 | }
52 |
53 | a:link
54 | {
55 | color: #900;
56 | font-style: normal;
57 | font-weight: normal;
58 | text-decoration: none;
59 | }
60 |
61 | a:visited
62 | {
63 | color: #600;
64 | font-style: normal;
65 | font-weight: normal;
66 | text-decoration: none;
67 | }
68 |
69 | a:active
70 | {
71 | color: #C60;
72 | font-style: normal;
73 | font-weight: normal;
74 | text-decoration: none;
75 | }
76 |
77 | a:hover
78 | {
79 | color: #900;
80 | font-style: normal;
81 | font-weight: normal;
82 | text-decoration: underline;
83 | }
84 |
--------------------------------------------------------------------------------
/doc/userguide/Makefile.am:
--------------------------------------------------------------------------------
1 | #===========================================================================
2 | #
3 | # doc/latex/Makefile.am
4 | #
5 | #===========================================================================
6 | # $Id: Makefile.am,v 1.1 2002/11/08 11:56:34 raitner Exp $
7 |
8 | #---------------------------------------------------------------------------
9 | # Files
10 | #---------------------------------------------------------------------------
11 |
12 |
13 | CLEANFILES = $(PACKAGE) *.aux $(PACKAGE).dvi \
14 | *.idx *.log *.toc *.ind *.ilg
15 |
16 | DISTCLEANFILES = $(PACKAGE).ps
17 |
18 | #---------------------------------------------------------------------------
19 | # Targets
20 | #---------------------------------------------------------------------------
21 |
22 | .PHONY: doc
23 | doc: $(PACKAGE).ps
24 |
25 | #---------------------------------------------------------------------------
26 | # Rules
27 | #---------------------------------------------------------------------------
28 |
29 | %.dvi: %.tex %.cls
30 | TEXINPUTS=$(srcdir):: latex $<
31 | makeindex $(@:.dvi=.idx)
32 | TEXINPUTS=$(srcdir):: latex $<
33 |
34 | %.ps: %.dvi
35 | dvips -o $@ $<
36 |
37 | dist-hook: $(PACKAGE).ps
38 | cp $(PACKAGE).ps $(distdir)
39 |
40 | #---------------------------------------------------------------------------
41 | # end of file
42 | #---------------------------------------------------------------------------
43 |
--------------------------------------------------------------------------------
/include/GTL/Makefile.am:
--------------------------------------------------------------------------------
1 | #===========================================================================
2 | #
3 | # include/GTL/Makefile.am
4 | #
5 | #===========================================================================
6 | # $Id: Makefile.am,v 1.28 2003/01/31 08:58:08 chris Exp $
7 |
8 | BUILT_SOURCES = version.h
9 |
10 | pkginclude_HEADERS = \
11 | GTL.h \
12 | algorithm.h \
13 | bfs.h \
14 | biconnectivity.h \
15 | debug.h \
16 | dfs.h \
17 | edge.h \
18 | edge_data.h \
19 | edge_map.h \
20 | embedding.h \
21 | gml_parser.h \
22 | gml_scanner.h \
23 | graph.h \
24 | ne_map.h \
25 | node.h \
26 | node_data.h \
27 | node_map.h \
28 | planarity.h \
29 | pq_node.h \
30 | pq_tree.h \
31 | st_number.h \
32 | symlist.h \
33 | topsort.h \
34 | maxflow_ff.h \
35 | maxflow_pp.h \
36 | maxflow_sap.h \
37 | components.h \
38 | fm_partition.h \
39 | ratio_cut_partition.h \
40 | min_tree.h \
41 | dijkstra.h \
42 | bellman_ford.h \
43 | bin_heap.h \
44 | bid_dijkstra.h
45 |
46 | nodist_pkginclude_HEADERS = \
47 | version.h
48 |
49 |
50 | dist-hook: version.h
51 | cp version.h $(distdir)
52 |
53 | #---------------------------------------------------------------------------
54 | # end of file
55 | #---------------------------------------------------------------------------
56 |
57 |
--------------------------------------------------------------------------------
/include/GTL/algorithm.h:
--------------------------------------------------------------------------------
1 | /* This software is distributed under the GNU Lesser General Public License */
2 | //==========================================================================
3 | //
4 | // algorithm.h
5 | //
6 | //==========================================================================
7 | // $Id: algorithm.h,v 1.14 2003/03/24 15:58:54 raitner Exp $
8 |
9 | #ifndef GTL_ALGORITHM_H
10 | #define GTL_ALGORITHM_H
11 |
12 | #include
13 | #include
14 |
15 | __GTL_BEGIN_NAMESPACE
16 |
17 | /**
18 | * $Date: 2003/03/24 15:58:54 $
19 | * $Revision: 1.14 $
20 | *
21 | * @brief Abstract baseclass for all algoritm-classes.
22 | */
23 | class GTL_EXTERN algorithm {
24 | public:
25 | /**
26 | * @var algorithm::GTL_OK
27 | * Used as (positive) return value of algorithm::check and
28 | * algorithm::run.
29 | */
30 |
31 | /**
32 | * @var algorithm::GTL_ERROR
33 | * Used as (negative) return value of algorithm::check and
34 | * algorithm::run.
35 | */
36 |
37 | /**
38 | * @brief Return values for algorithm::check and algorithm::run
39 | */
40 | enum {
41 | GTL_OK = 1,
42 | GTL_ERROR = 0
43 | };
44 |
45 | /**
46 | * @brief Creates an algorithm object.
47 | */
48 | algorithm () { };
49 |
50 | /**
51 | * @brief Destroys the algorithm object.
52 | */
53 | virtual ~algorithm () { };
54 |
55 | /**
56 | * @brief Applies %algorithm to %graph g.
57 | *
58 | * @param g %graph
59 | * @retval algorithm::GTL_OK on success
60 | * @retval algorithm::GTL_ERROR otherwise
61 | */
62 | virtual int run (graph& g) = 0;
63 |
64 | /**
65 | * @brief Checks whether all preconditions are satisfied.
66 | *
67 | * @em Please @em note: It is
68 | * definitly required (and #run relies on it),
69 | * that this method was called in advance.
70 | *
71 | * @param g %graph
72 | * @retval algorithm::GTL_OK if %algorithm can be applied
73 | * @retval algorithm::GTL_ERROR otherwise.
74 | */
75 | virtual int check (graph& g) = 0;
76 |
77 | /**
78 | * @brief Resets %algorithm
79 | *
80 | * Prepares the %algorithm to be applied to
81 | * another %graph. @em Please @em note: The options an
82 | * %algorithm may support do @em not get reset by
83 | * this. It is just to reset internally used datastructures.
84 | */
85 | virtual void reset () = 0;
86 | };
87 |
88 | __GTL_END_NAMESPACE
89 |
90 | #endif // GTL_ALGORITHM_H
91 |
92 | //--------------------------------------------------------------------------
93 | // end of file
94 | //--------------------------------------------------------------------------
95 |
--------------------------------------------------------------------------------
/include/GTL/components.h:
--------------------------------------------------------------------------------
1 | /* This software is distributed under the GNU Lesser General Public License */
2 | //==========================================================================
3 | //
4 | // components.h
5 | //
6 | //==========================================================================
7 | // $Id: components.h,v 1.5 2003/04/03 11:44:42 raitner Exp $
8 |
9 | #ifndef GTL_COMPONENTS_H
10 | #define GTL_COMPONENTS_H
11 |
12 | #include
13 | #include
14 |
15 | #include
16 |
17 | __GTL_BEGIN_NAMESPACE
18 | /**
19 | * @brief Connected components algorithm
20 | */
21 | class GTL_EXTERN components : public dfs
22 | {
23 | public:
24 | /**
25 | * @brief Creates connected components algorithm object.
26 | *
27 | * @sa dfs::dfs
28 | */
29 | components ();
30 |
31 | /**
32 | * @brief Destroys connected components algorithm object.
33 | *
34 | * @sa dfs::~dfs
35 | */
36 | virtual ~components () {}
37 |
38 | /**
39 | * @brief Checks whether the connected components algorithm can be applied
40 | *
41 | * Necessary preconditions:
42 | * - G is undirected.
43 | * - scanning of whole graph is enabled.
44 | * - DFS may be applied
45 | *
46 | * @param G graph.
47 | * @return algorithm::GTL_OK if connected components can be computed for G.
48 | * @sa dfs::scan_whole_graph
49 | */
50 | virtual int check (graph& G);
51 |
52 | virtual void reset ();
53 |
54 | /**
55 | * @internal
56 | */
57 | typedef list, list > >::iterator component_iterator;
58 |
59 | /**
60 | * @brief Start iteration over all components (if enabled during
61 | * last call to run).
62 |
63 | * Components are represented as a pair consisting of
64 | * a list of nodes and a list of edges,
65 | * i.e. if @c it is of type @c component_iterator
66 | * then @c *it is of type
67 | * @c pair<list<node>,list<edge> >.
68 | *
69 | * @return iterator to first component
70 | */
71 | component_iterator components_begin ()
72 | { return comp.begin(); }
73 |
74 |
75 | /**
76 | * @brief End of iteration over all components.
77 | *
78 | * @return end of iteration over biconnected components
79 | * @sa biconnectivity::store_components
80 | */
81 | component_iterator components_end ()
82 | { return comp.end(); }
83 |
84 | /**
85 | * @brief Number of components detected during the last run.
86 | *
87 | * @return number of components.
88 | */
89 | int number_of_components () const
90 | {return num_of_components; }
91 |
92 | //-----------------------------------------------------------------------
93 | // Handler used to extend dfs to biconnectivity
94 | //-----------------------------------------------------------------------
95 | /**
96 | * @internal
97 | */
98 | virtual void before_recursive_call_handler (graph&, edge&, node&);
99 |
100 | /**
101 | * @internal
102 | */
103 | virtual void old_adj_node_handler (graph&, edge&, node&);
104 |
105 | /**
106 | * @internal
107 | */
108 | virtual void new_start_handler (graph&, node&);
109 |
110 |
111 | protected:
112 |
113 | /**
114 | * @internal
115 | */
116 | int num_of_components;
117 | /**
118 | * @internal
119 | */
120 | list, list > > comp;
121 | /**
122 | * @internal
123 | */
124 | component_iterator li;
125 | };
126 |
127 | __GTL_END_NAMESPACE
128 |
129 | #endif // GTL_BICONNECTIVITY_H
130 |
131 | //--------------------------------------------------------------------------
132 | // end of file
133 | //--------------------------------------------------------------------------
134 |
--------------------------------------------------------------------------------
/include/GTL/debug.h:
--------------------------------------------------------------------------------
1 | /* This software is distributed under the GNU Lesser General Public License */
2 | //==========================================================================
3 | //
4 | // debug.h - Functions, which are useful for debugging
5 | //
6 | //==========================================================================
7 | // $Id: debug.h,v 1.8 2001/10/10 08:30:00 chris Exp $
8 |
9 | #ifndef GTL_DEBUG_H
10 | #define GTL_DEBUG_H
11 |
12 | #include
13 |
14 | #include
15 |
16 | __GTL_BEGIN_NAMESPACE
17 |
18 | //
19 | // If _DEBUG is defined the funtions defined here will produce output.
20 | // You can either define _DEBUG here (or undef it) or you can set it as
21 | // option of your compiler.
22 | //
23 | //#define _DEBUG 1
24 | //#undef _DEBUG
25 | //
26 |
27 | /**
28 | * @internal
29 | */
30 | class GTL_EXTERN GTL_debug {
31 | public:
32 | static void debug_message (const char*, ...);
33 | static void init_debug();
34 | static void close_debug();
35 | static ostream& os ()
36 | { return *GTLerr; }
37 |
38 | private:
39 | static ostream* GTLerr;
40 | };
41 |
42 | __GTL_END_NAMESPACE
43 |
44 | #endif // GTL_DEBUG_H
45 |
46 | //--------------------------------------------------------------------------
47 | // end of file
48 | //--------------------------------------------------------------------------
49 |
--------------------------------------------------------------------------------
/include/GTL/edge.h:
--------------------------------------------------------------------------------
1 | /* This software is distributed under the GNU Lesser General Public License */
2 | //==========================================================================
3 | //
4 | // edge.h
5 | //
6 | //==========================================================================
7 | // $Id: edge.h,v 1.15 2001/04/17 14:35:25 raitner Exp $
8 |
9 | #ifndef GTL_EDGE_H
10 | #define GTL_EDGE_H
11 |
12 | #include
13 |
14 | #include
15 | #include
16 |
17 | __GTL_BEGIN_NAMESPACE
18 |
19 | //--------------------------------------------------------------------------
20 | // For MSVC 5.0 edge.h has to be included before node.h and
21 | // {node,edge}_data.h. So we only declare needed classnames here
22 | //--------------------------------------------------------------------------
23 |
24 | class node;
25 | class edge_data;
26 |
27 | //--------------------------------------------------------------------------
28 | // edge
29 | //--------------------------------------------------------------------------
30 |
31 | /**
32 | * @short An edge in a graph
33 | */
34 | class GTL_EXTERN edge
35 | {
36 | public:
37 | /**
38 | * Default constructor. Creates an invalid edge.
39 | * The only way to obtain a valid edge is through @ref
40 | * graph#new_edge. Example:
41 | *
42 | * graph g;
43 | * node n1, n2;
44 | * edge e;
45 | *
46 | * n1 = g.new_node();
47 | * n2 = g.new_node();
48 | * e = g.new_edge(n1, n2);
49 | *
50 | *
51 | * @see graph#new_edge
52 | */
53 | edge();
54 |
55 | /**
56 | * Returns the source node of the edge.
57 | *
58 | * @return source
59 | */
60 | node source() const;
61 |
62 | /**
63 | * Returns the target node of the edge.
64 | *
65 | * @return target
66 | */
67 | node target() const;
68 |
69 | /**
70 | * Changes the direction of this edge.
71 | */
72 | void reverse ();
73 |
74 | /**
75 | * Makes n
the source of this edge. Takes O(1) time.
76 | *
77 | * @param n
new source
78 | */
79 | void change_source (node n);
80 |
81 | /**
82 | * Makes n
the target of this edge. Takes O(1) time.
83 | *
84 | * @param n
new target
85 | */
86 | void change_target (node n);
87 |
88 | /**
89 | * Returns the node opposite to n
referring to
90 | * this edge.
91 | *
92 | * @param n
a node incident to this edge
93 | */
94 | const node& opposite(node n) const;
95 |
96 | /**
97 | * @internal
98 | */
99 | list sources() const;
100 |
101 | /**
102 | * @internal
103 | */
104 | list targets() const;
105 |
106 | /**
107 | * @internal
108 | */
109 | int id() const;
110 |
111 |
112 | /**
113 | * Returns true iff node is hidden.
114 | *
115 | * @return true iff node is hidden.
116 | * @see graph#hide_edge
117 | * @see graph#restore_edge
118 | */
119 | bool is_hidden () const;
120 |
121 |
122 | //================================================== Implementation
123 |
124 | private:
125 | edge_data *data;
126 |
127 | void remove_from(int where) const; // 0 = sources, 1 == targets
128 |
129 | friend class graph;
130 | friend class node;
131 |
132 | GTL_EXTERN friend bool operator==(edge, edge);
133 | GTL_EXTERN friend bool operator!=(edge, edge);
134 | GTL_EXTERN friend bool operator<(edge, edge);
135 | GTL_EXTERN friend ostream& operator<< (ostream& os, const edge& e);
136 | };
137 |
138 | __GTL_END_NAMESPACE
139 |
140 | #endif // GTL_EDGE_H
141 |
142 | //--------------------------------------------------------------------------
143 | // end of file
144 | //--------------------------------------------------------------------------
145 |
--------------------------------------------------------------------------------
/include/GTL/edge_data.h:
--------------------------------------------------------------------------------
1 | /* This software is distributed under the GNU Lesser General Public License */
2 | //==========================================================================
3 | //
4 | // edge_data.h - Internal header: DO NO USE IT DIRECTLY !!!
5 | //
6 | //==========================================================================
7 | // $Id: edge_data.h,v 1.9 2000/02/03 12:49:50 raitner Exp $
8 |
9 | #ifndef GTL_EDGE_DATA_H
10 | #define GTL_EDGE_DATA_H
11 |
12 | #include
13 | #include
14 | #include
15 |
16 | #include
17 |
18 | __GTL_BEGIN_NAMESPACE
19 |
20 | /**
21 | * @internal
22 | */
23 | class GTL_EXTERN edge_data
24 | {
25 | public:
26 | int id; // internal numbering
27 | list nodes[2]; // nodes[0] = sources,
28 | // nodes[1] = targets
29 | list::iterator> adj_pos[2];// positions in the adjacency lists
30 | // of sources and targets
31 | list::iterator pos; // position in the list of all edges
32 | bool hidden;
33 | graph* owner;
34 | };
35 |
36 | __GTL_END_NAMESPACE
37 |
38 | #endif // GTL_EDGE_DATA_H
39 |
40 | //--------------------------------------------------------------------------
41 | // end of file
42 | //--------------------------------------------------------------------------
43 |
--------------------------------------------------------------------------------
/include/GTL/edge_map.h:
--------------------------------------------------------------------------------
1 | /* This software is distributed under the GNU Lesser General Public License */
2 | //==========================================================================
3 | //
4 | // edge_map.h
5 | //
6 | //==========================================================================
7 | // $Id: edge_map.h,v 1.8 2005/06/14 12:22:12 raitner Exp $
8 |
9 | #ifndef GTL_EDGE_MAP_H
10 | #define GTL_EDGE_MAP_H
11 |
12 | #include
13 | #include
14 | #include
15 |
16 | __GTL_BEGIN_NAMESPACE
17 |
18 | class graph;
19 |
20 | /**
21 | * @short A specialized map with edges as keys
22 | *
23 | * A edge_map
is a specialized and optimized map
24 | * implementation with edges as keys. Using a edge_map
is
25 | * the standard way to attach user defined information to
26 | * the edges of a graph
.
27 | *
28 | * An example of usage:
29 | *
30 | * graph g;
31 | *
32 | * node v1 = g.new_node();
33 | * node v2 = g.new_node();
34 | * edge e = g.new_edge(v1, v2);
35 | *
36 | * edge_map<string> label(g, "Default Label");
37 | *
38 | * label[e] = "An edge";
39 | *
40 | * assert(label[e] == "An edge");
41 | *
42 | *
43 | * The edges used as keys for a edge_map
MUST be edges
44 | * of the same graph. If you want to use edges from different graphs, use
45 | * a map<edge,T>
instead. A graph and a copy of it are
46 | * considered to be different.
47 | *
48 | * Most of the functionality of edge_map
is inherited from
49 | * @ref ne_map.
50 | *
51 | * @see node_map
52 | */
53 | template >
54 | class edge_map : public ne_map
55 | {
56 | public:
57 |
58 | /**
59 | * Constructs an empty edge_map
not associated with any
60 | * graph
. You may (but need not) call
61 | * ne_map::init(const graph &, T)
to associate it to
62 | * a graph
.
63 | */
64 | edge_map() : ne_map() {};
65 |
66 | /**
67 | * Constructs a edge_map
associated to the graph
68 | * g
.
69 | * The value associated to each edge in g
is set to
70 | * t
.
71 | */
72 | explicit edge_map(const graph &g, T t=T()) :
73 | ne_map(g,t) {};
74 | };
75 |
76 | __GTL_END_NAMESPACE
77 |
78 | #endif // GTL_EDGE_MAP_H
79 |
80 | //--------------------------------------------------------------------------
81 | // end of file
82 | //--------------------------------------------------------------------------
83 |
--------------------------------------------------------------------------------
/include/GTL/gml_parser.h:
--------------------------------------------------------------------------------
1 | /* This software is distributed under the GNU Lesser General Public License */
2 | //==========================================================================
3 | //
4 | // gml_parser.h
5 | //
6 | //==========================================================================
7 | // $Id: gml_parser.h,v 1.7 2000/01/05 16:32:36 raitner Exp $
8 |
9 | #ifndef GTL_GML_PARSER_H
10 | #define GTL_GML_PARSER_H
11 |
12 | #include
13 | #include
14 |
15 | __GTL_BEGIN_NAMESPACE
16 |
17 | /**
18 | * @internal
19 | */
20 | union GTL_EXTERN GML_pair_val {
21 | long integer;
22 | double floating;
23 | char* str;
24 | struct GML_pair* list;
25 | };
26 |
27 | /**
28 | * @internal
29 | */
30 | struct GTL_EXTERN GML_pair {
31 | char* key;
32 | GML_value kind;
33 | union GML_pair_val value;
34 | struct GML_pair* next;
35 | };
36 |
37 | /**
38 | * @internal
39 | */
40 | struct GTL_EXTERN GML_list_elem {
41 | char* key;
42 | struct GML_list_elem* next;
43 | };
44 |
45 | /**
46 | * @internal
47 | */
48 | struct GTL_EXTERN GML_stat {
49 | struct GML_error err;
50 | struct GML_list_elem* key_list;
51 | };
52 |
53 | /*
54 | * returns list of KEY - VALUE pairs. Errors and a pointer to a list
55 | * of key-names are returned in GML_stat. Previous information contained
56 | * in GML_stat, i.e. the key_list, will be *lost*.
57 | */
58 |
59 | GTL_EXTERN GML_pair* GML_parser (FILE*, GML_stat*, int);
60 |
61 | /*
62 | * free memory used in a list of GML_pair
63 | */
64 |
65 | GTL_EXTERN void GML_free_list (GML_pair*, GML_list_elem*);
66 |
67 |
68 | /*
69 | * debugging
70 | */
71 |
72 | GTL_EXTERN void GML_print_list (GML_pair*, int);
73 |
74 | __GTL_END_NAMESPACE
75 |
76 | #endif // GTL_GML_PARSER_H
77 |
78 | //--------------------------------------------------------------------------
79 | // end of file
80 | //--------------------------------------------------------------------------
81 |
--------------------------------------------------------------------------------
/include/GTL/min_tree.h:
--------------------------------------------------------------------------------
1 | /* This software is distributed under the GNU Lesser General Public License */
2 | //==========================================================================
3 | //
4 | // min_tree.cpp
5 | //
6 | //==========================================================================
7 | // $Id: min_tree.h,v 1.3 2001/06/21 10:55:08 chris Exp $
8 |
9 | #ifndef GTL_MIN_TREE_H
10 | #define GTL_MIN_TREE_H
11 |
12 | #include
13 | #include
14 | #include
15 | #include
16 |
17 | __GTL_BEGIN_NAMESPACE
18 |
19 | /**
20 | * @brief Kruskal's %algorithm for finding minimal spanning tree
21 | * of a %graph.
22 | *
23 | * @author Marcus Raitner
24 | */
25 | class min_tree: public algorithm {
26 |
27 | public:
28 |
29 | /**
30 | * @brief Constructor
31 | */
32 | min_tree ();
33 |
34 | /**
35 | * @brief Destructor
36 | */
37 | virtual ~min_tree () {};
38 |
39 | /**
40 | * @brief Checks whether %algorithm can be applied.
41 | *
42 | * The %graph must
43 | * - be undirected
44 | * - be connected
45 | * - have more than 2 nodes
46 | *
47 | * Additionally the weights of the edges must have been set
48 | * in advance using min_tree::set_distances.
49 | *
50 | * @param g graph
51 | * @return algorithm::GTL_OK if %algorithm can be applied
52 | * algorithm::GTL_ERROR otherwise.
53 | */
54 | int check (graph& g);
55 |
56 | int run (graph& g);
57 |
58 | virtual void reset ();
59 |
60 | /**
61 | * @brief Sets %edge weights.
62 | *
63 | * Setting of %edge weights must be done before calling
64 | * min_tree::check and min_tree::run.
65 | *
66 | * @param dist %edge weigths.
67 | */
68 | void set_distances (const edge_map& dist);
69 |
70 | /**
71 | * @brief Edges of minimal spanning tree calculated in the
72 | * last call of min_tree::run.
73 | *
74 | * @return Set of edges of representing the minimal spanning
75 | * tree
76 | */
77 | set get_min_tree();
78 |
79 | /**
80 | * @brief Weight of minimal spanning tree.
81 | *
82 | * @return weight of minimal spanning tree.
83 | */
84 | int get_min_tree_length();
85 |
86 | private:
87 | typedef pair TSP_A_VALUE;
88 |
89 | class input_comp {
90 | public:
91 | bool operator()(TSP_A_VALUE x, TSP_A_VALUE y)
92 | { return x.first > y.first;}
93 | };
94 |
95 | edge_map dist;
96 | int weight;
97 | set tree;
98 | bool is_set_distances;
99 | };
100 |
101 | __GTL_END_NAMESPACE
102 |
103 | #endif // GTL_MIN_TREE_H
104 |
105 |
106 |
107 |
108 |
109 |
--------------------------------------------------------------------------------
/include/GTL/node_data.h:
--------------------------------------------------------------------------------
1 | /* This software is distributed under the GNU Lesser General Public License */
2 | //==========================================================================
3 | //
4 | // node_data.h - Internal header: DO NO USE IT DIRECTLY !!!
5 | //
6 | //==========================================================================
7 | // $Id: node_data.h,v 1.7 2000/01/05 16:32:38 raitner Exp $
8 |
9 | #ifndef GTL_NODE_DATA_H
10 | #define GTL_NODE_DATA_H
11 |
12 | #include
13 | #include
14 | #include
15 |
16 | #include
17 |
18 | __GTL_BEGIN_NAMESPACE
19 |
20 | class graph;
21 |
22 | /**
23 | * @internal
24 | */
25 | class GTL_EXTERN node_data
26 | {
27 | public:
28 | int id; // internal numbering
29 | graph *owner; // graph containing this node
30 | list::iterator pos; // position in the list of all nodes
31 | list edges[2]; // edges incident to this node
32 | // edges[0] = in_edges, edges[1] = out_edges
33 | bool hidden;
34 | };
35 |
36 | __GTL_END_NAMESPACE
37 |
38 | #endif // GTL_NODE_DATA_H
39 |
40 | //--------------------------------------------------------------------------
41 | // end of file
42 | //--------------------------------------------------------------------------
43 |
--------------------------------------------------------------------------------
/include/GTL/node_map.h:
--------------------------------------------------------------------------------
1 | /* This software is distributed under the GNU Lesser General Public License */
2 | //==========================================================================
3 | //
4 | // node_map.h
5 | //
6 | //==========================================================================
7 | // $Id: node_map.h,v 1.8 2005/06/14 12:22:12 raitner Exp $
8 |
9 | #ifndef GTL_NODE_MAP_H
10 | #define GTL_NODE_MAP_H
11 |
12 | #include
13 | #include
14 | #include
15 |
16 | __GTL_BEGIN_NAMESPACE
17 |
18 | class graph;
19 |
20 | /**
21 | * @short A specialized map with nodes as keys
22 | *
23 | * A node_map
is a specialized and optimized map
24 | * implementation with nodes as keys. Using a node_map
is
25 | * the standard way to attach user defined information to
26 | * the nodes of a graph
.
27 | *
28 | * An example of usage:
29 | *
30 | * graph g;
31 | *
32 | * node v1 = g.new_node();
33 | * node v2 = g.new_node();
34 | *
35 | * node_map<string> label(g, "Default Label");
36 | *
37 | * label[v1] = "v1";
38 | * label[v2] = "v2";
39 | *
40 | * assert(label[v1] != label[v2]);
41 | *
42 | *
43 | * The nodes used as keys for a node_map
MUST be nodes
44 | * of the same graph. If you want to use nodes from different graphs, use
45 | * a map<node,T>
instead. A graph and a copy of it are
46 | * considered to be different.
47 | *
48 | * Most of the functionality of node_map
is inherited from
49 | * @ref ne_map.
50 | *
51 | * @see edge_map
52 | */
53 | template >
54 | class node_map : public ne_map
55 | {
56 | public:
57 |
58 | /**
59 | * Constructs an empty node_map
not associated with any
60 | * graph
. You may (but need not) call
61 | * ne_map::init(const graph &, T)
to associate it to
62 | * a graph
.
63 | */
64 | node_map() : ne_map() {};
65 |
66 | /**
67 | * Constructs a node_map
associated to the graph
68 | * g
.
69 | * The value associated to each node in g
is set to
70 | * t
.
71 | */
72 | explicit node_map(const graph &g, T t=T()) : ne_map(g,t) {};
73 | };
74 |
75 | __GTL_END_NAMESPACE
76 |
77 | #endif // GTL_NODE_MAP_H
78 |
79 | //--------------------------------------------------------------------------
80 | // end of file
81 | //--------------------------------------------------------------------------
82 |
--------------------------------------------------------------------------------
/include/GTL/pq_node.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/rdmpage/graph-template-library/fb195cbaab5572312f230950e314522afc38eca2/include/GTL/pq_node.h
--------------------------------------------------------------------------------
/include/GTL/topsort.h:
--------------------------------------------------------------------------------
1 | /* This software is distributed under the GNU Lesser General Public License */
2 | //==========================================================================
3 | //
4 | // topsort.h
5 | //
6 | //==========================================================================
7 | // $Id: topsort.h,v 1.8 2000/09/11 07:36:43 raitner Exp $
8 |
9 | #ifndef GTL_TOPSORT
10 | #define GTL_TOPSORT
11 |
12 | #include
13 | #include
14 |
15 | __GTL_BEGIN_NAMESPACE
16 |
17 | /**
18 | * @short Topological sorting.
19 | *
20 | * Assigns to each node n
a number top_num
such
21 | * that for every edge (u,v)
top_num[u]
<
22 | * top_num[v]
, if possible, i.e. iff the directed graph is
23 | * acyclic.
24 | *
25 | *
26 | * Similar to the testing of biconnectivity, which extends DFS to calculate
27 | * low-numbers, the topsort-algorithm extends DFS to calculate the new
28 | * numbering (and thus to test whether such a numbering is possible).
29 | *
30 | *
31 | * In order to traverse all the nodes in the order of its top-numbers, a
32 | * new iterator, topsort_iterator
is provided.
33 | */
34 |
35 | class GTL_EXTERN topsort : public dfs
36 | {
37 | public:
38 | /**
39 | * default constructor; enables scanning of the whole_graph.
40 | *
41 | * @see dfs#dfs
42 | */
43 | topsort () : dfs () {whole_graph = true; acyclic = true;}
44 |
45 | /**
46 | * Number in topological order.
47 | *
48 | * @param n
node.
49 | * @return number in topological order.
50 | */
51 | int top_num (const node& n) const
52 | { return top_numbers[n]; }
53 |
54 | /**
55 | * Tests if graph was acyclic.
56 | *
57 | * @return true iff graph was acyclic.
58 | */
59 | bool is_acyclic () const
60 | { return acyclic; }
61 |
62 | /**
63 | * @internal
64 | */
65 | typedef list::const_iterator topsort_iterator;
66 |
67 | /**
68 | * Iterate through nodes in topsort-order.
69 | *
70 | * @return start-iterator.
71 | */
72 | topsort_iterator top_order_begin() const
73 | { return top_order.begin(); }
74 |
75 | /**
76 | * Iterate through nodes in topsort-order.
77 | *
78 | * @return end-iterator.
79 | */
80 | topsort_iterator top_order_end() const
81 | { return top_order.end(); }
82 |
83 | /**
84 | * Preconditions:
85 | *
86 | * G
is directed.
87 | * DFS may be applied
88 | *
89 | *
90 | * @param G
graph.
91 | * @return algorithm::GTL_OK
if topsort may be applied to
92 | * G
.
93 | * @see dfs#check
94 | */
95 | virtual int check (graph& G);
96 |
97 | /**
98 | * Reset
99 | * @see dfs#reset
100 | */
101 | virtual void reset ();
102 |
103 | /**
104 | * @internal
105 | */
106 | virtual void init_handler (graph& G);
107 |
108 | /**
109 | * @internal
110 | */
111 | virtual void leave_handler (graph&, node&, node&);
112 |
113 | /**
114 | * @internal
115 | */
116 | virtual void old_adj_node_handler (graph&, edge&, node&);
117 |
118 | protected:
119 | /**
120 | * @internal
121 | */
122 | int act_top_num;
123 | /**
124 | * @internal
125 | */
126 | node_map top_numbers;
127 | /**
128 | * @internal
129 | */
130 | list top_order;
131 | /**
132 | * @internal
133 | */
134 | bool acyclic;
135 | };
136 |
137 | __GTL_END_NAMESPACE
138 |
139 | #endif // GTL_TOPSORT
140 |
141 | //--------------------------------------------------------------------------
142 | // end of file
143 | //--------------------------------------------------------------------------
144 |
--------------------------------------------------------------------------------
/include/GTL/version.h:
--------------------------------------------------------------------------------
1 | //==========================================================================
2 | //
3 | // version.h.in - GTL version
4 | //
5 | //==========================================================================
6 | // $Id: version.h.in,v 1.1 1999/02/18 18:46:59 forster Exp $
7 |
8 | #ifndef GTL_VERSION_H
9 | #define GTL_VERSION_H
10 |
11 | #define GTL_MAJOR_VERSION "@MAJOR_VERSION@"
12 | #define GTL_MINOR_VERSION "@MINOR_VERSION@"
13 | #define GTL_MINI_VERSION "@MINI_VERSION@"
14 |
15 | #endif // GT_VERSION_H
16 |
17 | //--------------------------------------------------------------------------
18 | // end of file
19 | //--------------------------------------------------------------------------
20 |
--------------------------------------------------------------------------------
/include/GTL/version.h.in:
--------------------------------------------------------------------------------
1 | //==========================================================================
2 | //
3 | // version.h.in - GTL version
4 | //
5 | //==========================================================================
6 | // $Id: version.h.in,v 1.1 1999/02/18 18:46:59 forster Exp $
7 |
8 | #ifndef GTL_VERSION_H
9 | #define GTL_VERSION_H
10 |
11 | #define GTL_MAJOR_VERSION "@MAJOR_VERSION@"
12 | #define GTL_MINOR_VERSION "@MINOR_VERSION@"
13 | #define GTL_MINI_VERSION "@MINI_VERSION@"
14 |
15 | #endif // GT_VERSION_H
16 |
17 | //--------------------------------------------------------------------------
18 | // end of file
19 | //--------------------------------------------------------------------------
20 |
--------------------------------------------------------------------------------
/include/Makefile.am:
--------------------------------------------------------------------------------
1 | #===========================================================================
2 | #
3 | # include/Makefile.am
4 | #
5 | #===========================================================================
6 | # $Id: Makefile.am,v 1.1 1998/05/26 07:02:54 forster Exp $
7 |
8 | SUBDIRS = GTL
9 |
10 | #---------------------------------------------------------------------------
11 | # end of file
12 | #---------------------------------------------------------------------------
13 |
14 |
--------------------------------------------------------------------------------
/src/GTL.dsw:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/rdmpage/graph-template-library/fb195cbaab5572312f230950e314522afc38eca2/src/GTL.dsw
--------------------------------------------------------------------------------
/src/GTL.sln:
--------------------------------------------------------------------------------
1 | Microsoft Visual Studio Solution File, Format Version 8.00
2 | Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "GTL_dynamic", "GTL_dynamic.vcproj", "{07089390-1804-4A56-B337-15BED26C6421}"
3 | ProjectSection(ProjectDependencies) = postProject
4 | EndProjectSection
5 | EndProject
6 | Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "GTL_static", "GTL_static.vcproj", "{8A26B071-C818-4E24-B786-042233620B1F}"
7 | ProjectSection(ProjectDependencies) = postProject
8 | EndProjectSection
9 | EndProject
10 | Global
11 | GlobalSection(SolutionConfiguration) = preSolution
12 | Debug = Debug
13 | Release = Release
14 | EndGlobalSection
15 | GlobalSection(ProjectConfiguration) = postSolution
16 | {07089390-1804-4A56-B337-15BED26C6421}.Debug.ActiveCfg = Debug|Win32
17 | {07089390-1804-4A56-B337-15BED26C6421}.Debug.Build.0 = Debug|Win32
18 | {07089390-1804-4A56-B337-15BED26C6421}.Release.ActiveCfg = Release|Win32
19 | {07089390-1804-4A56-B337-15BED26C6421}.Release.Build.0 = Release|Win32
20 | {8A26B071-C818-4E24-B786-042233620B1F}.Debug.ActiveCfg = Debug|Win32
21 | {8A26B071-C818-4E24-B786-042233620B1F}.Debug.Build.0 = Debug|Win32
22 | {8A26B071-C818-4E24-B786-042233620B1F}.Release.ActiveCfg = Release|Win32
23 | {8A26B071-C818-4E24-B786-042233620B1F}.Release.Build.0 = Release|Win32
24 | EndGlobalSection
25 | GlobalSection(ExtensibilityGlobals) = postSolution
26 | EndGlobalSection
27 | GlobalSection(ExtensibilityAddIns) = postSolution
28 | EndGlobalSection
29 | EndGlobal
30 |
--------------------------------------------------------------------------------
/src/GTL_dynamic.dsp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/rdmpage/graph-template-library/fb195cbaab5572312f230950e314522afc38eca2/src/GTL_dynamic.dsp
--------------------------------------------------------------------------------
/src/GTL_static.dsp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/rdmpage/graph-template-library/fb195cbaab5572312f230950e314522afc38eca2/src/GTL_static.dsp
--------------------------------------------------------------------------------
/src/Makefile.am:
--------------------------------------------------------------------------------
1 | #===========================================================================
2 | #
3 | # src/Makefile.am
4 | #
5 | #===========================================================================
6 | # $Id: Makefile.am,v 1.37 2003/01/31 08:58:09 chris Exp $
7 |
8 | lib_LTLIBRARIES = libGTL.la
9 |
10 | INCLUDES = \
11 | -I$(top_srcdir)/include \
12 | -I$(top_builddir)/include
13 |
14 | libGTL_la_LDFLAGS = \
15 | -version-info $(GENERIC_LIBRARY_VERSION)
16 |
17 | libGTL_la_SOURCES = \
18 | gml_scanner.cpp \
19 | gml_parser.cpp \
20 | edge.cpp \
21 | graph.cpp \
22 | node.cpp \
23 | dfs.cpp \
24 | biconnectivity.cpp \
25 | bfs.cpp \
26 | topsort.cpp \
27 | st_number.cpp \
28 | embedding.cpp \
29 | pq_node.cpp \
30 | pq_tree.cpp \
31 | planarity.cpp \
32 | maxflow_ff.cpp \
33 | maxflow_pp.cpp \
34 | maxflow_sap.cpp \
35 | debug.cpp \
36 | components.cpp \
37 | fm_partition.cpp \
38 | ratio_cut_partition.cpp \
39 | min_tree.cpp \
40 | dijkstra.cpp \
41 | bellman_ford.cpp \
42 | bid_dijkstra.cpp
43 |
44 | #---------------------------------------------------------------------------
45 | # end of file
46 | #---------------------------------------------------------------------------
47 |
48 |
--------------------------------------------------------------------------------
/src/bellman_ford.cpp:
--------------------------------------------------------------------------------
1 | /* This software is distributed under the GNU Lesser General Public License */
2 | //==========================================================================
3 | //
4 | // bellman_ford.cpp
5 | //
6 | //==========================================================================
7 | // $Id: bellman_ford.cpp,v 1.4 2003/01/30 17:50:56 raitner Exp $
8 |
9 | #include
10 |
11 | #ifdef __GTL_MSVCC
12 | # ifdef _DEBUG
13 | # ifndef SEARCH_MEMORY_LEAKS_ENABLED
14 | # error SEARCH NOT ENABLED
15 | # endif
16 | # define new DEBUG_NEW
17 | # undef THIS_FILE
18 | static char THIS_FILE[] = __FILE__;
19 | # endif // _DEBUG
20 | #endif // __GTL_MSVCC
21 |
22 | __GTL_BEGIN_NAMESPACE
23 |
24 | bellman_ford::bellman_ford()
25 | {
26 | vars_set = false;
27 | preds = 0;
28 | }
29 |
30 | bellman_ford::~bellman_ford()
31 | {
32 | if (preds) delete preds;
33 | }
34 |
35 | void bellman_ford::store_preds (bool set)
36 | {
37 | if (set && !preds) {
38 | preds = new node_map;
39 | } else if (!set && preds) {
40 | delete preds;
41 | preds = 0;
42 | }
43 | }
44 |
45 |
46 | int bellman_ford::check(graph& G)
47 | {
48 | if (!vars_set)
49 | {
50 | return algorithm::GTL_ERROR;
51 | }
52 |
53 | if (G.nodes_begin() == G.nodes_end())
54 | {
55 | return algorithm::GTL_ERROR;
56 | }
57 |
58 | return algorithm::GTL_OK;
59 | }
60 |
61 | int bellman_ford::run(graph& G)
62 | {
63 | if (s == node())
64 | {
65 | s = *(G.nodes_begin());
66 | }
67 |
68 | //----------------------------------------------------------------------
69 | // initialize
70 | //----------------------------------------------------------------------
71 |
72 | inf.init (G, true);
73 |
74 | if (preds) {
75 | preds->init (G, edge());
76 | }
77 |
78 | inf[s] = false;
79 | d[s] = 0;
80 | cycle = false;
81 |
82 | //----------------------------------------------------------------------
83 | // relax
84 | //----------------------------------------------------------------------
85 |
86 | graph::edge_iterator it, end;
87 |
88 | for (int i = 1; i < G.number_of_nodes(); ++i)
89 | {
90 | for (it = G.edges_begin(), end = G.edges_end(); it != end; ++it)
91 | {
92 | relax (*it, true);
93 |
94 | if (G.is_undirected())
95 | {
96 | relax(*it, false);
97 | }
98 | }
99 | }
100 |
101 | //----------------------------------------------------------------------
102 | // cycle detection
103 | //----------------------------------------------------------------------
104 |
105 | for (it = G.edges_begin(), end = G.edges_end(); it != end; ++it)
106 | {
107 | node u = (*it).source();
108 | node v = (*it).target();
109 |
110 | if(!inf[u] && !inf[v])
111 | {
112 | if (d[v] > d[u] + w[*it])
113 | {
114 | cycle = true;
115 | }
116 | }
117 | }
118 |
119 | return algorithm::GTL_OK;
120 | }
121 |
122 | void bellman_ford::reset()
123 | {
124 | }
125 |
126 | void bellman_ford::relax(const edge& e, bool dir )
127 | {
128 | node u = e.source();
129 | node v = e.target();
130 |
131 | if (!dir) {
132 | node tmp = u;
133 | u = v;
134 | v = tmp;
135 | }
136 |
137 | if (!inf[u] && (inf[v] || (d[v] > d[u] + w[e])))
138 | {
139 | d[v] = d[u] + w[e];
140 | inf[v] = false;
141 |
142 | if (preds)
143 | {
144 | (*preds)[v] = e;
145 | }
146 | }
147 | }
148 |
149 |
150 |
151 | __GTL_END_NAMESPACE
152 |
--------------------------------------------------------------------------------
/src/components.cpp:
--------------------------------------------------------------------------------
1 | /* This software is distributed under the GNU Lesser General Public License */
2 | //==========================================================================
3 | //
4 | // components.cpp
5 | //
6 | //==========================================================================
7 | // $Id: components.cpp,v 1.5 2001/11/07 13:58:09 pick Exp $
8 |
9 | #include
10 |
11 | #ifdef __GTL_MSVCC
12 | # ifdef _DEBUG
13 | # ifndef SEARCH_MEMORY_LEAKS_ENABLED
14 | # error SEARCH NOT ENABLED
15 | # endif
16 | # define new DEBUG_NEW
17 | # undef THIS_FILE
18 | static char THIS_FILE[] = __FILE__;
19 | # endif // _DEBUG
20 | #endif // __GTL_MSVCC
21 |
22 | __GTL_BEGIN_NAMESPACE
23 |
24 | components::components () : dfs ()
25 | {
26 | scan_whole_graph (true);
27 | num_of_components = 0;
28 | }
29 |
30 | void components::reset ()
31 | {
32 | dfs::reset ();
33 | comp.erase (comp.begin(), comp.end());
34 | num_of_components = 0;
35 | }
36 |
37 | int components::check (graph& G)
38 | {
39 | return G.is_undirected() && whole_graph &&
40 | dfs::check (G) == GTL_OK ? GTL_OK : GTL_ERROR;
41 | }
42 |
43 |
44 | //--------------------------------------------------------------------------
45 | // Handler
46 | //--------------------------------------------------------------------------
47 |
48 |
49 | void components::new_start_handler (graph& G, node& st)
50 | {
51 | li = comp.insert (comp.end(),
52 | pair,list > (list (), list ()));
53 | (*li).first.push_back (st);
54 | ++num_of_components;
55 | }
56 |
57 | void components::before_recursive_call_handler (graph& G, edge& e, node& n)
58 | {
59 | (*li).first.push_back (n);
60 | // (*li).second.push_back (e);
61 | }
62 |
63 |
64 | void components::old_adj_node_handler (graph& G, edge& e, node& n)
65 | {
66 | node curr = n.opposite (e);
67 |
68 | //
69 | // Store backedges at lower endpoint
70 | //
71 |
72 | if (dfs_num (curr) > dfs_num (n)) {
73 | (*li).second.push_back (e);
74 | }
75 | }
76 |
77 |
78 | __GTL_END_NAMESPACE
79 |
80 | //--------------------------------------------------------------------------
81 | // end of file
82 | //--------------------------------------------------------------------------
83 |
--------------------------------------------------------------------------------
/src/debug.cpp:
--------------------------------------------------------------------------------
1 | /* This software is distributed under the GNU Lesser General Public License */
2 | //==========================================================================
3 | //
4 | // debug.cpp
5 | //
6 | //==========================================================================
7 | // $Id: debug.cpp,v 1.10 2001/11/07 13:58:09 pick Exp $
8 |
9 | #include
10 |
11 | #include
12 | #include
13 | #include
14 |
15 | #ifdef __GTL_MSVCC
16 | # ifdef _DEBUG
17 | # ifndef SEARCH_MEMORY_LEAKS_ENABLED
18 | # error SEARCH NOT ENABLED
19 | # endif
20 | # define new DEBUG_NEW
21 | # undef THIS_FILE
22 | static char THIS_FILE[] = __FILE__;
23 | # endif // _DEBUG
24 | #endif // __GTL_MSVCC
25 |
26 | __GTL_BEGIN_NAMESPACE
27 |
28 | ostream* GTL_debug::GTLerr = 0;
29 |
30 | void GTL_debug::debug_message (const char* message, ...)
31 | {
32 | #ifdef _DEBUG
33 | va_list arg_list;
34 | va_start(arg_list, message);
35 |
36 | char buf[1024];
37 | vsprintf(buf, message, arg_list);
38 | if (GTLerr) {
39 | os() << buf;
40 | }
41 | #endif
42 | }
43 |
44 | void GTL_debug::init_debug ()
45 | {
46 | if (!GTLerr) {
47 | #ifdef __GTL_MSVCC
48 | GTLerr = new ofstream ("ERRLOG.txt", ios::out | ios::app);
49 | #else
50 | GTLerr = &cerr;
51 | #endif
52 | }
53 | }
54 |
55 | void GTL_debug::close_debug ()
56 | {
57 | if (GTLerr) {
58 | #ifdef __GTL_MSVCC
59 | ((ofstream*) GTLerr)->close();
60 | delete GTLerr;
61 | GTLerr = 0;
62 | #endif
63 | }
64 | }
65 |
66 | __GTL_END_NAMESPACE
67 |
68 | //--------------------------------------------------------------------------
69 | // end of file
70 | //--------------------------------------------------------------------------
71 |
--------------------------------------------------------------------------------
/src/embedding.cpp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/rdmpage/graph-template-library/fb195cbaab5572312f230950e314522afc38eca2/src/embedding.cpp
--------------------------------------------------------------------------------
/src/min_tree.cpp:
--------------------------------------------------------------------------------
1 | /* This software is distributed under the GNU Lesser General Public License */
2 | //==========================================================================
3 | //
4 | // min_tree.cpp
5 | //
6 | //==========================================================================
7 | // $Id: min_tree.cpp,v 1.4 2001/11/07 13:58:10 pick Exp $
8 |
9 | #include
10 | #include
11 | #include
12 | #include
13 |
14 | #ifdef __GTL_MSVCC
15 | # ifdef _DEBUG
16 | # ifndef SEARCH_MEMORY_LEAKS_ENABLED
17 | # error SEARCH NOT ENABLED
18 | # endif
19 | # define new DEBUG_NEW
20 | # undef THIS_FILE
21 | static char THIS_FILE[] = __FILE__;
22 | # endif // _DEBUG
23 | #endif // __GTL_MSVCC
24 |
25 | __GTL_BEGIN_NAMESPACE
26 |
27 | min_tree::min_tree () {
28 | is_set_distances = false;
29 | weight = 0;
30 | }
31 |
32 | int min_tree::check (graph& g) {
33 | if (g.is_directed()) return GTL_ERROR;
34 | else if (g.number_of_nodes() < 2) return GTL_ERROR;
35 | else if (!g.is_connected()) return GTL_ERROR;
36 | else if (!is_set_distances) return GTL_ERROR;
37 | else return GTL_OK;
38 | }
39 |
40 | void min_tree::set_distances (const edge_map& dist) {
41 | this->dist = dist;
42 | is_set_distances = true;
43 | }
44 |
45 | set min_tree::get_min_tree() {
46 | return this->tree;
47 | }
48 |
49 | int min_tree::get_min_tree_length() {
50 | int sum;
51 | set::iterator tree_it;
52 |
53 | sum = 0;
54 |
55 | for (tree_it = tree.begin(); tree_it != tree.end(); tree_it++)
56 | sum += dist[*tree_it];
57 |
58 | return sum;
59 | }
60 |
61 | int min_tree::run (graph& g) {
62 | priority_queue , input_comp> node_distances;
63 | node::adj_edges_iterator adj_it, adj_end;
64 | set tree_nodes;
65 | set::iterator tree_it;
66 | edge curr;
67 | node new_node;
68 | graph::edge_iterator edge_it, edges_end;
69 | unsigned int number_of_nodes;
70 | int min_dist;
71 |
72 |
73 | // making out the start edge
74 |
75 | edge_it = g.edges_begin();
76 | edges_end = g.edges_end();
77 |
78 | curr = *edge_it;
79 | min_dist = dist[*edge_it];
80 |
81 | for (; edge_it != edges_end; edge_it++) {
82 | if (dist[*edge_it] < min_dist) {
83 | curr = *edge_it;
84 | min_dist = dist[*edge_it];
85 | }
86 | }
87 |
88 | tree.insert(curr);
89 |
90 | tree_nodes.insert(curr.source());
91 | tree_nodes.insert(curr.target());
92 |
93 |
94 | for (tree_it = tree_nodes.begin(); tree_it != tree_nodes.end(); tree_it++) {
95 | adj_it = (*tree_it).adj_edges_begin();
96 | adj_end = (*tree_it).adj_edges_end();
97 |
98 | for (; adj_it != adj_end; adj_it++) {
99 | node_distances.push(TSP_A_VALUE(dist[*adj_it], adj_it));
100 | }
101 | }
102 |
103 | // create the min_tree
104 |
105 | number_of_nodes = g.number_of_nodes();
106 |
107 | while(tree.size() < number_of_nodes - 1) {
108 | curr = *((node_distances.top()).second);
109 |
110 | node_distances.pop();
111 |
112 | if (tree_nodes.find(curr.source()) != tree_nodes.end() &&
113 | tree_nodes.find(curr.target()) != tree_nodes.end()) {
114 | } else {
115 | tree.insert(curr);
116 | weight += dist[curr];
117 |
118 | if (tree_nodes.find(curr.source()) != tree_nodes.end()) {
119 | new_node = curr.target();
120 | } else {
121 | new_node = curr.source();
122 | }
123 |
124 | tree_nodes.insert(new_node);
125 |
126 | adj_it = new_node.adj_edges_begin();
127 | adj_end = new_node.adj_edges_end();
128 |
129 | for (; adj_it != adj_end; adj_it++) {
130 | node_distances.push(TSP_A_VALUE(dist[*adj_it], adj_it));
131 | }
132 | }
133 | }
134 |
135 | return GTL_OK;
136 | }
137 |
138 | void min_tree::reset() {
139 | tree.erase (tree.begin(), tree.end());
140 | weight = 0;
141 | }
142 |
143 | __GTL_END_NAMESPACE
144 |
145 |
146 |
147 |
148 |
149 |
150 |
151 |
152 |
153 |
--------------------------------------------------------------------------------
/src/planarity.cpp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/rdmpage/graph-template-library/fb195cbaab5572312f230950e314522afc38eca2/src/planarity.cpp
--------------------------------------------------------------------------------
/src/pq_node.cpp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/rdmpage/graph-template-library/fb195cbaab5572312f230950e314522afc38eca2/src/pq_node.cpp
--------------------------------------------------------------------------------
/src/st_number.cpp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/rdmpage/graph-template-library/fb195cbaab5572312f230950e314522afc38eca2/src/st_number.cpp
--------------------------------------------------------------------------------
/src/topsort.cpp:
--------------------------------------------------------------------------------
1 | /* This software is distributed under the GNU Lesser General Public License */
2 | //==========================================================================
3 | //
4 | // topsort.cpp
5 | //
6 | //==========================================================================
7 | // $Id: topsort.cpp,v 1.7 2001/11/07 13:58:12 pick Exp $
8 |
9 | #include
10 |
11 | #ifdef __GTL_MSVCC
12 | # ifdef _DEBUG
13 | # ifndef SEARCH_MEMORY_LEAKS_ENABLED
14 | # error SEARCH NOT ENABLED
15 | # endif
16 | # define new DEBUG_NEW
17 | # undef THIS_FILE
18 | static char THIS_FILE[] = __FILE__;
19 | # endif // _DEBUG
20 | #endif // __GTL_MSVCC
21 |
22 | __GTL_BEGIN_NAMESPACE
23 |
24 | //--------------------------------------------------------------------------
25 | // algorithm - interface
26 | //--------------------------------------------------------------------------
27 |
28 |
29 | void topsort::reset ()
30 | {
31 | dfs::reset();
32 | acyclic = true;
33 | top_order.erase (top_order.begin(), top_order.end());;
34 | }
35 |
36 | int topsort::check (graph& G)
37 | {
38 | return G.is_directed() ? GTL_OK : GTL_ERROR;
39 | }
40 |
41 |
42 |
43 | //--------------------------------------------------------------------------
44 | // Handler
45 | //--------------------------------------------------------------------------
46 |
47 |
48 | void topsort::init_handler (graph& G)
49 | {
50 | top_numbers.init (G, 0);
51 | act_top_num = G.number_of_nodes();
52 | }
53 |
54 |
55 | void topsort::leave_handler (graph& G, node& n, node& f)
56 | {
57 | top_numbers[n] = act_top_num;
58 | act_top_num--;
59 | top_order.push_front (n);
60 | }
61 |
62 |
63 | void topsort::old_adj_node_handler (graph& G, edge& adj, node& opp)
64 | {
65 | if (top_numbers[opp] == 0) {
66 | acyclic = false;
67 | }
68 | }
69 |
70 | __GTL_END_NAMESPACE
71 |
72 | //--------------------------------------------------------------------------
73 | // end of file
74 | //--------------------------------------------------------------------------
75 |
--------------------------------------------------------------------------------
/tests/Makefile.am:
--------------------------------------------------------------------------------
1 | INCLUDES = -I$(top_srcdir)/include
2 | check_PROGRAMS = bellman_ford_test graph_test
3 | bellman_ford_test_SOURCES = bellman_ford_test.cpp
4 | bellman_ford_test_LDADD = $(top_builddir)/src/libGTL.la
5 | graph_test_SOURCES = graph_test.cpp
6 | graph_test_LDADD = $(top_builddir)/src/libGTL.la
7 |
8 | runtests : bellman_ford_test graph_test
9 | ./bellman_ford_test
10 | ./graph_test
11 |
--------------------------------------------------------------------------------
/tests/graph_test.cpp:
--------------------------------------------------------------------------------
1 | /* This software is distributed under the GNU Lesser General Public License */
2 | //==========================================================================
3 | //
4 | // graph_test.cpp
5 | //
6 | //==========================================================================
7 | // $Id: graph_test.cpp,v 1.1 2003/01/14 16:50:46 raitner Exp $
8 |
9 | #include
10 |
11 | #include
12 | #include
13 |
14 | #ifdef __GTL_MSVCC
15 | # ifdef _DEBUG
16 | # define new DEBUG_NEW
17 | # undef THIS_FILE
18 | static char THIS_FILE[] = __FILE__;
19 | # endif // _DEBUG
20 | #endif // __GTL_MSVCC
21 |
22 | int main (int argc, char* argv[])
23 | {
24 | cout << "Loading graph and preserving ids" << endl;
25 | graph G;
26 | if (G.load("test.gml", true).err_num != GML_OK) {
27 | cout << "Loading failed" << endl;
28 | exit(1);
29 | }
30 |
31 | cout << "Loading OK" << endl;
32 |
33 | if (G.number_of_ids(node()) != 20) {
34 | cout << "Wrong number of ids: " << G.number_of_ids(node()) << endl;
35 | exit(1);
36 | }
37 |
38 | cout << "Number of ids OK" << endl;
39 |
40 | cout << "Loading graph and preserving ids" << endl;
41 |
42 | graph G1;
43 | if (G.load("test.gml", false).err_num != GML_OK) {
44 | cout << "Loading failed" << endl;
45 | exit(1);
46 | }
47 |
48 | cout << "Loading OK" << endl;
49 |
50 | if (G.number_of_ids(node()) != 2) {
51 | cout << "Wrong number of ids: " << G.number_of_ids(node()) << endl;
52 | exit(1);
53 | }
54 |
55 | cout << "Number of ids OK" << endl;
56 | }
57 |
--------------------------------------------------------------------------------