StarPU Handbook
starpu_bitmap.h
Go to the documentation of this file.
1 /* StarPU --- Runtime system for heterogeneous multicore architectures.
2  *
3  * Copyright (C) 2013-2015,2017,2019 CNRS
4  * Copyright (C) 2013,2016 Université de Bordeaux
5  * Copyright (C) 2013 Simon Archipoff
6  *
7  * StarPU is free software; you can redistribute it and/or modify
8  * it under the terms of the GNU Lesser General Public License as published by
9  * the Free Software Foundation; either version 2.1 of the License, or (at
10  * your option) any later version.
11  *
12  * StarPU is distributed in the hope that it will be useful, but
13  * WITHOUT ANY WARRANTY; without even the implied warranty of
14  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
15  *
16  * See the GNU Lesser General Public License in COPYING.LGPL for more details.
17  */
18 
19 #ifndef __STARPU_BITMAP_H__
20 #define __STARPU_BITMAP_H__
21 
22 #ifdef __cplusplus
23 extern "C"
24 {
25 #endif
26 
34 struct starpu_bitmap *starpu_bitmap_create(void) STARPU_ATTRIBUTE_MALLOC;
36 void starpu_bitmap_destroy(struct starpu_bitmap *b);
37 
39 void starpu_bitmap_set(struct starpu_bitmap *b, int e);
41 void starpu_bitmap_unset(struct starpu_bitmap *b, int e);
43 void starpu_bitmap_unset_all(struct starpu_bitmap *b);
44 
46 int starpu_bitmap_get(struct starpu_bitmap *b, int e);
48 void starpu_bitmap_unset_and(struct starpu_bitmap *a, struct starpu_bitmap *b, struct starpu_bitmap *c);
50 void starpu_bitmap_or(struct starpu_bitmap *a, struct starpu_bitmap *b);
52 int starpu_bitmap_and_get(struct starpu_bitmap *b1, struct starpu_bitmap *b2, int e);
54 int starpu_bitmap_cardinal(struct starpu_bitmap *b);
55 
57 int starpu_bitmap_first(struct starpu_bitmap *b);
59 int starpu_bitmap_last(struct starpu_bitmap *b);
61 int starpu_bitmap_next(struct starpu_bitmap *b, int e);
63 int starpu_bitmap_has_next(struct starpu_bitmap *b, int e);
64 
67 #ifdef __cplusplus
68 }
69 #endif
70 
71 #endif
starpu_bitmap_next
int starpu_bitmap_next(struct starpu_bitmap *b, int e)
starpu_bitmap_destroy
void starpu_bitmap_destroy(struct starpu_bitmap *b)
starpu_bitmap_create
struct starpu_bitmap * starpu_bitmap_create(void) STARPU_ATTRIBUTE_MALLOC
starpu_bitmap_and_get
int starpu_bitmap_and_get(struct starpu_bitmap *b1, struct starpu_bitmap *b2, int e)
starpu_bitmap_has_next
int starpu_bitmap_has_next(struct starpu_bitmap *b, int e)
starpu_bitmap_first
int starpu_bitmap_first(struct starpu_bitmap *b)
starpu_bitmap_get
int starpu_bitmap_get(struct starpu_bitmap *b, int e)
starpu_bitmap_set
void starpu_bitmap_set(struct starpu_bitmap *b, int e)
starpu_bitmap_cardinal
int starpu_bitmap_cardinal(struct starpu_bitmap *b)
starpu_bitmap_unset_all
void starpu_bitmap_unset_all(struct starpu_bitmap *b)
starpu_bitmap_or
void starpu_bitmap_or(struct starpu_bitmap *a, struct starpu_bitmap *b)
starpu_bitmap_unset
void starpu_bitmap_unset(struct starpu_bitmap *b, int e)
STARPU_ATTRIBUTE_MALLOC
#define STARPU_ATTRIBUTE_MALLOC
Definition: starpu_util.h:114
starpu_bitmap_unset_and
void starpu_bitmap_unset_and(struct starpu_bitmap *a, struct starpu_bitmap *b, struct starpu_bitmap *c)
starpu_bitmap_last
int starpu_bitmap_last(struct starpu_bitmap *b)