GETSET_DATA_FUNCS_I not working in Houdini 17 like it used to

   783   0   0
User Avatar
Member
16 posts
Joined: June 2014
Offline
Hi everyone,

I have run into an issue with the GETSET_DATA_FUNCS (GETSET_DATA_FUNCS_F, GETSET_DATA_FUNCS_B, etc.)

It used to be (with versions < 17) that I was able to do:

GETSET_DATA_FUNCS_I(GetTestName(), Test);

where GetTestName() returns a char*, e.g. “test”.

If I do this now with Houdini 17.0.352, I get:

error C2665: ‘UT_StringLit::UT_StringLit’: none of the 3 overloads could convert all the argument types
c:\program files\side effects software\houdini 17.0.352\toolkit\include\ut\ut_stringholder.h(94): note: could be ‘UT_StringLit::UT_StringLit(UT_StringLit &&)’
c:\program files\side effects software\houdini 17.0.352\toolkit\include\ut\ut_stringholder.h(94): note: or ‘UT_StringLit::UT_StringLit(const UT_StringLit &)’
c:\program files\side effects software\houdini 17.0.352\toolkit\include\ut\ut_stringholder.h(59): note: or ‘UT_StringLit::UT_StringLit(void)’


Is there any way to make it work like it used to? Do I need to cast my function return value?

I know it is working if I do:

a)
GETSET_DATA_FUNCS_I("test", Test);

or

b)
#define TEST_NAME "test"  // defined somewhere
GETSET_DATA_FUNCS_I(TEST_NAME , Test);

But I would like to keep using my existing api that has functions to return me the names I need.

Any help would be very much appreciated.

Thanks in advance
  • Quick Links