TP_PDS2
Sistema para gestão de jogadores e execução de jogos clássicos
 
Loading...
Searching...
No Matches
Cadastro Class Reference

Gerencia o cadastro de jogadores e suas operações. More...

#include <Cadastro.hpp>

Public Member Functions

void cadastrarJogador (const std::string &nome, const std::string &apelido)
 Cadastra um novo jogador no sistema.
 
bool removerJogador (const std::string &apelido)
 Remove um jogador do sistema.
 
void listarJogadores ()
 Lista todos os jogadores cadastrados.
 
std::string getArquivo () const
 Retorna o caminho do arquivo de persistência.
 
std::map< std::string, Jogador > & getJogadores ()
 Retorna o mapa de jogadores cadastrados.
 
bool salvarEmArquivo ()
 Salva os dados dos jogadores em um arquivo.
 
bool carregarDeArquivo ()
 Carrega os dados dos jogadores de um arquivo.
 

Private Attributes

std::map< std::string, Jogador_jogadores
 Mapa de jogadores, indexado por apelido.
 
const std::string _arquivo = "./gamedata/logs_jogadores.txt"
 Caminho do arquivo de persistência.
 

Detailed Description

Gerencia o cadastro de jogadores e suas operações.

A classe Cadastro armazena os jogadores em um mapa, onde a chave é o apelido do jogador e o valor é um objeto da classe Jogador. Além disso, fornece métodos para salvar e carregar os dados de jogadores em um arquivo.

Member Function Documentation

◆ cadastrarJogador()

void Cadastro::cadastrarJogador ( const std::string & nome,
const std::string & apelido )

Cadastra um novo jogador no sistema.

Verifica se o apelido já existe no mapa de jogadores. Se não existir, cria um novo jogador e o adiciona ao mapa. Caso contrário, exibe uma mensagem de erro.

Parameters
[in]nomeNome completo do jogador.
[in]apelidoApelido único do jogador.
Exceptions
std::invalid_argumentSe o apelido já estiver em uso.
Here is the caller graph for this function:

◆ carregarDeArquivo()

bool Cadastro::carregarDeArquivo ( )

Carrega os dados dos jogadores de um arquivo.

Abre o arquivo especificado em _arquivo e carrega os dados dos jogadores, incluindo nome, apelido, vitórias e derrotas. Se o arquivo não puder ser aberto, exibe uma mensagem de erro e retorna false.

Returns
true Se os dados foram carregados com sucesso.
false Se houve falha ao abrir o arquivo.
Here is the call graph for this function:
Here is the caller graph for this function:

◆ getArquivo()

std::string Cadastro::getArquivo ( ) const
inline

Retorna o caminho do arquivo de persistência.

Returns
Caminho do arquivo onde os dados dos jogadores são salvos.

◆ getJogadores()

std::map< std::string, Jogador > & Cadastro::getJogadores ( )

Retorna o mapa de jogadores cadastrados.

Returns
Referência para o mapa de jogadores, onde a chave é o apelido e o valor é o objeto Jogador.

◆ listarJogadores()

void Cadastro::listarJogadores ( )

Lista todos os jogadores cadastrados.

Verifica se há jogadores no mapa. Se houver, exibe as estatísticas de cada jogador. Caso contrário, exibe uma mensagem informando que não há jogadores cadastrados.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ removerJogador()

bool Cadastro::removerJogador ( const std::string & apelido)

Remove um jogador do sistema.

Verifica se o jogador com o apelido fornecido existe no mapa. Se existir, remove o jogador e retorna true. Caso contrário, exibe uma mensagem de erro e retorna false.

Parameters
[in]apelidoApelido do jogador a ser removido.
Returns
true Se o jogador foi removido com sucesso.
false Se o jogador não foi encontrado.
Here is the caller graph for this function:

◆ salvarEmArquivo()

bool Cadastro::salvarEmArquivo ( )

Salva os dados dos jogadores em um arquivo.

Abre o arquivo especificado em _arquivo e salva os dados de todos os jogadores, incluindo nome, apelido, vitórias e derrotas. Se o arquivo não puder ser aberto, exibe uma mensagem de erro e retorna false.

Returns
true Se os dados foram salvos com sucesso.
false Se houve falha ao abrir o arquivo.
Here is the call graph for this function:
Here is the caller graph for this function:

Member Data Documentation

◆ _arquivo

const std::string Cadastro::_arquivo = "./gamedata/logs_jogadores.txt"
private

Caminho do arquivo de persistência.

◆ _jogadores

std::map<std::string, Jogador> Cadastro::_jogadores
private

Mapa de jogadores, indexado por apelido.


The documentation for this class was generated from the following files: