Defines | Functions

Builder.cpp File Reference

#include <string.h>
#include <math.h>
#include <stdlib.h>
#include <stdio.h>
#include <assert.h>
#include "Builder.h"
#include "hash.h"
Include dependency graph for Builder.cpp:

Defines

#define BUG_ON(x)   assert(!(x))

Functions

struct crush_mapcrush_create ()
void crush_finalize (struct crush_map *map)
int crush_add_rule (struct crush_map *map, struct crush_rule *rule, int ruleno)
struct crush_rulecrush_make_rule (int len, int ruleset, int type, int minsize, int maxsize)
void crush_rule_set_step (struct crush_rule *rule, int n, int op, int arg1, int arg2)
int crush_get_next_bucket_id (struct crush_map *map)
int crush_add_bucket (struct crush_map *map, int id, struct crush_bucket *bucket)
struct crush_bucket_uniformcrush_make_uniform_bucket (int hash, int type, int size, int *items, int item_weight)
struct crush_bucket_listcrush_make_list_bucket (int hash, int type, int size, int *items, int *weights)
struct crush_bucket_treecrush_make_tree_bucket (int hash, int type, int size, int *items, int *weights)
struct crush_bucket_strawcrush_make_straw_bucket (int hash, int type, int size, int *items, int *weights)
struct crush_bucketcrush_make_bucket (int alg, int hash, int type, int size, int *items, int *weights)

Define Documentation

#define BUG_ON (   x )    assert(!(x))

Function Documentation

int crush_add_bucket ( struct crush_map map,
int  id,
struct crush_bucket bucket 
)
int crush_add_rule ( struct crush_map map,
struct crush_rule rule,
int  ruleno 
)

rules

struct crush_map* crush_create (  ) [read]
void crush_finalize ( struct crush_map map )
int crush_get_next_bucket_id ( struct crush_map map )

buckets

struct crush_bucket* crush_make_bucket ( int  alg,
int  hash,
int  type,
int  size,
int *  items,
int *  weights 
) [read]
struct crush_bucket_list* crush_make_list_bucket ( int  hash,
int  type,
int  size,
int *  items,
int *  weights 
) [read]
struct crush_rule* crush_make_rule ( int  len,
int  ruleset,
int  type,
int  minsize,
int  maxsize 
) [read]
struct crush_bucket_straw* crush_make_straw_bucket ( int  hash,
int  type,
int  size,
int *  items,
int *  weights 
) [read]
struct crush_bucket_tree* crush_make_tree_bucket ( int  hash,
int  type,
int  size,
int *  items,
int *  weights 
) [read]
struct crush_bucket_uniform* crush_make_uniform_bucket ( int  hash,
int  type,
int  size,
int *  items,
int  item_weight 
) [read]
void crush_rule_set_step ( struct crush_rule rule,
int  n,
int  op,
int  arg1,
int  arg2 
)