defuze.me  Client
cores.cpp
00001 /**************************************************************************
00002 ** defuze.me Epitech Innovative Project
00003 **
00004 ** Copyright 2010
00005 **   Athena Calmettes - Jocelyn De La Rosa - Francois Gaillard
00006 **   Adrien Jarthon - Alexandre Moore - Luc Peres - Arnaud Sellier
00007 **
00008 ** All rights reserved.
00009 **************************************************************************/
00010 
00011 #include "cores.hpp"
00012 #include "guicore.hpp"
00013 #include "paramscore.hpp"
00014 #include "dbcore.hpp"
00015 #include "networkcore.hpp"
00016 #include "audiocore.hpp"
00017 
00018 Cores::Cores(QStringList &arguments)
00019 {
00020     _db = new DB::DBCore(arguments);
00021     _params = new Params::ParamsCore(arguments);
00022     _audio = new Audio::AudioCore(arguments);
00023     _gui = new Gui::GuiCore(arguments);
00024     _net = new Network::NetworkCore(arguments);
00025 }
00026 
00027 Cores::~Cores()
00028 {
00029     delete _net;
00030     delete _gui;
00031     delete _audio;
00032     delete _params;
00033     delete _db;
00034 }
00035 
00036 void Cores::init()
00037 {
00038     _db->init(this);
00039     _params->init(this);
00040     _audio->init(this);
00041     _gui->init(this);
00042     _net->init(this);
00043 }
00044 
00045 void Cores::aboutToQuit()
00046 {
00047     _net->aboutToQuit();
00048     _gui->aboutToQuit();
00049     _audio->aboutToQuit();
00050     _params->aboutToQuit();
00051     _db->aboutToQuit();
00052     deleteLater();
00053 }
00054 
00055 Gui::GuiCore* Cores::gui()
00056 {
00057     return _gui;
00058 }
00059 
00060 DB::DBCore* Cores::db()
00061 {
00062     return _db;
00063 }
00064 
00065 Network::NetworkCore* Cores::net()
00066 {
00067     return _net;
00068 }
00069 
00070 Audio::AudioCore* Cores::audio()
00071 {
00072     return _audio;
00073 }
00074 
00075 Params::ParamsCore* Cores::params()
00076 {
00077     return _params;
00078 }