biblioteca que serve como midleware para as diversas placas que podem implementar esse padrão !

Dependents:   sgam_mdw_test

Committer:
AndersonIctus
Date:
Sat Jun 22 11:59:31 2019 -0300
Revision:
3:c87e6b48834e
Child:
5:8e160ad9adf3
- inclusao de sub implementacoes do controler para listagem e inclusao de protocolos, comunicaoes e sensores !
- mudando as implementacoes internas dos dispositivos (incluindo getName com const char*)

Who changed what in which revision?

UserRevisionLine numberNew contents of line
AndersonIctus 3:c87e6b48834e 1 #include "sgam_mdw.h"
AndersonIctus 3:c87e6b48834e 2 #include <map>
AndersonIctus 3:c87e6b48834e 3
AndersonIctus 3:c87e6b48834e 4 ///////////////////////////////////////////////////////////////////////
AndersonIctus 3:c87e6b48834e 5 void Control::includeSensor(Sensor<void*>* nSensor) {
AndersonIctus 3:c87e6b48834e 6 mp_sensors[(std::string)nSensor->getName()] = nSensor;
AndersonIctus 3:c87e6b48834e 7 }
AndersonIctus 3:c87e6b48834e 8
AndersonIctus 3:c87e6b48834e 9 void Control::includeProtocol(Protocol* nProtocol) {
AndersonIctus 3:c87e6b48834e 10 mp_protocols[(std::string)nProtocol->getName()] = nProtocol;
AndersonIctus 3:c87e6b48834e 11 }
AndersonIctus 3:c87e6b48834e 12
AndersonIctus 3:c87e6b48834e 13 void Control::includeCommunication(Communication* nCommunication) {
AndersonIctus 3:c87e6b48834e 14 mp_communications[(std::string)nCommunication->getName()] = nCommunication;
AndersonIctus 3:c87e6b48834e 15 }
AndersonIctus 3:c87e6b48834e 16
AndersonIctus 3:c87e6b48834e 17 ///////////////////////////////////////////////////////////////////////
AndersonIctus 3:c87e6b48834e 18 Sensor<void*>* Control::getSensor(const char* name) {
AndersonIctus 3:c87e6b48834e 19 return mp_sensors[(std::string)name];
AndersonIctus 3:c87e6b48834e 20 }
AndersonIctus 3:c87e6b48834e 21
AndersonIctus 3:c87e6b48834e 22 Protocol* Control::getProtocol(const char* name) {
AndersonIctus 3:c87e6b48834e 23 return mp_protocols[(std::string)name];
AndersonIctus 3:c87e6b48834e 24 }
AndersonIctus 3:c87e6b48834e 25
AndersonIctus 3:c87e6b48834e 26 Communication* Control::getCommunication(const char* name) {
AndersonIctus 3:c87e6b48834e 27 return mp_communications[(std::string)name];
AndersonIctus 3:c87e6b48834e 28 }
AndersonIctus 3:c87e6b48834e 29
AndersonIctus 3:c87e6b48834e 30 ///////////////////////////////////////////////////////////////////////
AndersonIctus 3:c87e6b48834e 31 // list<std::string> Control::getAvailableSensors() {
AndersonIctus 3:c87e6b48834e 32 // // mp_sensors.
AndersonIctus 3:c87e6b48834e 33 // return NULL;
AndersonIctus 3:c87e6b48834e 34 // }
AndersonIctus 3:c87e6b48834e 35
AndersonIctus 3:c87e6b48834e 36 // list<std::string> Control::getAvailableCommunications(){
AndersonIctus 3:c87e6b48834e 37 // return NULL;
AndersonIctus 3:c87e6b48834e 38 // }
AndersonIctus 3:c87e6b48834e 39
AndersonIctus 3:c87e6b48834e 40 // list<std::string> Control::getAvailableProtocols() {
AndersonIctus 3:c87e6b48834e 41 // return NULL;
AndersonIctus 3:c87e6b48834e 42 // }