<sect1 id="scripting-backend-rootedtree">
<title
>API de criação de scripts da infraestrutura da árvore com raiz</title>
<sect2>
<title
>Estrutura de dados de árvore com raiz</title>
<para
>A janela de propriedades da estrutura de dados permite o acesso para as configurações específicas da infraestrutura de Grafo. Aqui, selecionando a propriedade <guilabel
>Mostrar todos os ponteiros</guilabel
>, todos os ponteiros entre três nós são exibidos. Se não estiver selecionado, ponteiros múltiplos entre os mesmos nós são recolhidos em um. </para>
</sect2>

<sect2>
<title
>A estrutura de árvore com raiz</title>
<para
>Dada uma estrutura de dados do tipo "Árvore com raiz", as seguintes propriedades podem ser lidas ou escritas: </para>
<programlisting
>ShowAllPointers     // mude para 'true' (verdadeiro) para mostrar todas as arestas ou para 'false' se as várias arestas devem ser comprimidas
</programlisting>
<para
>Dado um objeto do tipo "Árvore com raiz", você poderá invocar as seguintes funções-membro: </para>
<programlisting
>node add_data(string nome);         // adiciona um nó à árvore com o nome indicado
    void set_root_node(node raiz);      // define 'raiz' como nó de topo da árvore
    node root_node();                   // devolve o nó de topo da árvore
</programlisting>
</sect2>

<sect2>
<title
>Nós da árvore com raiz</title>
<para
>Dado um objeto do tipo "Árvore com raiz", as seguintes propriedades podem ser lidas ou escritas: </para>
<programlisting
>int numberOfChilds                  // define o número (permitido) de filhos deste nó
    node left_child                     // apenas p/ leitura: o nó-filho à esquerda
    node right_child                    // apenas p/ leitura: o nó-filho à direita
    node node_parent                    // apenas p/ leitura: o nó-pai
</programlisting>
<para
>Dado um objeto do tipo "Árvore com raiz", você poderá invocar as seguintes funções-membro: </para>
<programlisting
>node add_left_child(node filho);    // adiciona um filho à esquerda
    node add_right_child(node filho);   // adiciona um filho à direita
    node add_child(node filho, int i);  // adiciona um filho como 'i-ésimo' filho do nó
    node add_node_parent(node filho);   // adiciona um pai (só funciona se ainda não atribuído)
    node left_child();                  // devolve o filho à direita
    node right_child();                 // devolve o filho à esquerda
    node child_at(int i);               // devolve o 'i-ésimo' filho do nó
    node node_parent();                 // devolve o pai do nó
</programlisting>
</sect2>

<sect2>
<title
>Arestas da árvore com raiz</title>
<para
>Dadas as arestas de uma estrutura do tipo "Árvore com raiz", só estão disponíveis as propriedades da estrutura de base. </para>
</sect2>
</sect1>
