COIN-OR::LEMON - Graph Library

source: glemon-0.x/all_include.h @ 197:c1084e2bff10

Last change on this file since 197:c1084e2bff10 was 191:af2ed974ab68, checked in by Hegyi Péter, 17 years ago

GUI can now export graph to EPS.

File size: 2.0 KB
Line 
1/* -*- C++ -*-
2 *
3 * This file is a part of LEMON, a generic C++ optimization library
4 *
5 * Copyright (C) 2003-2006
6 * Egervary Jeno Kombinatorikus Optimalizalasi Kutatocsoport
7 * (Egervary Research Group on Combinatorial Optimization, EGRES).
8 *
9 * Permission to use, modify and distribute this software is granted
10 * provided that this copyright notice appears in all copies. For
11 * precise terms see the accompanying LICENSE file.
12 *
13 * This software is provided "AS IS" with no warranty of any kind,
14 * express or implied, and with no claim as to its suitability for any
15 * purpose.
16 *
17 */
18
19#ifndef ALL_INCLUDE_H
20#define ALL_INCLUDE_H
21
22#include <fstream>
23#include <iostream>
24
25#include <vector>
26
27#include <lemon/list_graph.h>
28#include <lemon/graph_reader.h>
29#include <lemon/graph_writer.h>
30#include <lemon/graph_utils.h>
31#include <lemon/maps.h>
32#include <lemon/error.h>
33#include <lemon/dim2.h>
34
35enum {E_WIDTH, E_COLOR, E_TEXT, EDGE_PROPERTY_NUM}; // edge properties;
36enum {N_RADIUS, N_COLOR, N_TEXT, NODE_PROPERTY_NUM}; // node properties;
37enum {N_MAPS, E_MAPS, ARROWS, PAR, EPS_PROPERTY_NUM}; // eps properties;
38enum {MOVE, CREATE_NODE, CREATE_EDGE, ERASER, MAP_EDIT, TOOL_NUM}; // tools;
39#define RANGE 3
40#define WIN_WIDTH 900
41#define WIN_HEIGHT 600
42#define MIN_EDGE_WIDTH 2
43#define MAX_EDGE_WIDTH 40
44#define MIN_NODE_RADIUS 2
45#define MAX_NODE_RADIUS 80
46
47#ifndef MAIN_PART
48extern std::vector <std::string> edge_property_strings;
49extern std::vector <double> edge_property_defaults;
50extern std::vector <std::string> node_property_strings;
51extern std::vector <double> node_property_defaults;
52extern int longest_property_string_length;
53#endif //MAIN_PART
54
55using namespace lemon;
56
57typedef lemon::dim2::Point<double> XY;
58typedef ListGraph Graph;
59typedef Graph::Node Node;
60typedef Graph::Edge Edge;
61typedef Graph::EdgeIt EdgeIt;
62typedef Graph::InEdgeIt InEdgeIt;
63typedef Graph::OutEdgeIt OutEdgeIt;
64typedef Graph::NodeIt NodeIt;
65
66const std::string prog_name = "LEMON Graph Editor";
67
68#endif // ALL_INCLUDE_H
Note: See TracBrowser for help on using the repository browser.