blob: 06d3bc01bb0934a52198349da2657e8787c46c13 [file] [log] [blame]
Peter Oberparleiter83b33702007-04-27 16:01:34 +02001/*
Sebastian Ottcec85462012-10-15 12:24:56 +02002 * Copyright IBM Corp. 2007, 2012
Peter Oberparleiter83b33702007-04-27 16:01:34 +02003 * Author(s): Peter Oberparleiter <peter.oberparleiter@de.ibm.com>
4 */
5
6#ifndef S390_IDSET_H
7#define S390_IDSET_H S390_IDSET_H
8
Cornelia Huck9d92a7e2008-07-14 09:59:05 +02009#include <asm/schid.h>
Peter Oberparleiter83b33702007-04-27 16:01:34 +020010
11struct idset;
12
13void idset_free(struct idset *set);
14void idset_clear(struct idset *set);
15void idset_fill(struct idset *set);
16
17struct idset *idset_sch_new(void);
18void idset_sch_add(struct idset *set, struct subchannel_id id);
19void idset_sch_del(struct idset *set, struct subchannel_id id);
Sebastian Ottcec85462012-10-15 12:24:56 +020020void idset_sch_del_subseq(struct idset *set, struct subchannel_id schid);
Peter Oberparleiter83b33702007-04-27 16:01:34 +020021int idset_sch_contains(struct idset *set, struct subchannel_id id);
22int idset_sch_get_first(struct idset *set, struct subchannel_id *id);
Sebastian Ott25530552009-09-22 22:58:34 +020023int idset_is_empty(struct idset *set);
Sebastian Ott703e5c92009-09-22 22:58:38 +020024void idset_add_set(struct idset *to, struct idset *from);
Peter Oberparleiter83b33702007-04-27 16:01:34 +020025
26#endif /* S390_IDSET_H */