allocate_resource
Prev | Resources Management | Next

## Name

allocate_resource — allocate empty slot in the resource tree given range & alignment. The resource will be reallocated with a new size if it was already allocated

## Synopsis

`int allocate_resource (` | struct resource * root,
| struct resource * new,
| resource_size_t size,
| resource_size_t min,
| resource_size_t max,
| resource_size_t align,
| resource_size_t (*alignf) `(`void *, const struct resource *, resource_size_t, resource_size_t`)`,
| void * alignf_data`)`;

## Arguments

`root`

  root resource descriptor

`new`

  resource descriptor desired by caller

`size`

  requested resource region size

`min`

  minimum boundary to allocate

`max`

  maximum boundary to allocate

`align`

  alignment requested, in bytes

`alignf`

  alignment function, optional, called if not NULL

`alignf_data`

  arbitrary data to pass to the `alignf` function

Prev | Up | Next
release_resource | Home | adjust_resource