#include "parametre.h" #include "donnees.h" #include #include #include using namespace std; /*! * Initialisation du membre de la classe cParametre pour permettre de créer un singleton. * */ cParametre * cParametre :: m_Instance = NULL; /*! * \fn cParametre::cParametre () * \author Dimitri KUDELSKI * \brief Constructeur de la classe. * * Constructeur de la classe cParametre. Les réglages par défaut du serveur sont fait ici. * */ cParametre :: cParametre () { ifstream fConfig; string sHome = getenv("HOME"); string sRepertoire; string sFichierConfig; // Initialisation des membres de la classe m_iPortControle = 5555; m_iPortStreaming = 5556; m_iMaxConnexion = 10; m_iTailleIdentifiant = 10; m_iTempsIdentifiant = 20; m_iTempsInactivite = 5; sRepertoire = sHome + "/.ciell/"; sFichierConfig = sRepertoire + "serveur.cfg"; m_sUtilisateurs = sRepertoire + "utilisateurs.cfg"; m_sRepertoireVideo = "/data/videos/"; m_sRepertoireBackup = "/data/videos/backup/"; m_iAffichage = BAVARD; fConfig.open(sFichierConfig.c_str(), ofstream::out); if(fConfig.is_open() == false) { log("[!] Impossible d'ouvrir le fichier de configuration serveur. Abandon."); exit(-1); } //fConfig.open(string() + ); } /*! * \fn cParametre::~cParametre () * \author Dimitri KUDELSKI * \brief Destructeur de la classe. * * Destructeur de la classe cParametre. Ce dernier ne fait rien de spécial. * */ cParametre :: ~cParametre () { } /*! * \fn cParametre * cParametre::instance () * \author Dimitri KUDELSKI * \brief Accesseur statique de la classe cParametre. * * Cette méthode permet d'accéder facilement à l'instance unique de la classe cParametre. * * \return Instance unique de la classe cParametre. */ cParametre * cParametre :: instance () { // Si l'instance n'a pas encore été créée, on le fait if(m_Instance == NULL) m_Instance = new cParametre(); // Puis on renvoie l'instance return m_Instance; } /*! * \fn void cParametre::detruireInstance () * \author Dimitri KUDELSKI * \brief Destruction de l'unique instance. * * Libère la mémoire. * */ void cParametre :: detruireInstance () { // Destruction de l'instance si elle existe if(m_Instance != NULL) { // Libération de l'espace mémoire delete m_Instance; m_Instance = NULL; } }