Original (English)
call (int Mode, void* Function, int P1, var P2)
Put a function on a scheduler in order to be executed at a certain event. Two parameters,
int and var, can optionally be passed to the
function.
Parameters:
Mode |
Run the function: 1 when the system is idle,
2 at the next incoming tick, 4 after
closing a trade, +16 for repeating. |
Function |
Pointer to a script-defined function. |
P1 |
int variable to be passed to the function as first
parameter, or 0 when the function has no parameters. |
P2 |
var variable to be passed to the function as second
parameter, or 0 when the function has no second
parameter. |
Remarks:
- Function can be a function either with no parameters
f(), with one f(int), or with two
parameters f(int,var). Automatic int/var
conversion will not take place here, so make sure that the first parameter
(if any) of the function is really an int or global pointer, and
the second parameter (if any) is really a var.
- call(1, ...) can be used to prevent that the called
function interrupts other functions or I/O operations. This is useful for
changing the asset, entering
a trade, or writing to a file in a click or
callback function.
- After being run, Function normally removes itself from the scheduler.
If
16 was added to Mode, the
function stays on the scheduler and keeps being called at the given event.
- Up to 16 functions can be placed on the scheduler at the same time. They
are then run in the order of their placement.
Example:
void calltest(int a,var b)
{
printf("\nCalled with (%i,%.2f) at bar %i",a,b,Bar);
}
void run()
{
...
call(1,calltest,2,3.45);
...
}
See also:
run, lock,
quit, version,
wait, click
► latest
version online
|
Übersetzung (Deutsch)
call (int Mode, void* Function, int P1, var P2)
Platziere eine Funktion auf einem Scheduler, um sie bei einem bestimmten Ereignis auszuführen. Zwei Parameter,
int und var, können optional an die
Funktion übergeben werden.
Parameter:
Mode |
Führe die Funktion aus: 1 wenn das System idle ist,
2 beim nächsten eingehenden Tick, 4 nach
dem Schließen eines Trades, +16 für Wiederholung. |
Function |
Zeiger auf eine vom Skript definierte Funktion. |
P1 |
int-Variable, die als erstes
Parameter an die Funktion übergeben wird, oder 0, wenn die Funktion keine Parameter hat. |
P2 |
var-Variable, die als zweites
Parameter an die Funktion übergeben wird, oder 0, wenn die Funktion keinen zweiten
Parameter hat. |
Bemerkungen:
- Function kann eine Funktion sein, die keine Parameter hat
f(), eine mit einem f(int), oder eine mit zwei
Parametern f(int,var). Automatische int/var
Konvertierungen finden hier nicht statt, daher stelle sicher, dass der erste Parameter
(falls vorhanden) der Funktion wirklich ein int oder ein globaler Zeiger ist, und
der zweite Parameter (falls vorhanden) wirklich ein var ist.
- call(1, ...) kann verwendet werden, um zu verhindern, dass die aufgerufene
Funktion andere Funktionen oder I/O-Operationen unterbricht. Dies ist nützlich für
das Ändern des Assets, das Eintragen
eines Trades oder das Schreiben in eine Datei in einer Click- oder
Callback-Funktion.
- Nach dem Ausführen entfernt Function sich normalerweise selbst vom Scheduler.
Wenn
16 zu Mode hinzugefügt wurde, bleibt die
Funktion im Scheduler und wird weiterhin bei dem angegebenen Ereignis aufgerufen.
- Bis zu 16 Funktionen können gleichzeitig auf dem Scheduler platziert werden. Sie
werden dann in der Reihenfolge ihrer Platzierung ausgeführt.
Beispiel:
void calltest(int a,var b)
{
printf("\nCalled with (%i,%.2f) at bar %i",a,b,Bar);
}
void run()
{
...
call(1,calltest,2,3.45);
...
}
Siehe auch:
run, lock,
quit, version,
wait, click
► latest
version online
|