@@ -23,7 +23,8 @@ class QueryResult
2323 m_quantizedTarget (nullptr ),
2424 m_quantizedSize(0 ),
2525 m_resultNum(0 ),
26- m_withMeta(false )
26+ m_withMeta(false ),
27+ m_withSamples(false )
2728 {
2829 }
2930
@@ -32,9 +33,9 @@ class QueryResult
3233 Init (nullptr , p_resultNum, true );
3334 }
3435
35- QueryResult (const void * p_target, int p_resultNum, bool p_withMeta)
36+ QueryResult (const void * p_target, int p_resultNum, bool p_withMeta = false , bool p_withSamples = false )
3637 {
37- Init (p_target, p_resultNum, p_withMeta);
38+ Init (p_target, p_resultNum, p_withMeta, p_withSamples );
3839 }
3940
4041
@@ -93,11 +94,12 @@ class QueryResult
9394 }
9495
9596
96- inline void Init (const void * p_target, int p_resultNum, bool p_withMeta)
97+ inline void Init (const void * p_target, int p_resultNum, bool p_withMeta = false , bool p_withSamples = false )
9798 {
9899 m_target = p_target;
99100 m_resultNum = p_resultNum;
100101 m_withMeta = p_withMeta;
102+ m_withSamples = p_withSamples;
101103 m_quantizedTarget = (void *)p_target;
102104 m_quantizedSize = 0 ;
103105
@@ -177,6 +179,11 @@ class QueryResult
177179 return m_results.Data ();
178180 }
179181
182+ inline bool WithSamples () const
183+ {
184+ return m_withSamples;
185+ }
186+
180187
181188 inline bool WithMeta () const
182189 {
@@ -211,6 +218,7 @@ class QueryResult
211218 m_results[i].VID = -1 ;
212219 m_results[i].Dist = MaxDist;
213220 m_results[i].Meta .Clear ();
221+ m_results[i].Sample .Clear ();
214222 }
215223 }
216224
@@ -249,6 +257,7 @@ class QueryResult
249257 int m_resultNum;
250258
251259 bool m_withMeta;
260+ bool m_withSamples;
252261
253262 Array<BasicResult> m_results;
254263};
0 commit comments