10 #ifndef PROBING_SAMPLER_H_
11 #define PROBING_SAMPLER_H_
27 DYNAMIC_LARGEST_FIRST,
28 DISTANCE_TWO_LARGEST_FIRST,
30 DISTANCE_TWO_SMALLEST_LAST,
32 DISTANCE_TWO_INCIDENCE_DEGREE,
41 ACYCLIC_FOR_INDIRECT_RECOVERY,
47 template<
class T>
class SGVector;
48 template<
class T>
class SGString;
49 template<
class T>
class CSparseMatrixOperator;
55 class CProbingSampler :
public CTraceSampler
70 CProbingSampler(CSparseMatrixOperator<float64_t>* matrix_operator,
71 int64_t power=1, EOrderingVariant ordering=NATURAL,
72 EColoringVariant coloring=DISTANCE_TWO);
75 virtual ~CProbingSampler();
81 void set_coloring_vector(SGVector<int32_t> coloring_vector);
84 SGVector<int32_t> get_coloring_vector()
const;
92 virtual SGVector<float64_t> sample(
index_t idx)
const;
95 virtual void precompute();
98 virtual const char* get_name()
const
100 return "ProbingSampler";
105 CSparseMatrixOperator<float64_t>* m_matrix_operator;
111 SGVector<int32_t> m_coloring_vector;
114 EOrderingVariant m_ordering;
117 EColoringVariant m_coloring;
120 bool m_is_precomputed;
129 #endif // HAVE_COLPACK
130 #endif // PROBING_SAMPLER_H_
all of classes and functions are contained in the shogun namespace