VERB1("Send field %s",field->name);
TRY(gras_datadesc_send_rec(sock,state,refs,sub_type, field_data,
- detect_cycle || (sub_type->flags & gras_datadesc_flag_cycle)));
+ detect_cycle || sub_type->cycle));
}
VERB1("<< Sent all fields of the structure %s", type->name);
field->send(type,state,data);
TRY(gras_datadesc_send_rec(sock,state,refs, sub_type, data,
- detect_cycle || (sub_type->flags & gras_datadesc_flag_cycle)));
+ detect_cycle || sub_type->cycle));
break;
}
if (detect_cycle)
xbt_dict_set_ext(refs, (char*)ref, sizeof(void*), ref, NULL);
TRY(gras_datadesc_send_rec(sock,state,refs, sub_type, *ref,
- detect_cycle || (sub_type->flags & gras_datadesc_flag_cycle)));
+ detect_cycle || sub_type->cycle));
} else if (errcode == no_error) {
VERB1("Not sending data referenced at %p (already done)", (void*)*ref);
} else {
for (cpt=0; cpt<count; cpt++) {
TRY(gras_datadesc_send_rec(sock,state,refs, sub_type, ptr,
- detect_cycle || (sub_type->flags & gras_datadesc_flag_cycle)));
+ detect_cycle || sub_type->cycle));
ptr += elm_size;
}
}
refs = xbt_dict_new();
state = gras_cbps_new();
- errcode = gras_datadesc_send_rec(sock,state,refs,type,(char*)src, (type->flags & gras_datadesc_flag_cycle));
+ errcode = gras_datadesc_send_rec(sock,state,refs,type,(char*)src, type->cycle);
xbt_dict_free(&refs);
gras_cbps_free(&state);
TRY(gras_datadesc_recv_rec(sock,state,refs, sub_type,
r_arch,NULL,0,
field_data,-1,
- detect_cycle || (sub_type->flags & gras_datadesc_flag_cycle)));
+ detect_cycle || sub_type->cycle));
if (field->recv)
field->recv(type,state,(void*)l_data);
TRY(gras_datadesc_recv_rec(sock,state,refs, sub_type,
r_arch,NULL,0,
l_data,-1,
- detect_cycle || (sub_type->flags & gras_datadesc_flag_cycle)));
+ detect_cycle || sub_type->cycle));
if (field->recv)
field->recv(type,state,l_data);
TRY(gras_datadesc_recv_rec(sock,state,refs, sub_type,
r_arch,r_ref,pointer_type->size[r_arch],
(char*)l_referenced, subsubcount,
- detect_cycle || (sub_type->flags & gras_datadesc_flag_cycle)));
+ detect_cycle || sub_type->cycle));
*(void**)l_data=l_referenced;
VERB3("'%s' remotely referenced at %p locally at %p",
for (cpt=0; cpt<count; cpt++) {
TRY(gras_datadesc_recv_rec(sock,state,refs, sub_type,
r_arch, NULL, 0, ptr,-1,
- detect_cycle || (sub_type->flags & gras_datadesc_flag_cycle)));
+ detect_cycle || sub_type->cycle));
ptr += elm_size;
}
errcode = gras_datadesc_recv_rec(sock, state, refs, type,
r_arch, NULL, 0,
(char *) dst,-1,
- (type->flags & gras_datadesc_flag_cycle));
+ type->cycle);
xbt_dict_free(&refs);
gras_cbps_free(&state);
printf(" VERB1(\"Send field %s\");\n",field->name);
printf(" data += %lu;\n",field->offset[GRAS_THISARCH]);
TRY(gras_datadesc_gen_send_rec(sock,state,refs,sub_type, field_data,
- detect_cycle || (sub_type->flags & gras_datadesc_flag_cycle)));
+ detect_cycle || sub_type->cycle));
printf(" data -= %lu;\n",field->offset[GRAS_THISARCH]);
xbt_assert0(!field->recv, "Callbacks not implemented in IDL compiler");
field->send(state,data);
TRY(gras_datadesc_gen_send_rec(sock,state,refs, sub_type, data,
- detect_cycle || (sub_type->flags & gras_datadesc_flag_cycle)));
+ detect_cycle || sub_type->cycle));
break;
}
if (detect_cycle)
xbt_dict_set_ext(refs, (char*)ref, sizeof(void*), ref, NULL);
TRY(gras_datadesc_gen_send_rec(sock,state,refs, sub_type, *ref,
- detect_cycle || (sub_type->flags & gras_datadesc_flag_cycle)));
+ detect_cycle || sub_type->cycle));
} else if (errcode == no_error) {
VERB1("Not sending data referenced at %p (already done)", (void*)*ref);
} else {
for (cpt=0; cpt<count; cpt++) {
TRY(gras_datadesc_gen_send_rec(sock,state,refs, sub_type, ptr,
- detect_cycle || (sub_type->flags & gras_datadesc_flag_cycle)));
+ detect_cycle || sub_type->cycle));
ptr += elm_size;
}
}
printf("xbt_error_t gras_%s_send(gras_socket_t sock,void *dst){\n",
type->name);
errcode = gras_datadesc_gen_send_rec(sock,state,refs,type,(char*)src,
- detect_cycle || (sub_type->flags & gras_datadesc_flag_cycle));
+ detect_cycle || sub_type->cycle);
printf("}\n");
xbt_dict_free(&refs);
TRY(gras_datadesc_gen_recv_rec(sock,state,refs, sub_type,
r_arch,NULL,0,
field_data,-1,
- detect_cycle || (sub_type->flags & gras_datadesc_flag_cycle)));
+ detect_cycle || sub_type->cycle));
if (field->recv)
field->recv(type,state,data);
TRY(gras_datadesc_gen_recv_rec(sock,state,refs, sub_type,
r_arch,NULL,0,
l_data,-1,
- detect_cycle || (sub_type->flags & gras_datadesc_flag_cycle)));
+ detect_cycle || sub_type->cycle));
if (field->recv)
field->recv(type,state,data);
TRY(gras_datadesc_gen_recv_rec(sock,state,refs, sub_type,
r_arch,r_ref,pointer_type->size[r_arch],
(char*)l_referenced, subsubcount,
- detect_cycle || (sub_type->flags & gras_datadesc_flag_cycle)));
+ detect_cycle || sub_type->cycle));
*(void**)l_data=l_referenced;
VERB3("'%s' remotely referenced at %p locally at %p",
for (cpt=0; cpt<count; cpt++) {
TRY(gras_datadesc_gen_recv_rec(sock,state,refs, sub_type,
r_arch, NULL, 0, ptr,-1,
- detect_cycle || (sub_type->flags & gras_datadesc_flag_cycle)));
+ detect_cycle || sub_type->cycle));
ptr += elm_size;
}
errcode = gras_datadesc_gen_recv_rec(sock, state, refs, type,
r_arch, NULL, 0,
(char *) dst,-1,
- (sub_type->flags & gras_datadesc_flag_cycle));
+ sub_type->cycle);
printf("}\n");
xbt_dict_free(&refs);