# API de criação de scripts da infraestrutura da árvore com raiz

## Estrutura de dados de árvore com raiz

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 Mostrar todos os ponteiros, 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.

## A estrutura de árvore com raiz

Dada uma estrutura de dados do tipo "Árvore com raiz", as seguintes propriedades podem ser lidas ou escritas:

    ShowAllPointers     // mude para 'true' (verdadeiro) para mostrar todas as arestas ou para 'false' se as várias arestas devem ser comprimidas

Dado um objeto do tipo "Árvore com raiz", você poderá invocar as seguintes funções-membro:

    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

## Nós da árvore com raiz

Dado um objeto do tipo "Árvore com raiz", as seguintes propriedades podem ser lidas ou escritas:

    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

Dado um objeto do tipo "Árvore com raiz", você poderá invocar as seguintes funções-membro:

    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ó

## Arestas da árvore com raiz

Dadas as arestas de uma estrutura do tipo "Árvore com raiz", só estão disponíveis as propriedades da estrutura de base.