-
Notifications
You must be signed in to change notification settings - Fork 0
/
GraphQueryEngineMemory.cpp
58 lines (42 loc) · 1.44 KB
/
GraphQueryEngineMemory.cpp
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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
#include "GraphQueryEngineMemory.h"
GraphQueryEngineMemory::GraphQueryEngineMemory() {
temporalParamemters = new TemporalParameters();
}
GraphQueryEngineMemory::~GraphQueryEngineMemory() {
delete temporalParamemters;
}
void GraphQueryEngineMemory::subgraphMatchingQuery(GraphManager* gm, MemoryGraph* p, SubgraphMatchType smtype) {
if (!gm->inMemory) {
cout << "Apply memory subgraph matching algorithm to graph not in the memory!" << endl;
// return;
gm->setInMemory();
}
//GraphSet patternGraphSet;
//evalToGraphSet(*selectstat.whereCondition, patternGraphSet);
// string graphpath, commpath, pattenpath;
// Match match(graphpath, commpath, pattenpath);
Match match(gm, p);
if (smtype == TURBOTYPE) {
match.GoMatch_Turbo_comm();
}
else if (smtype == VF3TYPE) {
match.GoMatch_vf3_comm();
}
else if (smtype == DAFTYPE) {
match.GoMatch_DAF_comm();
}
}
void GraphQueryEngineMemory::comboSearching(GraphManager* gm, string& configfile, int qv) {
gm->gLoader->loadTemporalInfo(*gm->mGraph, gm->temporal_info_path);
TemporalParameters cpara(configfile);
TemporalSearch ts(gm->mGraph, cpara);
ts.analyze();
ts.comboSearching(qv);
}
void GraphQueryEngineMemory::evolutionTracking(GraphManager* gm, string& configfile, vector<int>& qvs) {
gm->gLoader->loadTemporalInfo(*gm->mGraph, gm->temporal_info_path);
TemporalParameters epara(configfile);
TemporalSearch ts(gm->mGraph, epara);
ts.analyze();
ts.evolutionTracking(qvs);
}