Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/marcoieni/aca_project
Project for Advanced Computer Architecture course of M.Sc. Computer Science and Engineering at Politecnico di Milano. It consists in using MQTT to modify extra-functional requirements in adaptive application.
https://github.com/marcoieni/aca_project
mqtt
Last synced: 3 days ago
JSON representation
Project for Advanced Computer Architecture course of M.Sc. Computer Science and Engineering at Politecnico di Milano. It consists in using MQTT to modify extra-functional requirements in adaptive application.
- Host: GitHub
- URL: https://github.com/marcoieni/aca_project
- Owner: marcoieni
- Created: 2017-06-30T11:39:31.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2019-11-09T16:05:32.000Z (over 5 years ago)
- Last Synced: 2025-02-09T07:08:09.161Z (6 days ago)
- Topics: mqtt
- Language: C++
- Size: 118 KB
- Stars: 0
- Watchers: 4
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Advanced Computer Architectures Project
Project for Advanced Computer Architecture course of M.Sc. Computer Science and Engineering at Politecnico di Milano. It consists in using MQTT to modify extra-functional requirements in adaptive application.Make sure to read the [presentation](https://marcoieni.github.io/aca_project/) first.
## Installation
### Sender
The sender only depends on the external library [paho-mqtt](https://pypi.python.org/pypi/paho-mqtt/), so to install it simply use:
```shell
$ pip install paho-mqtt
```Then to run the sender:
```shell
$ python shell.py
```### Receiver
#### GSList
The GS list lib does not depend on external libraries, just make sure to follow the C++11 ISO language standard when you compile it [-std=c++11].#### MQTTReceiver
The MqttReceiver depends on the following libraries:
* [paho.mqtt.cpp](https://github.com/eclipse/paho.mqtt.cpp)
* GSList
* [margot_heel_if](https://gitlab.com/margot_project/core/tree/master/margot_heel/margot_heel_if)
* [margot_asrtm](https://gitlab.com/margot_project/core/tree/master/framework/asrtm)
* [margot_monitor](https://gitlab.com/margot_project/core/tree/master/framework/monitor)You can include them in this order. Also, make sure to follow the C++11 ISO language standard when you compile it [-std=c++11].
#### mARGOt example
The `code/receiver/margot` directory contains some files that you have to substitute to the ones contained in the [tutorial](https://gitlab.com/margot_project/tutorial) of the [mARGOt project](https://gitlab.com/margot_project).So you have to substitute the `code/receiver/margot/config` directory with the [config directory](https://gitlab.com/margot_project/tutorial/tree/master/config) of the tutorial and the `code/receiver/margot/src/main.cpp` file with the [main file](https://gitlab.com/margot_project/tutorial/blob/master/src/main.cpp) of the tutorial.
After you do this, you have to edit the [CMake file](https://gitlab.com/margot_project/tutorial/blob/master/CMakeLists.txt) in order to include the following libraries:
* MQTTReceiver
* GSList
* [paho.mqtt.cpp](https://github.com/eclipse/paho.mqtt.cpp)You can include them in this order.
After that, follow the [tutorial instructions](https://gitlab.com/margot_project/tutorial/blob/master/README.md) to correctly execute the example.