Newer
Older

Debora
committed
#include "anfibionativo.h"
#define CARACTER_SEPARADOR ';'
#include <fstream>
#include <iostream>
#include <string>
#include <cstdlib>
using namespace std;

Debora
committed
/**
* @brief Sobrecarga do operador de extração para animal do tipo AnfibioNativo
* @param input - strem de entrada

Debora
committed
* anfnat - Objeto do tipo AnfibioNativo
*
*/
std::istream& operator>> (std::istream &input, AnfibioNativo &anfnat){
string aux;
getline (input,aux,CARACTER_SEPARADOR);
anfnat.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;
}

Debora
committed
/**
* @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, string sex, float size,
string diet, string baptism, Veterinario* vet, Tratador* caretaker,int total_changes,

Debora
committed
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(){