[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[amibroker] Re: ADK printf



PureBytes Links

Trading Reference Links

Cheers Tomasz,

I went as far as eight. Never would've guessed 21! :)
You should add that to the ADK doco as it's a special case.

When you say fill all vars with EMPTY_VAL, do you mean set AmiVar.type = VAR_NONE?

Paul, the following article talks about wrapping variable length argument functions.
http://www.swig.org/Doc1.3/Varargs.html

Regards,
Julian.

--- In amibroker@xxxxxxxxxxxxxxx, "Tomasz Janeczko" <groups@xxx> wrote:
>
> Hello,
> 
> AmiBroker ADK requires you to pass the number of arguments regardless.
> The magic value for printf call is 21.
> 
> AmiVar vars[ 21 ];
> 
> SiteInterface.CallFunction( "printf", 21, vars );
> 
> You need to fill all unused vars with EMPTY_VAL .
> 
> Best regards,
> Tomasz Janeczko
> amibroker.com
> ----- Original Message ----- 
> From: "Paul Ho" <paul.tsho@xxx>
> To: <amibroker@xxxxxxxxxxxxxxx>
> Sent: Saturday, August 15, 2009 4:55 PM
> Subject: [amibroker] Re: ADK printf
> 
> 
> > When functions of variable arguments are implemented. the three dots as in printf(const char*str, ...) tells the compiler not to 
> > do any parsing of arguments but simply pass all arguments as a block of memory on the stack pointed to by str. However this is 
> > intercepted by Amibroker's wrapper codes that is reinforcing the ArgsTable and NumArg protocol. I reckon if you copy all your 
> > arguments as a single block of memory pointed to by a char pointer and make Args.string = charptr and use the CallFunction with 
> > this 1 argument, The printf on the other side may be waiting for it.
> > Let us know if this work
> > Havent tried it myself though.
> > /Paul.
> > --- In amibroker@xxxxxxxxxxxxxxx, "Julian" <juliangoodsell@> wrote:
> >>
> >> How do you call this function from the ADK?
> >>
> >> SiteInterface.CallFunction("printf", ?, ?);
> >> I get invalid number of arguments.
> >>
> >> Is there another way to write to the Interpretation window?
> >>
> >> Jules.
> >>
> >
> >
> >
> >
> > ------------------------------------
> >
> > **** IMPORTANT PLEASE READ ****
> > This group is for the discussion between users only.
> > This is *NOT* technical support channel.
> >
> > TO GET TECHNICAL SUPPORT send an e-mail directly to
> > SUPPORT {at} amibroker.com
> >
> > TO SUBMIT SUGGESTIONS please use FEEDBACK CENTER at
> > http://www.amibroker.com/feedback/
> > (submissions sent via other channels won't be considered)
> >
> > For NEW RELEASE ANNOUNCEMENTS and other news always check DEVLOG:
> > http://www.amibroker.com/devlog/
> >
> > Yahoo! Groups Links
> >
> >
> >
>




------------------------------------

**** IMPORTANT PLEASE READ ****
This group is for the discussion between users only.
This is *NOT* technical support channel.

TO GET TECHNICAL SUPPORT send an e-mail directly to 
SUPPORT {at} amibroker.com

TO SUBMIT SUGGESTIONS please use FEEDBACK CENTER at
http://www.amibroker.com/feedback/
(submissions sent via other channels won't be considered)

For NEW RELEASE ANNOUNCEMENTS and other news always check DEVLOG:
http://www.amibroker.com/devlog/

Yahoo! Groups Links

<*> To visit your group on the web, go to:
    http://groups.yahoo.com/group/amibroker/

<*> Your email settings:
    Individual Email | Traditional

<*> To change settings online go to:
    http://groups.yahoo.com/group/amibroker/join
    (Yahoo! ID required)

<*> To change settings via email:
    mailto:amibroker-digest@xxxxxxxxxxxxxxx 
    mailto:amibroker-fullfeatured@xxxxxxxxxxxxxxx

<*> To unsubscribe from this group, send an email to:
    amibroker-unsubscribe@xxxxxxxxxxxxxxx

<*> Your use of Yahoo! Groups is subject to:
    http://docs.yahoo.com/info/terms/