15cd068c200795537fd78c423254389c8a07e2d20Sage Weil#ifndef CEPH_CRUSH_MAPPER_H 25cd068c200795537fd78c423254389c8a07e2d20Sage Weil#define CEPH_CRUSH_MAPPER_H 35ecc0a0f8128b1876e8614638deaed49cc8b174cSage Weil 45ecc0a0f8128b1876e8614638deaed49cc8b174cSage Weil/* 55ecc0a0f8128b1876e8614638deaed49cc8b174cSage Weil * CRUSH functions for find rules and then mapping an input to an 65ecc0a0f8128b1876e8614638deaed49cc8b174cSage Weil * output set. 75ecc0a0f8128b1876e8614638deaed49cc8b174cSage Weil * 85ecc0a0f8128b1876e8614638deaed49cc8b174cSage Weil * LGPL2 95ecc0a0f8128b1876e8614638deaed49cc8b174cSage Weil */ 105ecc0a0f8128b1876e8614638deaed49cc8b174cSage Weil 115ecc0a0f8128b1876e8614638deaed49cc8b174cSage Weil#include "crush.h" 125ecc0a0f8128b1876e8614638deaed49cc8b174cSage Weil 135ecc0a0f8128b1876e8614638deaed49cc8b174cSage Weilextern int crush_find_rule(struct crush_map *map, int pool, int type, int size); 145ecc0a0f8128b1876e8614638deaed49cc8b174cSage Weilextern int crush_do_rule(struct crush_map *map, 155ecc0a0f8128b1876e8614638deaed49cc8b174cSage Weil int ruleno, 165ecc0a0f8128b1876e8614638deaed49cc8b174cSage Weil int x, int *result, int result_max, 175ecc0a0f8128b1876e8614638deaed49cc8b174cSage Weil int forcefeed, /* -1 for none */ 185ecc0a0f8128b1876e8614638deaed49cc8b174cSage Weil __u32 *weights); 195ecc0a0f8128b1876e8614638deaed49cc8b174cSage Weil 205ecc0a0f8128b1876e8614638deaed49cc8b174cSage Weil#endif 21