
/*
 * Copyright (C) 2002-2004 Igor Sysoev
 */


#ifndef _NGX_SLAB_H_INCLUDED_
#define _NGX_SLAB_H_INCLUDED_


#include <ngx_config.h>
#include <ngx_core.h>


typedef struct ngx_free_slab_s  ngx_free_slab_t;

typedef struct ngx_free_slab_s {
    ngx_free_slab_t  *next;
}


typedef struct ngx_slab_block_s  ngx_slab_block_t;

typedef struct ngx_slab_block_s {
    ngx_free_slab_t  *free;
    ngx_slab_buf_t   *next;
    size_t            color;
};


typedef struct {
    ngx_slab_buf_t   *blocks;
    size_t            size;

    void             *start;
    uint32_t          map;

    ngx_log_t        *log;
    ngx_free_pool_t   free;
} ngx_slab_pool_t;


#endif /* _NGX_SLAB_H_INCLUDED_ */
