meta.h 733 Bytes
Newer Older
Guolin Ke's avatar
Guolin Ke committed
1
2
3
4
5
6
7
8
#ifndef LIGHTGBM_META_H_
#define LIGHTGBM_META_H_

#include <cstdint>

#include <limits>
#include <vector>
#include <functional>
Guolin Ke's avatar
Guolin Ke committed
9
#include <memory>
Guolin Ke's avatar
Guolin Ke committed
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <cstdlib>

#if defined(_WIN32)

#include <malloc.h>

#else

#include <mm_malloc.h>

#endif // (_WIN32)


Guolin Ke's avatar
Guolin Ke committed
23
24
25
26
27
28

namespace LightGBM {

/*! \brief Type of data size, it is better to use signed type*/
typedef int32_t data_size_t;

Guolin Ke's avatar
Guolin Ke committed
29
const float kMinScore = -std::numeric_limits<float>::infinity();
Guolin Ke's avatar
Guolin Ke committed
30

Guolin Ke's avatar
Guolin Ke committed
31
const float kEpsilon = 1e-15f;
Guolin Ke's avatar
Guolin Ke committed
32
33
34

using ReduceFunction = std::function<void(const char*, char*, int)>;

Guolin Ke's avatar
Guolin Ke committed
35
using PredictFunction =
Guolin Ke's avatar
Guolin Ke committed
36
std::function<void(const std::vector<std::pair<int, double>>&, double* output)>;
Guolin Ke's avatar
Guolin Ke committed
37
38
39

#define NO_SPECIFIC (-1)

Guolin Ke's avatar
Guolin Ke committed
40
41
}  // namespace LightGBM

Guolin Ke's avatar
Guolin Ke committed
42
#endif   // LightGBM_META_H_