You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
36 lines
802 B
36 lines
802 B
#ifndef BASE_H
|
|
#define BASE_H
|
|
|
|
#include <string>
|
|
#include <iostream>
|
|
|
|
/**
|
|
* @brief Classe de base des fichiers multimedias
|
|
*
|
|
* les méthodes @e setX et @e getX sont les getteurs et les setteurs
|
|
* des attributs @e name et @e pathname
|
|
*
|
|
* la méthode @e affichage permet d'afficher sur le flux donné
|
|
* les attributs
|
|
*
|
|
* la méthode play est abstraite et sera implémentée par les sous-classes
|
|
* en effet elle dépend du type de fichier
|
|
*/
|
|
|
|
class Base {
|
|
protected:
|
|
std::string name{};
|
|
std::string pathname{};
|
|
public:
|
|
Base();
|
|
Base(std::string, std::string);
|
|
virtual ~Base();
|
|
void setName(std::string);
|
|
void setPathName(std::string);
|
|
std::string getName() const;
|
|
std::string getPathName() const;
|
|
virtual void affichage(std::ostream&) const;
|
|
virtual void play() const = 0;
|
|
};
|
|
|
|
#endif
|
|
|