Skip to content
Snippets Groups Projects
animal.cpp 4.19 KiB
Newer Older
#include <iostream>
#include <string>

using namespace std;

/**
* @brief Construtor cria um animal do tipo Animal
* @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,
*/
Animal::Animal(int identity, string clas, string name, string scientific, string sex, float size, string diet, string baptism, Veterinario* vet, Tratador* caretaker):

						id(identity), classe(clas), cientifico(scientific),
						sexo(sex), tamanho(size), dieta(diet), batismo(baptism),
						veterinario(vet), tratador(caretaker)
{}


	/**
	* @brief Funcao que retorna o id do animal
	* @return ID do animal
	*/
int Animal::getId(){
	return id;
}


/**
* @brief Funcao que modifica o ID do animal
* @param identity ID do animal
*/
void Animal::setId(int identity){
	id = identity;
}


/**
* @brief Funcao que retorna a classe do animal
* @return Classe do animal
*/
string Animal::getClasse(){
	return classe;
}


/**
* @brief Funcao que modifica a classe do animal
* @param clas  Classe do animal
*/
void Animal::setClasse(string clas){
	classe = clas;
}


/**
* @brief Funcao que retorna o nome do animal
* @return Nome do animal
*/
string Animal::getNome() {
	return nome;
}



/**
* @brief Funcao que modifica o nome do animal
* @param name Nome do animal
*/
void Animal::setNome(string name){
	nome = name;
}


/**
* @brief Funcao que retorna o nome cientifico do animal
* @return Nome cientifico do animal
*/
string Animal::getCientifico(){
	return cientifico;
}

/**
* @brief Funcao que modifica o nome cientifico do animal
* @param scientific Nome cientifico do animal
*/
void Animal::setCientifico(string scientific){
	cientifico = scientific;
}

/**
* @brief Funcao que retorna o sexo do animal
* @return Sexo do animal
*/
	return sexo;
}

/**
* @brief Funcao que modifica o sexo do animal
* @param sex Sexo do animal
*/
void Animal::setSexo(string sex){
	sexo = sex;
}

/**
* @brief Funcao que retorna o tamanho do animal
* @return Tamanho do animal
*/
float Animal::getTamanho(){
	return tamanho;
}


/**
* @brief Funcao que modifica o tamanho do animal
* @param size Tamanho do animal
*/
void Animal::setTamanho(float size){
	tamanho = size;
}

/**
* @brief Funcao que retorna a dieta do animal
* @return Dieta do animal
*/
string Animal::getDieta(){
	return dieta;
}

/**
* @brief Funcao que modifica a dieta do animal
* @param diet Dieta do animal
*/
void Animal::setDieta(string diet){
	dieta = diet;
}


/**
* @brief Funcao que retorna o nome de batismo do animal
* @return Nome de batismo do animal
*/
string Animal::getBatismo(){
	return batismo;
}


/**
* @brief Funcao que modifica o nome de batismo do animal
* @param baptism Nome de batismo do animal
*/
void Animal::setBatismo(string baptism){
	batismo = baptism;
}


/**
* @brief Funcao que retorna o veterinario  animal
* @return veterinario do animal
*/
Veterinario Animal::getVeterinario(){
}


/**
* @brief Funcao que modifica o veterinario do animal
* @param vet Veterinario do animal
*/
void Animal::setVeterinario(Veterinario* vet){
	veterinario = vet;
}

/**
* @brief Funcao que retorna o tratador do animal
* @return tratador do animal
*/
Tratador Animal::getTratador(){
}

/**
* @brief Funcao que modifica o tratador do animal
* @param caretaker Tratador do animal
*/
void Animal::setTratador(Tratador* caretaker){
// std::istream& operator>>( std::istream  &input, Animal const &A ) {
//     input >> A.id >> ";" >> A.classe >> ";" >> A.nome >> ";" >> A.cientifico >> ";"
//     >> A.sexo >> ";" >> A.tamanho >> ";" >> A.dieta >> ";" >> A.batismo;
//     return input;
// }

// std::ostream& operator<< (std::ostream &output, Animal const &A) {
// 	output << A.id << ";" << A.classe << ";" << A.nome << ";" << A.cientifico << ";" <<
// 	 	A.sexo << ";" << A.tamanho << ";" << A.dieta << ";" << A.batismo << ";" << A.veterinario << ";"
// 		<< A.tratador;
//
// 	return output;
//
// 	}