Ajout de doc + destructeur GOLTEamH

This commit is contained in:
LerPetitCarcajou 2024-01-24 19:00:06 -05:00
parent bc3c789214
commit 0571b483f8
5 changed files with 74 additions and 4 deletions

View File

@ -4,6 +4,7 @@ GOLTeamH::GOLTeamH()
: mParsedRule{}, mColorEncoded{}
{
}
//! \brief Accesseurs retournant des informations générales sur la
//! simulation en cours.
//!

View File

@ -1,17 +1,59 @@
#pragma once
#ifndef GOLTEAMH_H
#define GOLTEAMH_H
#include <string>
#include <optional>
#include <GOL.h>
#include "GridTeamH.h"
// Fichier : GridTeam.h
// GPA675 Laboratoire 1
// Création :
// - A. Einstein
// - 2024/01/17
// - - - - - - - - - - - - - - - - - - - - - - -
// Classe GOLTeamH
// - - - - - - - - - - - - - - - - - - - - - - -
// La classe point représente une grille dans lespace 2d des réels.
// La classe possède les attributs width et y.
// - ces accesseurs :
// - ces mutateurs :
// La classe point représente un point dans lespace 2d des réels.
// La classe possède les attributs x et y.
// - ces accesseurs :
// double x();
// double y();
// - ces mutateurs :
// void setX(double x);
// void setY(double y);
// void set(double x, double y);
constexpr unsigned char MAX_ALPHA = 255;
class GOLTeamH : public GOL
{
public:
// - le constructeur par défaut : _class_()
// - le constructeur d'initialisation proposé : _class_(size_t width, size_t height, State defaultState = State::dead)
// - le destructeur : ~_class_()
GOLTeamH();
GOLTeamH(GOLTeamH const &) = delete;
GOLTeamH(GOLTeamH &&) = delete;
GOLTeamH& operator =(GOLTeamH const &) = delete;
GOLTeamH& operator =(GOLTeamH&&) = delete;
virtual ~GOLTeamH()=default;
// inline puisque trivial.
size_t width() const override { return mData.width(); }
size_t height() const override { return mData.height(); }
@ -63,4 +105,6 @@ private:
// Fonctions utilisées à l'interne.
std::optional<unsigned char> convertCharToNumber(const char c);
};
};
#endif GOLTEAMH_H

View File

@ -20,7 +20,7 @@
<ProjectGuid>{37D03CB9-506A-4E0B-8BF7-4E23C5A259C5}</ProjectGuid>
<Keyword>QtVS_v304</Keyword>
<WindowsTargetPlatformVersion Condition="'$(Configuration)|$(Platform)' == 'Debug|x64'">10.0</WindowsTargetPlatformVersion>
<WindowsTargetPlatformVersion Condition="'$(Configuration)|$(Platform)' == 'Release|x64'">10.0.22621.0</WindowsTargetPlatformVersion>
<WindowsTargetPlatformVersion Condition="'$(Configuration)|$(Platform)' == 'Release|x64'">10.0</WindowsTargetPlatformVersion>
<QtMsBuild Condition="'$(QtMsBuild)'=='' OR !Exists('$(QtMsBuild)\qt.targets')">$(MSBuildProjectDirectory)\QtMsBuild</QtMsBuild>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />

View File

@ -4,9 +4,11 @@
#include <optional>
#include <utility>
// Constructeur Grid par défaut
GridTeamH::GridTeamH()
: GridTeamH(100, 100, CellType::alive)
: GridTeamH(100, 100, CellType::dead)
{
}
@ -127,7 +129,7 @@ void GridTeamH::setAt(int column, int row, CellType value)
if (column > mWidth || row > mHeight)
return;
mData[(row - 1) * mWidth + (column - 1)] = value;
mData[(static_cast<unsigned long long>(row) - 1) * mWidth + (static_cast<unsigned long long>(column) - 1)] = value;
}
void GridTeamH::setAliveCount(size_t aliveCount)

View File

@ -1,9 +1,30 @@
#pragma once
#ifndef GRIDTEAMH_H
#define GRIDTEAMH_H
#include <vector>
#include <random>
#include "GOL.h"
// Fichier : GridTeam.h
// GPA675 Laboratoire 1
// Création :
// - A. Einstein
// - 2024/01/17
// - - - - - - - - - - - - - - - - - - - - - - -
// Classe GridTeamH
// - - - - - - - - - - - - - - - - - - - - - - -
// La classe point représente une grille dans lespace 2d des réels.
// La classe possède les attributs width et y.
// - ces accesseurs :
//
// - ces mutateurs :
//
/*
Cette classe fonctionne en ayant deux std::vector qui contiennent les statuts
des cellules. Un vecteur intermédiaire est échangé avec .swap() avec le vecteur
@ -80,3 +101,5 @@ private:
void fillBorderManipulations(DataType ptr, CellType value) const;
void dealloc() const;
};
#endif GRIDTEAMH_H