My Project
MusicManager.hpp
1 /*
2 ** EPITECH PROJECT, 2022
3 ** B-CPP-500-PAR-5-1-rtype-martin.vanaud
4 ** File description:
5 ** MusicManager
6 */
7 
8 #ifndef MUSICMANAGER_HPP_
9  #define MUSICMANAGER_HPP_
10 
11  #include <string>
12  #include <vector>
13  #include <unordered_map>
14 
15  #include "AMusic.hpp"
16 
21 class MusicManager {
22  public:
28  MusicManager(std::string const &musicsFile);
39 
46  AMusic at(std::string const &index) const;
47 
53  void loadMusics(std::string const &filepath);
54 
55  protected:
56  private:
62  void saveMusics(std::string const &filepath);
63 
64  std::unordered_map<std::string, AMusic> _musics;
65 };
66 
67 #endif /* !MUSICMANAGER_HPP_ */
MusicManager
Class to store all Musics.
Definition: MusicManager.hpp:21
MusicManager::loadMusics
void loadMusics(std::string const &filepath)
Load all Musics from a config file.
Definition: MusicManager.cpp:25
MusicManager::~MusicManager
~MusicManager()
Destroy the Music Manager object.
Definition: MusicManager.hpp:38
AMusic
Class containing all elements of an Music.
Definition: AMusic.hpp:18
MusicManager::at
AMusic at(std::string const &index) const
Get the Music at index sent as param.
Definition: MusicManager.cpp:20
MusicManager::MusicManager
MusicManager()
Construct a new Music Manager object.
Definition: MusicManager.hpp:33