-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathCTemporal.cpp
55 lines (50 loc) · 1.54 KB
/
CTemporal.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
#include "CFrelement.h"
#include "CPerGaM.h"
#include "CTimeAdaptiveHist.h"
#include "CTimeHist.h"
#include "CTimeNone.h"
#include "CTimeMean.h"
//#include "CMises.h"
#include "CPythonHyperTime.h"
#include "CHyperTime.h"
#include "CExpectation.h"
const char *temporalModelName[] =
{
"None",
"Mean",
"Hist",
"FreMEn",
"HyT-EM",
"HyT-KM",
"Gaussian",
"Adaptive",
"VonMises",
"HyT-CEM",
"Number",
};
CTemporal* spawnTemporalModel(ETemporalType type,int maxPeriod,int elements,int numClasses)
{
CTemporal *temporalModel;
switch (type)
{
case TT_NONE: temporalModel = new CTimeNone(0); break;
case TT_MEAN: temporalModel = new CTimeMean(0); break;
case TT_HISTOGRAM: temporalModel = new CTimeHist(0); break;
case TT_FREMEN: temporalModel = new CFrelement(0); break;
case TT_HYPER: temporalModel = new CHyperTime(0); break;
case TT_PYTHON: temporalModel = new CPythonHyperTime(0); break;
case TT_PERGAM: temporalModel = new CPerGaM(0); break;
case TT_ADAPTIVE: temporalModel = new CTimeAdaptiveHist(0); break;
// case TT_MISES: temporalModel = new CMises(0); break;
case TT_EXPECTATION: temporalModel = new CExpectation(elements); break;
default: temporalModel = new CTimeNone(0);
}
temporalModel->init(maxPeriod,elements,numClasses);
return temporalModel;
}
CTemporal* spawnTemporalModel(const char* type,int maxPeriod,int elements,int numClasses)
{
int i = TT_NONE;
for (i=0;i<TT_NUMBER && strcmp(type,temporalModelName[i])!=0;i++){}
return spawnTemporalModel( (ETemporalType)i,maxPeriod,elements,numClasses);
}