Guys
I used xdress to wrap some cpp as part of PyNE, the cpp itself compiles
fine, however when compiling the cython I get the following error
ent_names, would be a std::vector<std::string>, if that matters.
Error compiling Cython file:
------------------------------------------------------------
...
ent_names_size = len(ent_names)
if isinstance(ent_names, np.ndarray) and (<np.ndarray>
ent_names).descr.type_num == np.NPY_OBJECT:
ent_names_data = <void *> np.PyArray_DATA(<np.ndarray>
ent_names)
ent_names_proxy = cpp_vector[std_string](<size_t>
ent_names_size)
for ient_names in range(ent_names_size):
ent_names_proxy[ient_names] = ent_names_data[ient_names]
^
------------------------------------------------------------
/mnt/data/opt/pyne_dev/pyne/pyne/tally.pyx:177:60: Cannot assign type
'void' to 'string'
Error compiling Cython file:
------------------------------------------------------------
...
for ient_names in range(ent_names_size):
ent_names_proxy[ient_names] = ent_names_data[ient_names]
else:
ent_names_proxy = cpp_vector[std_string](<size_t>
ent_names_size)
for ient_names in range(ent_names_size):
ent_names_proxy[ient_names] = <void> ent_names[ient_names]
^
------------------------------------------------------------
/mnt/data/opt/pyne_dev/pyne/pyne/tally.pyx:181:46: Cannot assign type
'void' to 'string'
Error compiling Cython file:
------------------------------------------------------------
...
value_size = len(value)
if isinstance(value, np.ndarray) and (<np.ndarray>
value).descr.type_num == np.NPY_OBJECT:
value_data = <void *> np.PyArray_DATA(<np.ndarray> value)
value_proxy = cpp_vector[std_string](<size_t> value_size)
for ivalue in range(value_size):
value_proxy[ivalue] = value_data[ivalue]
^
------------------------------------------------------------
/mnt/data/opt/pyne_dev/pyne/pyne/tally.pyx:350:52: Cannot assign type
'void' to 'string'
Error compiling Cython file:
------------------------------------------------------------
...
for ivalue in range(value_size):
value_proxy[ivalue] = value_data[ivalue]
else:
value_proxy = cpp_vector[std_string](<size_t> value_size)
for ivalue in range(value_size):
value_proxy[ivalue] = <void> value[ivalue]
^
------------------------------------------------------------
/mnt/data/opt/pyne_dev/pyne/pyne/tally.pyx:354:42: Cannot assign type
'void' to 'string'
make[2]: *** [pyne/tally.cxx] Error 1
Thanks