| 183 | } |
| 184 | |
| 185 | SIValue *Proc_PagerankStep |
| 186 | ( |
| 187 | ProcedureCtx *ctx |
| 188 | ) { |
| 189 | ASSERT(ctx->privateData); |
| 190 | |
| 191 | PagerankContext *pdata = (PagerankContext *)ctx->privateData; |
| 192 | |
| 193 | // depleted/no results |
| 194 | if(pdata->i >= pdata->n || pdata->ranking == NULL) return NULL; |
| 195 | |
| 196 | LAGraph_PageRank rank = pdata->ranking[pdata->i++]; |
| 197 | NodeID node_id = (pdata->mapping) ? pdata->mapping[rank.page] : rank.page; |
| 198 | |
| 199 | Graph_GetNode(pdata->g, node_id, &pdata->node); |
| 200 | if(pdata->yield_node) *pdata->yield_node = SI_Node(&pdata->node); |
| 201 | if(pdata->yield_score) *pdata->yield_score = SI_DoubleVal(rank.pagerank); |
| 202 | |
| 203 | return pdata->output; |
| 204 | } |
| 205 | |
| 206 | ProcedureResult Proc_PagerankFree |
| 207 | ( |
nothing calls this directly
no test coverage detected