Tulip 5.7.1
Large graphs analysis and drawing
Loading...
Searching...
No Matches
GlyphManager.h
1/*
2 *
3 * This file is part of Tulip (https://tulip.labri.fr)
4 *
5 * Authors: David Auber and the Tulip development Team
6 * from LaBRI, University of Bordeaux
7 *
8 * Tulip is free software; you can redistribute it and/or modify
9 * it under the terms of the GNU Lesser General Public License
10 * as published by the Free Software Foundation, either version 3
11 * of the License, or (at your option) any later version.
12 *
13 * Tulip is distributed in the hope that it will be useful,
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
16 * See the GNU General Public License for more details.
17 *
18 */
19///@cond DOXYGEN_HIDDEN
20
21#ifndef Tulip_GLYPHMANAGER_H
22#define Tulip_GLYPHMANAGER_H
23
24#ifndef DOXYGEN_NOTFOR_DEVEL
25
26//#include <string>
27
28#include <tulip/tulipconf.h>
29#include <tulip/Glyph.h>
30#include <tulip/MutableContainer.h>
31
32namespace tlp {
33
34class GlGraphInputData;
35class Graph;
36
37/**
38 * Used to store Glyphs plugins
39 */
40class TLP_GL_SCOPE GlyphManager {
41
42public:
43 /**
44 * Return the name of glyph with given id
45 */
46 static std::string glyphName(int id);
47 /**
48 * Return the id if glyph with given name
49 */
50 static int glyphId(const std::string &name, bool warnIfNotFound = true);
51 /**
52 * Load glyphs plugins
53 */
54 static void loadGlyphPlugins();
55
56 /**
57 * Create the glyph list and store it in glyphs parameter
58 */
59 static void initGlyphList(Graph **graph, GlGraphInputData *glGraphInputData,
60 MutableContainer<Glyph *> &glyphs);
61 /**
62 * Clear the glyph list
63 */
64 static void clearGlyphList(Graph **graph, GlGraphInputData *glGraphInputData,
65 MutableContainer<Glyph *> &glyphs);
66};
67} // namespace tlp
68
69#endif // DOXYGEN_NOTFOR_DEVEL
70
71#endif // Tulip_GLYPHMANAGER_H
72///@endcond