split ModuleMgr.h into decl...
Stefan Schuermans authored 12 years ago
|
1) /* Blinker
2) Copyright 2011 Stefan Schuermans <stefan@blinkenarea.org>
3) Copyleft GNU public license - http://www.gnu.org/copyleft/gpl.html
4) a blinkenarea.org project */
5)
6) #ifndef MODULEMGR_IMPL_H
7) #define MODULEMGR_IMPL_H
8)
9) #include <list>
10)
11) #include "CallMgr.h"
12) #include "Directory.h"
13) #include "Module.h"
14) #include "ModuleMgr.h"
15) #include "StreamMgr.h"
16) #include "TimeCallee.h"
17)
18) namespace Blinker {
19)
20) /**
21) * @brief constructor
22) * @param[in] callMgr callback manager
23) * @param[in] streamMgr stream manager
24) * @param[in] dirBase base directory
25) */
26) template<typename MODULE>
27) ModuleMgr<MODULE>::ModuleMgr(CallMgr &callMgr, StreamMgr &streamMgr,
28) const Directory &dirBase):
29) m_callMgr(callMgr),
30) m_streamMgr(streamMgr),
31) m_dirBase(dirBase)
32) {
33) updateModuleListFull();
34)
35) // request call in 1s
36) m_callMgr.requestTimeCall(this, Time::now() + Time(1));
37) }
38)
39) /// destructor
40) template<typename MODULE>
41) ModuleMgr<MODULE>::~ModuleMgr()
42) {
43) // free all modules
44) while (!m_moduleList.empty()) {
45) m_moduleList.back().destroyModule();
46) m_moduleList.pop_back();
47) }
48) }
49)
|