cl_propagators.h
1.24 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
/*
* cl_propagators.h
*
* Created on: 19/04/2016
* Author: pedro
*/
#ifndef SRC_KERNELS_CL_PROPAGATORS_H_
#define SRC_KERNELS_CL_PROPAGATORS_H_
#ifndef __OPENCL_VERSION__
#include "../config.h"
#include "../domains.h"
#include "../utils/cl_syntax.h"
#include "cl_aux_functions.h"
#include "cl_constraints.h"
#include "cl_variables.h"
#include "cl_ttl.h"
void propagate(
CL_VS_MEM VARS* vs, CL_CS_MEM cl_constr* cs, CL_INTS_MEM int* cs_per_v_idx, CL_INTS_MEM int* vs_per_c_idx,
#if CS_AT_LEAST == 1 || CS_AT_MOST == 1 || CS_AT_MOST_ONE == 1 || CS_EXACTLY == 1 || CS_LINEAR == 1 || CS_LINEAR_LT == 1 || CS_LINEAR_NE == 1 || CS_LINEAR_VAR == 1 || CS_ELEMENT_INT_VAR == 1
CL_INTS_MEM int* c_consts,
#endif
#if (CS_MAXIMIZE == 1 || CS_MINIMIZE == 1) && CL_WORK == CL_OPT
__global unsigned int* val_to_opt_g,
#endif
#if CL_STATS == 1
__global unsigned long* nodes_fail,
__global unsigned long* nodes_expl,
__global unsigned long* pruning,
__global unsigned long* props_ok,
#endif
CL_MEMORY VARS_PROP* vs_prop_, unsigned int prop_v_id, CL_MEMORY unsigned short* vs_id_to_prop_ TTL_CTR
#if CL_N_DEVS > 1
, unsigned long* props_count
#endif
CS_IGNORE_FUNC, bool* prop_ok, __global int* terms_mem);
#endif
#endif /* SRC_KERNELS_CL_PROPAGATORS_H_ */