Skip to content
Snippets Groups Projects
reptilnativo.cpp 3.21 KiB
Newer Older
#include "reptilnativo.h"
#include <iostream>
#include <string>
#define CARACTER_SEPARADOR ';'
#include <fstream>
#include <cstdlib>
using namespace std;

/**
* @brief Sobrecarga do operador de inserção para animal do tipo ReptilNativo
* @param  output - stream de saida
*         repnat - Objeto do tipo ReptilNativo
*
*/

std::istream& operator>> (std::istream &input, ReptilNativo &repnat){
    string aux;
    getline (input,aux,CARACTER_SEPARADOR);
    repnat.id = atoi(aux.c_str());
    getline (input,aux,CARACTER_SEPARADOR);
    repnat.nome = atoi(aux.c_str());
    getline (input,aux,CARACTER_SEPARADOR);
    repnat.classe = aux;
    getline (input,aux,CARACTER_SEPARADOR);
    repnat.cientifico = aux;
    getline (input,aux,CARACTER_SEPARADOR);
    repnat.sexo = aux;
    getline (input,aux,CARACTER_SEPARADOR);
    repnat.tamanho = atoi(aux.c_str());
    getline (input,aux,CARACTER_SEPARADOR);
    repnat.dieta = aux;
    getline (input,aux,CARACTER_SEPARADOR);
    repnat.batismo = aux ;
    //getline (input,aux,CARACTER_SEPARADOR);
    //repnat.veterinario->id = atoi(aux.c_str());
    //getline (input,aux,CARACTER_SEPARADOR);
    //repnat.tratador->id = atoi(aux.c_str());
    //getline (input,aux,CARACTER_SEPARADOR);
    //repnat.venenoso = aux;
    getline (input,aux,CARACTER_SEPARADOR);
    repnat.tipo_veneno = aux;
    getline (input,aux,CARACTER_SEPARADOR);
    repnat.ibama = aux;
    getline (input,aux);
    repnat.uf_origem = aux;
    getline (input,aux);
    repnat.autorizacao = aux;
    return input;
}
  * @brief Construtor cria um animal do tipo ReptilNativo, que toma Reptil
  *        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, isPoisonous - estado do animal em relação ao veneno,
  *         poison_type - tipo do veneno, biernr - ibama, origin_state - estado de origem do animal,
  *         authorization - autorização do animal
  */
ReptilNativo::ReptilNativo(int identity, string clas, string name, string scientific, string sex, float size,
        string diet, string baptism, Veterinario* vet, Tratador* caretaker, bool isPoisonous,
        string poison_type, string biernr, string origin_state, string authorization):

        Reptil(identity, clas, name, scientific, sex, size, diet, baptism, vet, caretaker, isPoisonous, poison_type),
        AnimalNativo(biernr, origin_state, authorization)
				ReptilNativo::~ReptilNativo(){
          
        }




// std::ostream& operator<< (std::ostream &output, ReptilNativo const &repnat) {
// 	output << repnat.id >> ";" << repnat.classe << ";" << repnat.nome << ";" << repnat.cientifico << ";" <<
// 	 	repnat.sexo << ";" << repnat.tamanho << ";" << repnat.dieta << ";" << repnat.batismo  << ";" << repnat.veterinario
//      << ";" << repnat.tratador << ";" << repnat.isPoisonous<< ";"  << repnat.poison_type << ";" << repnat.ibama << ";"
//      << repnat.uf_origem << ";" << repnat.autorizacao;
//
// 	return output;
//
// 	}