~ubuntu-branches/ubuntu/wily/openvswitch/wily

« back to all changes in this revision

Viewing changes to lib/id-pool.h

  • Committer: Package Import Robot
  • Author(s): James Page
  • Date: 2015-08-10 11:35:15 UTC
  • mfrom: (1.1.30)
  • Revision ID: package-import@ubuntu.com-20150810113515-575vj06oq29emxsn
Tags: 2.4.0~git20150810.97bab95-0ubuntu1
* New upstream snapshot from 2.4 branch:
  - d/*: Align any relevant packaging changes with upstream.
* d/*: wrap-and-sort.
* d/openvswitch-{common,vswitch}.install: Correct install location for
  bash completion files.
* d/tests/openflow.py: Explicitly use ovs-testcontroller as provided
  by 2.4.0 release.

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/*
 
2
 * Copyright (c) 2014 Nicira, Inc.
 
3
 * Copyright (c) 2014 Netronome.
 
4
 *
 
5
 * Licensed under the Apache License, Version 2.0 (the "License");
 
6
 * you may not use this file except in compliance with the License.
 
7
 * You may obtain a copy of the License at:
 
8
 *
 
9
 *     http://www.apache.org/licenses/LICENSE-2.0
 
10
 *
 
11
 * Unless required by applicable law or agreed to in writing, software
 
12
 * distributed under the License is distributed on an "AS IS" BASIS,
 
13
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 
14
 * See the License for the specific language governing permissions and
 
15
 * limitations under the License.
 
16
 */
 
17
 
 
18
#ifndef ID_POOL_H
 
19
#define ID_POOL_H
 
20
 
 
21
#include <stdbool.h>
 
22
#include <stddef.h>
 
23
#include <stdint.h>
 
24
 
 
25
struct id_pool;
 
26
 
 
27
struct id_pool *id_pool_create(uint32_t base, uint32_t n_ids);
 
28
void id_pool_destroy(struct id_pool *);
 
29
bool id_pool_alloc_id(struct id_pool *, uint32_t *id);
 
30
void id_pool_free_id(struct id_pool *, uint32_t id);
 
31
void id_pool_add(struct id_pool *, uint32_t id);
 
32
 
 
33
/*
 
34
 * ID pool.
 
35
 * ========
 
36
 *
 
37
 * Pool of unique 32bit ids.
 
38
 *
 
39
 *
 
40
 * Thread-safety
 
41
 * =============
 
42
 *
 
43
 * APIs are not thread safe.
 
44
 */
 
45
#endif  /* id-pool.h */