39 #include "scip/scip.h" 47 ScipDiffParamSetTh::createDatatype(
55 ScipDiffParamSetTh::clone(
81 paramName = boolParamNames;
85 strcpy(cloneParamName, paramName);
86 cloneParamName += strlen(cloneParamName) + 1;
87 paramName += strlen(paramName) + 1;
92 paramName = intParamNames;
96 strcpy(cloneParamName, paramName);
97 cloneParamName += strlen(cloneParamName) + 1;
98 paramName += strlen(paramName) + 1;
103 paramName = longintParamNames;
107 strcpy(cloneParamName, paramName);
108 cloneParamName += strlen(cloneParamName) + 1;
109 paramName += strlen(paramName) + 1;
114 paramName = realParamNames;
118 strcpy(cloneParamName, paramName);
119 cloneParamName += strlen(cloneParamName) + 1;
120 paramName += strlen(paramName) + 1;
125 paramName = charParamNames;
129 strcpy(cloneParamName, paramName);
130 cloneParamName += strlen(cloneParamName) + 1;
131 paramName += strlen(paramName) + 1;
136 char *paramValue = stringParamValues;
138 paramName = stringParamNames;
141 strcpy(cloneParamValue, paramValue);
142 cloneParamValue += strlen(cloneParamValue) + 1;
143 paramValue += strlen(paramValue) + 1;
144 strcpy(cloneParamName, paramName);
145 cloneParamName += strlen(cloneParamName) + 1;
146 paramName += strlen(paramName) + 1;
153 ScipDiffParamSetTh::setValues(
178 paramName = boolParamNames;
183 strcpy(paramName, fromParamName);
184 fromParamName += strlen(fromParamName) + 1;
185 paramName += strlen(paramName) + 1;
189 paramName = intParamNames;
194 strcpy(paramName, fromParamName);
195 fromParamName += strlen(fromParamName) + 1;
196 paramName += strlen(paramName) + 1;
200 paramName = longintParamNames;
205 strcpy(paramName, fromParamName);
206 fromParamName += strlen(fromParamName) + 1;
207 paramName += strlen(paramName) + 1;
211 paramName = realParamNames;
216 strcpy(paramName, fromParamName);
217 fromParamName += strlen(fromParamName) + 1;
218 paramName += strlen(paramName) + 1;
222 paramName = charParamNames;
227 strcpy(paramName, fromParamName);
228 fromParamName += strlen(fromParamName) + 1;
229 paramName += strlen(paramName) + 1;
233 char *paramValue = stringParamValues;
235 paramName = stringParamNames;
239 strcpy(paramValue, fromParamValue);
240 fromParamValue += strlen(fromParamValue) + 1;
241 paramValue += strlen(paramValue) + 1;
242 strcpy(paramName, fromParamName);
243 fromParamName += strlen(fromParamName) + 1;
244 paramName += strlen(paramName) + 1;
250 ScipDiffParamSetTh::bcast(
257 if( commTh->getRank() == root )
259 for(
int i = 0; i < commTh->getSize(); i++ )
264 sent = createDatatype();
286 ScipDiffParamSetTh::send(
302 ScipDiffParamSetTh::receive(
size_t charParamNamesSize
unsigned int * boolParamValues
static ScipParaCommTh * comm
size_t stringParamValuesSize
#define PARA_COMM_CALL(paracommcall)
ScipDiffParamSet extension for threads communication.
static const int ParaSolverDiffParamType
#define DEF_PARA_COMM(para_comm, comm)
size_t longintParamNamesSize
size_t boolParamNamesSize
static const int TagSolverDiffParamSet
size_t stringParamNamesSize
long long * longintParamValues
size_t realParamNamesSize
Base class of communicator object.