COIN-OR::LEMON - Graph Library

source: lemon-0.x/doc/groups.dox @ 1401:9588dcef6793

Last change on this file since 1401:9588dcef6793 was 1401:9588dcef6793, checked in by Alpar Juttner, 19 years ago

wrapper -> adaptor

File size: 4.5 KB
RevLine 
[814]1
[678]2/**
3@defgroup datas Data Structures
[921]4This group describes the several graph structures implemented in LEMON.
[678]5*/
[430]6
[678]7/**
8@defgroup graphs Graph Structures
9@ingroup datas
[921]10\brief Graph structures implemented in LEMON.
[430]11
[1172]12The implementation of combinatorial algorithms heavily relies on
13efficient graph implementations. LEMON offers data structures which are
14planned to be easily used in an experimental phase of implementation studies,
15and thereafter the program code can be made efficient by small modifications.
[430]16
[1172]17The most efficient implementation of diverse applications require the usage of different physical graph implementations. These differences appear in the size of
18graph we require to handle, memory or time usage limitations or in
19the set of operations through which the graph can be accessed.
20LEMON provides several physical graph structures to meet the
21diverging requirements of the possible users.
22In order to save on running time or on memory usage, some structures may
23fail to provide some graph features like edge or node deletion.
24
25Alteration of standard containers need a very limited number of
26operations, these together satisfy the everyday requirements.
27In the case of graph strutures, different operations are needed which do
28not alter the physical graph, but gives an other view. If some nodes or
29edges have to be hidden or the reverse oriented graph have to be used, then
30this is the case. It also may happen that in a flow implemenation
31the residual graph can be accessed by an other algorithm, or a node-set
32is to be shrunk for an other algorithm.
33LEMON also provides a variety of graphs for these requirements called
[1401]34\ref graph_adaptors "graph adaptors". Adaptors cannot be used alone but only
[1172]35in conjunction with other graph representation.
[430]36
[678]37You are free to use the graph structure that fit your requirements
38the best, most graph algorithms and auxiliary data structures can be used
[1172]39with any graph structures.
[678]40*/
[430]41
[678]42/**
[1043]43@defgroup maps Maps
44@ingroup datas
45\brief Some special purpose map to make life easier.
46
47LEMON provides several special maps that e.g. combine
48new maps from existing ones.
49*/
50
51/**
[678]52@defgroup auxdat Auxiliary Data Structures
53@ingroup datas
[921]54\brief Some data structures implemented in LEMON.
[406]55
[921]56This group describes the data structures implemented in LEMON in
[678]57order to make it easier to implement combinatorial algorithms.
58*/
[406]59
[678]60/**
[785]61@defgroup graphmapfactory Tools to Make It Easier to Make Graph Maps
62@ingroup auxdat
63\brief Tools to Make It Easier to Make Graph Maps.
64
65This group describes the tools that makes it easier to make graph maps that
66dynamically update with the graph changes.
67*/
68
69/**
[678]70@defgroup galgs Graph Algorithms
71\brief This group describes the several graph algorithms
[921]72implemented in LEMON.
[947]73
74This group describes the several graph algorithms
75implemented in LEMON.
76*/
77
78/**
79@defgroup gutils General Graph Utilities
80\brief This group describes some simple general graph utilities.
81@ingroup galgs
82
83This group describes some simple general graph utilities.
[678]84*/
85
86/**
[1329]87@defgroup gen_opt_group General Optimization Tools
88\brief This group describes some general optimization frameworks
89implemented in LEMON.
90
91\brief This group describes some general optimization frameworks
92implemented in LEMON.
93
94*/
95
96/**
[758]97@defgroup flowalgs Path and Flow Algorithms
[678]98@ingroup galgs
[758]99\brief This group describes the algorithms
100for finding paths and flows in graphs.
[678]101*/
102
103/**
[1151]104@defgroup exceptions Exceptions
105This group contains the exceptions thrown by LEMON library
106*/
107
108/**
[678]109@defgroup misc Miscellaneous Tools
110Here you can find several useful tools for development,
111debugging and testing.
112*/
113
114/**
[1287]115@defgroup io_group Input Output
116Here you can find tools for imporing and exporting graphs and graph related
117data
118*/
119
120/**
[1030]121@defgroup concept Concepts
[959]122\brief Skeleton classes and concept checking classes
[794]123
[959]124This group describes the data/algorithm skeletons and concept checking
[1030]125classes implemented in LEMON.
126
127One aim of these classes is to make it easier to check if a certain
128class or template function is correctly implemented.
129
130The other (sometimes even more important) aim is to document the concepts.
131
[794]132*/
133
[1030]134/**
135@defgroup graph_concepts Graph Structure Concepts
136@ingroup concept
137\brief Skeleton and concept checking classes for graph structures
138
139This group contains the skeletons and concept checking classes of LEMON's
140graph structures and helper classes used to implement these.
141*/
[794]142
143/**
[678]144@defgroup experimental Experimental Structures and Algorithms
145This group contains some Experimental structures and algorithms.
146The stuff here is subject to change.
147*/
[1151]148
Note: See TracBrowser for help on using the repository browser.