Mentions légales du service

Skip to content
Snippets Groups Projects
Commit 86bc266a authored by hhakim's avatar hhakim
Browse files

Fix pyx code to copy pyfaust ConstraintGeneric to C++ equivalent class, the...

Fix pyx code to copy pyfaust ConstraintGeneric to C++ equivalent class, the _cons_value attribute is not mandatory (eg proj_id.constraint doesn't have one).
parent 255d58b8
Branches
Tags
No related merge requests found
......@@ -111,12 +111,13 @@ cdef class FaustAlgoGen@TYPE_NAME@:
elif(cons.is_mat_constraint()):
cpp_constraints[i] = <PyxConstraintMat[@TYPE@]*> \
PyMem_Malloc(sizeof(PyxConstraintMat[@TYPE@]))
cons._cons_value = cons._cons_value.astype(type2dtype('@TYPE@'))
tmp_mat = cons._cons_value
(<PyxConstraintMat[@TYPE@]*>cpp_constraints[i]).parameter =\
&tmp_mat[0,0]
(<PyxConstraintMat[@TYPE@]*>cpp_constraints[i]).parameter_sz =\
cons._cons_value_sz
if cons._cons_value is not None: # eg. proj_id has no _cons_value
cons._cons_value = cons._cons_value.astype(type2dtype('@TYPE@'))
tmp_mat = cons._cons_value
(<PyxConstraintMat[@TYPE@]*>cpp_constraints[i]).parameter =\
&tmp_mat[0,0]
(<PyxConstraintMat[@TYPE@]*>cpp_constraints[i]).parameter_sz =\
cons._cons_value_sz
else:
raise ValueError("Constraint type/name is not recognized.")
cpp_constraints[i].name = cons.name
......@@ -261,12 +262,13 @@ cdef class FaustAlgoGen@TYPE_NAME@:
elif(cons.is_mat_constraint()):
cpp_constraints[i] = <PyxConstraintMat[@TYPE@]*> \
PyMem_Malloc(sizeof(PyxConstraintMat[@TYPE@]))
cons._cons_value = cons._cons_value.astype(type2dtype('@TYPE@'))
tmp_mat = cons._cons_value
(<PyxConstraintMat[@TYPE@]*>cpp_constraints[i]).parameter =\
&tmp_mat[0,0]
(<PyxConstraintMat[@TYPE@]*>cpp_constraints[i]).parameter_sz =\
cons._cons_value_sz
if cons._cons_value is not None: # eg. proj_id has no _cons_value
cons._cons_value = cons._cons_value.astype(type2dtype('@TYPE@'))
tmp_mat = cons._cons_value
(<PyxConstraintMat[@TYPE@]*>cpp_constraints[i]).parameter =\
&tmp_mat[0,0]
(<PyxConstraintMat[@TYPE@]*>cpp_constraints[i]).parameter_sz =\
cons._cons_value_sz
else:
raise ValueError("Constraint type/name is not recognized.")
cpp_constraints[i].name = cons.name
......@@ -371,12 +373,13 @@ cdef class FaustAlgoGen@TYPE_NAME@:
elif cons.is_mat_constraint():
cpp_constraints[i] = <PyxConstraintMat[@TYPE@]*> \
PyMem_Malloc(sizeof(PyxConstraintMat[@TYPE@]))
cons._cons_value = cons._cons_value.astype(type2dtype('@TYPE@'))
tmp_mat = cons._cons_value
(<PyxConstraintMat[@TYPE@]*>cpp_constraints[i]).parameter =\
&tmp_mat[0,0]
(<PyxConstraintMat[@TYPE@]*>cpp_constraints[i]).parameter_sz =\
cons._cons_value_sz
if cons._cons_value is not None: # eg. proj_id has no _cons_value
cons._cons_value = cons._cons_value.astype(type2dtype('@TYPE@'))
tmp_mat = cons._cons_value
(<PyxConstraintMat[@TYPE@]*>cpp_constraints[i]).parameter =\
&tmp_mat[0,0]
(<PyxConstraintMat[@TYPE@]*>cpp_constraints[i]).parameter_sz =\
cons._cons_value_sz
else:
raise ValueError("Constraint type/name is not recognized.")
cpp_constraints[i].name = cons.name
......@@ -514,12 +517,13 @@ cdef class FaustAlgoGen@TYPE_NAME@:
elif(cons.is_mat_constraint()):
cpp_constraints[i] = <PyxConstraintMat[@TYPE@]*> \
PyMem_Malloc(sizeof(PyxConstraintMat[@TYPE@]))
cons._cons_value = cons._cons_value.astype(type2dtype('@TYPE@'))
tmp_mat = cons._cons_value
(<PyxConstraintMat[@TYPE@]*>cpp_constraints[i]).parameter =\
&tmp_mat[0,0]
(<PyxConstraintMat[@TYPE@]*>cpp_constraints[i]).parameter_sz =\
cons._cons_value_sz
if cons._cons_value is not None: # eg. proj_id has no _cons_value
cons._cons_value = cons._cons_value.astype(type2dtype('@TYPE@'))
tmp_mat = cons._cons_value
(<PyxConstraintMat[@TYPE@]*>cpp_constraints[i]).parameter =\
&tmp_mat[0,0]
(<PyxConstraintMat[@TYPE@]*>cpp_constraints[i]).parameter_sz =\
cons._cons_value_sz
else:
raise ValueError("Constraint type/name is not recognized.")
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment