-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathPredictCheck.h
More file actions
39 lines (36 loc) · 989 Bytes
/
PredictCheck.h
File metadata and controls
39 lines (36 loc) · 989 Bytes
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
/*
Time : 2016/06/13
Author: Kay Yang (1025115216@qq.com)
*/
#ifndef _PREDICTHECK_H
#define _PREDICTHECK_H
#include "PredictTypeDefines.h"
#include "HexString.h"
class PredictConfig;
class PredictCheck
{
public:
~PredictCheck();
PredictCheck(PredictConfig* config);
void Clear();
void CheckResult(__u64 key, std::vector<__u32>* result);
void Start();
private:
void Predict(__u64 key);
void Load();
void GetPredictSeq(std::deque<__u32> &preIndexQueue, std::vector<__u32> &predictIndexVect);
void GetSelectWeight(std::deque<__u32> &preIndexQueue, selectNodeVectType &selectVect, sortNodeVectType &sortNodeVect);
public:
DataStructures::HexString mGameName;
private:
std::vector<__u64> mBigObjVect;
std::map<__u64, __u32> mId2iMap;
std::map<__u64, std::vector<__u64> > mId2kMap;
std::deque<__u32> mPreQueue;
std::vector<__u32> mPredictVect;
std::vector< std::vector<float> > mCpMat;
std::vector< std::set<__u32> > mIndexMatSet;
private:
PredictConfig* mConfig;
};
#endif