From: Petr N. <Pet...@am...> - 2011-02-14 14:27:57
|
Hi, you don't usually primitive types "by reference" in Perl. Instead, you need to treat them as input-output parameters. The idiom is C++ declaration: int someFunc(int ¶meter); Perl invocation: ($retval,$parameter) = someFunc($parameter); I believe you can use INOUT typemaps from the standard swig library. I mean, there used to be bugs in them when I was trying to use them, but according to swig's bugzilla everything seems to work find in swig 2. Note #1: For non-primitive types where $parameter encapsulates an underlying C++ object, a call by reference is straightforward. Note #2: It is possible to write a typemap with code that manipulates the input Perl scalar from the C side, but that violates the principle of least surprise; not many Perl coders expect parameters to be changed by methods. Regards, -- Petr Novotný Prague Development Center, AMDOCS +420266773112, +420608711517 "Great minds discuss ideas; Average minds discuss events; Small minds discuss people." - Eleanor Roosevelt This message and the information contained herein is proprietary and confidential and subject to the Amdocs policy statement, you may review at http://www.amdocs.com/email_disclaimer.asp |