classe TagInnestati
{
costruttore($vTag, $vNumTagInterni, $livello=1, $vAttr=NULL);
ApriTag($iTag, &$classe);
Attributo($attributo);
AutoSincronia();
CambiaAttributo($iTag, &$nome, &$valore);
CambiaNumTagInterni($iTag, $nTagInterni);
CambiaTag($iTag, $nuovoTag);
ChiudiTag($iTag, $vClasse);
DevoStampare($bool);
EliminaAttributo($iTag, &$nome);
ImpAttr($iTag, &$vAttr);
ImpostaDati($dati); &
ImpostaRipetizione($tipo);
ImpTrasformazione(&$cambioIndici);
InsDato(&$cont, &$vClasse, $bTagInLinea=FALSO, $vattr=NULL);
InserisciTag($iTag, $sTag, $nTagInterni=TAG_INF, $vAttr=NULL);
InserisciDatiAggiuntivi($frequenza, $tagEvento, &$vConsumabili);
NumTag();
NumTagInterni($iTag);
NumTagScritti($iTag);
PrendiHtml(); &
PrendiCopiaHtml(); &
SaltaTag($iTag);
TagRiempito($iTag);
TogliTag($iTag);
}

define('TAG_INF', 2147483646);
define('DATO_VUOTO', '   ');

costruttore($vTag, $vNumTagInterni, $livello=1, $vAttr=NULL)
I valori non interi presenti in vNumTagInterni saranno trattati come degli infiniti. $vAttr è un vettore di vettori associativi nomeAttributo => Attributo

DevoStampare($bool)

AutoSincronia()
Torna VERO o FALSO a seconda se è stata impostata l'AutoSincronia usando il metodo DevoStampare()

InserisciDatiAggiuntivi($frequenza, $tagEvento, &$vConsumabili)
Questo metodo memorizza un vettore di consumabili che verranno inseriti automaticamente dall'oggetto ad ogni $frequenza aperture del tag indicato da $tagEvento.
$tagEvento è un intero che rappresenta l'indice del tag all'interno del vettore passato al costruttore.
$vConsumabili può essere prodotto usando la classe html/html ed in particolare il metodo html/html::PrendiVettConsumabili.

PrendiCopiaHtml() &

PrendiHtml() &

ImpTrasformazione(&$cambioIndici)
prende un vettore associativo vecchioIndice => nuovoIndice come trasformazione da applicare in fase di stampa per le espansioni configurate

InsDato(&$cont, &$vClasse, $bTagInLinea=FALSO, $vattr=NULL, $bChiudi=VERO, $tagSpan=1)
Pre e post condizione: tutti i tag chiudibili sono stati chiusi.
NOTA:
nella pre-condizione non c'è scritto che l'ultimo tag è una chiusura, anzi potrebbe benissimo essere stato aperto con ApriTag, ma deve essere garantito che se era possibile chiudere un tag questo è stato fatto.

ApriTag($iTag, &$classe)

ChiudiTag($iTag, &$classe)

CambiaTag($iTag, $nuovoTag)

Attributo($iTag, $attributo)
Restituisce, aggiunge o modifica un attributo. se $attributo è una stringa, allora ritorna l'oggetto Attributo associato, se invece è di tipo Attributo, allora modifica o aggiunge l'attributo a seconda se era già definito o meno e ritorna il vecchio oggetto. Il metodo va in errore se il parametro non è né una stringa né un oggetto Attributo.

CambiaAttributo($iTag, &$nome, &$valore)
Cambia il valore dell'attributo indicato del tag indicato e torna il vecchio valore 9 mag 24: deprecata. usare Attributo e manipolarlo

CambiaStile($iTag, &$nome, &$valore)
Cambia il valore dello stile indicato del tag indicato e torna l'oggetto attributo

EliminaAttributo($iTag, &$nome)
Elimina l'attributo indicato per il tag indicato

ImpAttr($iTag, &$vAttr)
Imposta gli attributi $vAttr al tag di indice $iTag.
$iTag è l'indice del tag a cui cambiare gli attributi.
$vAttr deve essere un riferimento ad un vettore associativo del tipo nomeAttributo=>Attributo.

CambiaNumTagInterni($iTag, $nTagInterni)

InserisciTag($iTag, $sTag, $nTagInterni=TAG_INF, $vAttr=NULL)

TogliTag($iTag)

NumTag()

NumTagInterni($iTag)

NumTagScritti($iTag)

SaltaTag($iTag)
Nel ciclo attuale salta una scrittura del tag specificato

ImpostaRipetizione($bRipeti, $tagDaRipetere=NULL)

ImpostaDati(&$dati, $tagDaRipetere=NULL) &
Questo metodo configura l'oggetto protoh sottostante in modo da ripetere in modo da ciclare sui dati passati.
$dati deve essere un riferimento ad un oggetto di tipo bd\dati.
$tagDaRipetere è l'indice del tag che viene ripetuto; se il parametro viene lasciato nullo, la ripetzione avverrà sul prossimo tag che viene aperto. Il tag specificato non deve essere ancora stato aperto, in caso contrario il valore di questo parrametro viene ignorato ed il metodo si comporta come se fosse stato lasciato nullo.
Questo metodo si occupa di eseguire una chiamata a ImpostaRipetizione e ritorna un riferimento all'oggetto protoh sottostante.

TagRiempito($iTag)
Torna VERO se il tag innestato a quello indicato è stato stampato un multiplo intero di volte rispetto a quando indicato nel costruttore.

privata AperturaTag(&$vClasse, &$vattr)

privata ChiusuraTag()

privata TagCompleto($iTag)

privata CalcClasse(&$vvClassi, $indice) &

privata SoloApriTag($iTag, &$classe)

privata SoloChiudiTag($iTag)