-
Notifications
You must be signed in to change notification settings - Fork 5
/
wNLDRthread.cpp
60 lines (50 loc) · 1.75 KB
/
wNLDRthread.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
59
60
//##########################################################################
//# This software is part of the Treescaper i
//# -- Version 0.1
//# Copyright (C) 2010 Wen Huang
//#
//# This program is free software; you can redistribute it and/or
//# modify it under the terms of the GNU General Public License
//# as published by the Free Software Foundation; either version 2
//# of the License, or (at your option) any later version.
//#
//# This program is distributed in the hope that it will be useful,
//# but WITHOUT ANY WARRANTY; without even the implied warranty of
//# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
//# GNU General Public License for more details.
//# http://www.gnu.org/copyleft/gpl.html
//##########################################################################
#ifndef WNLDRTHREAD_CPP
#define WNLDRTHREAD_CPP
#include "treescaper.h"
#include "wNLDRthread.h"
NLDRthread::NLDRthread(QObject *parent)
: QThread(parent)
{
};
NLDRthread::~NLDRthread()
{
};
void NLDRthread::initialization(String fname, double **dist, int size, String dim, String method, String algo, String init_meth, String flag, long seed, nldr_parameters nldrparas)
{
filename = fname;
dimension = dim;
Cost = method;
Algorithm = algo;
init = init_meth;
fileflag = flag;
randseed = seed;
lpnldr = new NLDR;
memcpy(&(lpnldr->parameters), &(paras::nldrparas), sizeof(nldr_parameters));
lpnldr->parameters.distance_file_type = 1;
lpnldr->init_NLDR(filename, dist, size, dimension, Cost, Algorithm, init, fileflag, randseed, "");
};
void NLDRthread::run()
{
lpnldr->Compute_NLDR();
lpnldr->result_analysis();
lpnldr->output_to_files();
delete lpnldr;
emit sendbuttonvisible(1);
}
#endif // WNLDRTHREAD_CPP