It has been a while since I last worked on Aesalon proper.
[aesalon.git] / monitor / src / module / ModuleMapper.cpp
blob59da81934417d0e0fe3fe452b90500ce8574e7af
1 #include <iostream>
3 #include "ModuleMapper.h"
4 #include "misc/PathSanitizer.h"
5 #include "Initializer.h"
7 namespace Module {
9 ModuleMapper::ModuleMapper() {
10 m_moduleVector.resize(1);
13 ModuleMapper::~ModuleMapper() {
14 for(ModuleMap::iterator i = m_moduleMap.begin(); i != m_moduleMap.end(); ++i) {
15 if(i->second != NULL) delete i->second;
19 Module *ModuleMapper::module(uint16_t moduleID) {
20 if(moduleID >= m_moduleVector.size()) return NULL;
21 return m_moduleVector[moduleID];
24 Module *ModuleMapper::module(const std::string &name) {
25 return m_moduleMap[name];
28 void ModuleMapper::loadModule(char *moduleName) {
29 Module *module = new Module(m_moduleVector.size(), moduleName);
30 m_moduleVector.push_back(module);
31 m_moduleMap[moduleName] = module;
34 } // namespace Module