Validità: Rule, Task
Questa keyword dà accesso alla variabile che contiene il numero della rule attiva dell'ennesimo esecutore di regole.
Sintassi |
I32 rc (I32 n) |
---|---|
n |
Numero di esecutore. Minimo numero rappresentabile: 1 Massimo numero rappresentabile: 32 |
Note |
È possibile usare la keyword anche per l'assegnazione diretta rc(n) = n. È consigliabile l'utilizzo dell'istruzione group per garantire l'atomicità (in caso di assegnazione di più rc) |
Se il numero è negativo, l'esecutore di regole non è abilitato all'esecuzione (vedi istruzione order).
Nel file $rule (Task a frequenza fissa) si possono definire fino a 1000 regole. Ognuna di queste regole è rappresentata da un numero. Il linguaggio R3 permette di mandare in esecuzione contemporaneamente fino a 32 di esse tramite l'istruzione group. Mediante la variabile RC(n) l'utente può vedere qual è, ad esempio, la rule attiva per l'esecutore n (da 1 a 32) indicato. Nella pratica poi tipicamente l'utente assocerà a n il numero di asse.
Esempio
; l'esecutore di regola 13 eseguirà la rule numero 15 rc(13) = 15 |
Esempio
; se il secondo esecutore di regola sta eseguendo la numero 23 ; allora nel registro stringa sr(1) sarà memorizzata la stringa "Sono in automatico" if (rc(2) = 23) sr(1) = "Sono in automatico" endif |