#include "anfibionativo.h" #define CARACTER_SEPARADOR ';' #include <fstream> using namespace std; /** * @brief Sobrecarga do operador de extração para animal do tipo AnfibioNativo * @param input - strem de entrada * anfnat - Objeto do tipo AnfibioNativo * */ std::istream& operator>> (std::istream &input, AnfibioNativo &anfnat){ string aux; getline (input,aux,CARACTER_SEPARADOR); id = atoi(aux.c_str()); getline (input,aux,CARACTER_SEPARADOR); anfnat.nome = atoi(aux.c_str()); getline (input,aux,CARACTER_SEPARADOR); anfnat.classe = aux; getline (input,aux,CARACTER_SEPARADOR); anfnat.cientifico = aux; getline (input,aux,CARACTER_SEPARADOR); anfnat.sexo = aux; getline (input,aux,CARACTER_SEPARADOR); anfnat.tamanho = atof(aux.c_str()); getline (input,aux,CARACTER_SEPARADOR); anfnat.dieta = aux; getline (input,aux,CARACTER_SEPARADOR); anfnat.batismo = aux; getline (input,aux,CARACTER_SEPARADOR); // anfnat.veterinario.id = atoi(aux.c_str()); // getline (input,aux,CARACTER_SEPARADOR); // anfnat.tratador.id = atoi(aux.c_str()); getline (input,aux,CARACTER_SEPARADOR); anfnat.total_mudas = atoi(aux.c_str()); getline (input,aux,CARACTER_SEPARADOR); anfnat.ultima_muda = aux; getline (input,aux,CARACTER_SEPARADOR); anfnat.ibama = aux; getline (input,aux); anfnat.uf_origem = aux; getline (input,aux,CARACTER_SEPARADOR); anfnat.autorizacao = aux; return input; } /** * @brief Construtor cria um animal do tipo AnfíbioNativo, que toma Anfibio, * e AnimalNativo como classe pai a herdar seus atributos * @param identity - ID, clas - classe do animal, name - nome do animal, scientific - nome científico do animal, * sex - sexo do animal, size - tamanho do animal, diet - dieta do animal, * baptism - nome de batismo do animal, vet - veterinário associado ao animal, * caretaker - tratador associado ao animal, total_changes - número de mudas do animal, * last_change - ultima muda do animal, biernr - ibama, origin_state - estado de origem do animal, * authorization - autorização do animal */ AnfibioNativo::AnfibioNativo(int identity, string clas, string name, string scientific, char sex, float size, string diet, string baptism, Veterinario vet, Tratador caretaker,int total_changes, string last_change, string biernr, string origin_state, string authorization): Anfibio(identity, clas, name, scientific, sex, size, diet, baptism, vet, caretaker, total_changes, last_change), AnimalNativo(biernr, origin_state, authorization) {} AnfibioNativo::~AnfibioNativo(){ } }