libgexf  0.1.3
gexf.h
Go to the documentation of this file.
1 
7 /*
8 # Copyright (c) <2009> <Sebastien Heymann>
9 #
10 # Permission is hereby granted, free of charge, to any person obtaining a copy
11 # of this software and associated documentation files (the "Software"), to deal
12 # in the Software without restriction, including without limitation the rights
13 # to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
14 # copies of the Software, and to permit persons to whom the Software is
15 # furnished to do so, subject to the following conditions:
16 #
17 # The above copyright notice and this permission notice shall be included in
18 # all copies or substantial portions of the Software.
19 #
20 # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
21 # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
22 # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
23 # AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
24 # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
25 # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
26 # THE SOFTWARE.
27 */
28 
29 #ifndef _GEXF_H
30 #define _GEXF_H
31 
32 #include <iostream>
33 #include "graph.h"
34 #include "undirectedgraph.h"
35 #include "directedgraph.h"
36 #include "data.h"
37 #include "metadata.h"
38 #include "memoryvalidator.h"
39 
40 namespace libgexf {
41 
42  class MemoryValidator;
43 
53  class GEXF {
54  public:
55  GEXF();
56 
60  GEXF(const GEXF& orig);
61 
62  virtual ~GEXF();
63 
64 
71 
78 
85 
92 
93 
100 
107 
113  void initGraphMode(const std::string& mode);
114 
120  std::string getGraphMode();
121 
122 
131  bool checkIntegrity();
132 
135  std::string _mode;
138  private:
139  friend std::ostream& operator<<(std::ostream& os, const GEXF& o);
140  friend class MemoryValidator;
141  };
142 
143 } /* namespace libgexf */
144 
145 #endif /* _GEXF_H */
146 
libgexf::DirectedGraph & getDirectedGraph()
Get a directed graph instance.
Definition: gexf.cpp:58
libgexf::t_graph _type
Definition: gexf.h:134
Definition: abstractiter.h:32
libgexf::Data _data
Definition: gexf.h:136
libgexf::MetaData & getMetaData()
Get associated meta data instance.
Definition: gexf.cpp:106
libgexf::Graph _graph
Definition: gexf.h:133
Interpretation of the topology structure as a undirected graph.
Definition: undirectedgraph.h:39
libgexf::t_graph getGraphType()
Get the type of graph.
Definition: gexf.cpp:71
std::string getGraphMode()
Get the graph mode.
Definition: gexf.cpp:83
Static class to check data correctness.
Definition: memoryvalidator.h:41
t_graph
Available graph types.
Definition: typedefs.h:40
libgexf::Data & getData()
Get associated data instance.
Definition: gexf.cpp:100
void initGraphMode(const std::string &mode)
Initialize the graph mode.
Definition: gexf.cpp:89
bool checkIntegrity()
Check the data correctness.
Definition: gexf.cpp:112
GEXF class, just a container.
Definition: gexf.h:53
Topology structure of the graph.
Definition: graph.h:49
Associated meta data and attributes on the graph.
Definition: metadata.h:39
libgexf::UndirectedGraph & getUndirectedGraph()
Get an undirected graph instance.
Definition: gexf.cpp:45
Associated data and attributes on nodes and edges.
Definition: data.h:47
Interpretation of the topology structure as a directed graph.
Definition: directedgraph.h:40
void setGraphType(libgexf::t_graph t)
Change the type of graph.
Definition: gexf.cpp:77
libgexf::MetaData _meta
Definition: gexf.h:137
std::string _mode
Definition: gexf.h:135