parExQHV
Compute Exclusive HyperVolumes using threads
 All Data Structures Files Functions Variables Macros
tpool.h
1 /*
2  *
3  * Copyright (c) Year(s), 2013, Luis M. S. Russo and Alexandre
4  * P. Francisco / KDBIO / INESC-ID, <qhv@kdbio.inesc-id.pt>
5  *
6  * Any published media that is related with to use of the distributed
7  * software, or derived software, must contain a reference to "Extending
8  * quick hypervolume. Luís M. S. Russo, Alexandre P. Francisco:
9  * J. Heuristics 22(3): 245-271 (2016)".
10  *
11  * Permission to use, copy, modify, and/or distribute this software for
12  * any purpose with or without fee is hereby granted, provided that the
13  * above copyright notice and this permission notice appear in all
14  * copies.
15  *
16  * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL
17  * WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED
18  * WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE
19  * AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
20  * DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
21  * PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
22  * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
23  * PERFORMANCE OF THIS SOFTWARE.
24  *
25  */
26 
49 /* Write C-c d i to produce file information */
50 
51 #ifndef TPOOL_H
52 #define TPOOL_H
53 
54 #include "tdata.h"
55 
73 void launch(
74  int w,
75  void* (*console)(void *threadid),
76  void (*run)(toolBox* b, taskData* d, const jobData* jd),
77  void (*openBox)(toolBox* b),
78  void (*closeBox)(toolBox* b),
79  int (*priority)(taskData* d),
80  void (*jobCopy)(jobData* des, jobData* src),
81  void (*taskCopy)(taskData* dst, taskData* src),
82  void (*merge)(jobData* dst, taskData* src),
83  void (*publish)(int jid, jobData* jd)
84  );
95 void prun(taskData* d, int p);
96 
104 void postJob(jobData* jd, taskData* d);
105 
106 /* The following functions can be used to upload jobs and tasks. */
107 
108 /*** typedefs(not structures) and defined constants *******/
109 
110 /*** enums ************************************************/
111 
112 /*** structures declarations (only if really necessary) ***/
113 
114 /*** declarations of public functions (first inlines) *****/
115 
116 #endif /* TPOOL_H */
Definition: tdata.h:48
Definition: tdata.h:80
Definition: tdata.h:72