Added WiFi kernel drivers and refactored Wifi service (#557)
+ other improvements
This commit is contained in:
committed by
GitHub
parent
dbb96a891c
commit
1c2806bddf
@@ -1,18 +1,45 @@
|
||||
#pragma once
|
||||
|
||||
#include "tactility/concurrent/dispatcher.h"
|
||||
#include "tactility/device.h"
|
||||
#include "tactility/module.h"
|
||||
#include <Tactility/Dispatcher.h>
|
||||
#include <Tactility/app/AppManifest.h>
|
||||
#include <Tactility/hal/Configuration.h>
|
||||
#include <Tactility/service/ServiceManifest.h>
|
||||
|
||||
#include <functional>
|
||||
|
||||
extern "C" {
|
||||
struct DtsDevice;
|
||||
}
|
||||
|
||||
namespace tt {
|
||||
|
||||
/**
|
||||
* A thin C++ wrapper around the TactilityKernel dispatcher, allowing
|
||||
* std::function (and therefore capturing lambdas) to be dispatched.
|
||||
*/
|
||||
class MainDispatcher final {
|
||||
|
||||
public:
|
||||
|
||||
using Function = std::function<void()>;
|
||||
|
||||
explicit MainDispatcher(DispatcherHandle_t handle) : handle(handle) {}
|
||||
|
||||
/**
|
||||
* Queue a function to be consumed on the main task.
|
||||
* @param[in] function the function to execute elsewhere
|
||||
* @param[in] timeout lock acquisition timeout
|
||||
* @return true if dispatching was successful (timeout not reached)
|
||||
*/
|
||||
bool dispatch(Function function, TickType_t timeout = portMAX_DELAY) const;
|
||||
|
||||
private:
|
||||
|
||||
DispatcherHandle_t handle;
|
||||
};
|
||||
|
||||
/** @brief The configuration for the operating system
|
||||
* It contains the hardware configuration, apps and services
|
||||
*/
|
||||
@@ -39,7 +66,7 @@ const Configuration* getConfiguration();
|
||||
* @warning This dispatcher is used for WiFi and might block for some time during WiFi connection.
|
||||
* @return the dispatcher
|
||||
*/
|
||||
Dispatcher& getMainDispatcher();
|
||||
MainDispatcher getMainDispatcher();
|
||||
|
||||
namespace hal {
|
||||
|
||||
|
||||
Reference in New Issue
Block a user