* refactor: removed mesh::Mesh dependency from CommonCLI
This commit is contained in:
@@ -540,7 +540,7 @@ protected:
|
|||||||
public:
|
public:
|
||||||
MyMesh(mesh::MainBoard& board, mesh::Radio& radio, mesh::MillisecondClock& ms, mesh::RNG& rng, mesh::RTCClock& rtc, mesh::MeshTables& tables)
|
MyMesh(mesh::MainBoard& board, mesh::Radio& radio, mesh::MillisecondClock& ms, mesh::RNG& rng, mesh::RTCClock& rtc, mesh::MeshTables& tables)
|
||||||
: mesh::Mesh(radio, ms, rng, rtc, *new StaticPoolPacketManager(32), tables),
|
: mesh::Mesh(radio, ms, rng, rtc, *new StaticPoolPacketManager(32), tables),
|
||||||
_cli(board, this, &_prefs, this), telemetry(MAX_PACKET_PAYLOAD - 4)
|
_cli(board, rtc, &_prefs, this), telemetry(MAX_PACKET_PAYLOAD - 4)
|
||||||
{
|
{
|
||||||
memset(known_clients, 0, sizeof(known_clients));
|
memset(known_clients, 0, sizeof(known_clients));
|
||||||
next_local_advert = next_flood_advert = 0;
|
next_local_advert = next_flood_advert = 0;
|
||||||
@@ -685,6 +685,8 @@ public:
|
|||||||
*dp = 0; // null terminator
|
*dp = 0; // null terminator
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const uint8_t* getSelfIdPubKey() { return self_id.pub_key; }
|
||||||
|
|
||||||
void loop() {
|
void loop() {
|
||||||
mesh::Mesh::loop();
|
mesh::Mesh::loop();
|
||||||
|
|
||||||
|
|||||||
@@ -692,7 +692,7 @@ protected:
|
|||||||
public:
|
public:
|
||||||
MyMesh(mesh::MainBoard& board, mesh::Radio& radio, mesh::MillisecondClock& ms, mesh::RNG& rng, mesh::RTCClock& rtc, mesh::MeshTables& tables)
|
MyMesh(mesh::MainBoard& board, mesh::Radio& radio, mesh::MillisecondClock& ms, mesh::RNG& rng, mesh::RTCClock& rtc, mesh::MeshTables& tables)
|
||||||
: mesh::Mesh(radio, ms, rng, rtc, *new StaticPoolPacketManager(32), tables),
|
: mesh::Mesh(radio, ms, rng, rtc, *new StaticPoolPacketManager(32), tables),
|
||||||
_cli(board, this, &_prefs, this), telemetry(MAX_PACKET_PAYLOAD - 4)
|
_cli(board, rtc, &_prefs, this), telemetry(MAX_PACKET_PAYLOAD - 4)
|
||||||
{
|
{
|
||||||
next_local_advert = next_flood_advert = 0;
|
next_local_advert = next_flood_advert = 0;
|
||||||
_logging = false;
|
_logging = false;
|
||||||
@@ -821,6 +821,8 @@ public:
|
|||||||
strcpy(reply, "not supported");
|
strcpy(reply, "not supported");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const uint8_t* getSelfIdPubKey() { return self_id.pub_key; }
|
||||||
|
|
||||||
void loop() {
|
void loop() {
|
||||||
mesh::Mesh::loop();
|
mesh::Mesh::loop();
|
||||||
|
|
||||||
|
|||||||
@@ -208,7 +208,7 @@ void CommonCLI::handleCommand(uint32_t sender_timestamp, const char* command, ch
|
|||||||
sprintf(reply, "> %s", StrHelper::ftoa(_prefs->freq));
|
sprintf(reply, "> %s", StrHelper::ftoa(_prefs->freq));
|
||||||
} else if (memcmp(config, "public.key", 10) == 0) {
|
} else if (memcmp(config, "public.key", 10) == 0) {
|
||||||
strcpy(reply, "> ");
|
strcpy(reply, "> ");
|
||||||
mesh::Utils::toHex(&reply[2], _mesh->self_id.pub_key, PUB_KEY_SIZE);
|
mesh::Utils::toHex(&reply[2], _callbacks->getSelfIdPubKey(), PUB_KEY_SIZE);
|
||||||
} else if (memcmp(config, "role", 4) == 0) {
|
} else if (memcmp(config, "role", 4) == 0) {
|
||||||
sprintf(reply, "> %s", _callbacks->getRole());
|
sprintf(reply, "> %s", _callbacks->getRole());
|
||||||
} else {
|
} else {
|
||||||
|
|||||||
@@ -41,16 +41,17 @@ public:
|
|||||||
virtual void dumpLogFile() = 0;
|
virtual void dumpLogFile() = 0;
|
||||||
virtual void setTxPower(uint8_t power_dbm) = 0;
|
virtual void setTxPower(uint8_t power_dbm) = 0;
|
||||||
virtual void formatNeighborsReply(char *reply) = 0;
|
virtual void formatNeighborsReply(char *reply) = 0;
|
||||||
|
virtual const uint8_t* getSelfIdPubKey() = 0;
|
||||||
};
|
};
|
||||||
|
|
||||||
class CommonCLI {
|
class CommonCLI {
|
||||||
mesh::Mesh* _mesh;
|
mesh::RTCClock* _rtc;
|
||||||
NodePrefs* _prefs;
|
NodePrefs* _prefs;
|
||||||
CommonCLICallbacks* _callbacks;
|
CommonCLICallbacks* _callbacks;
|
||||||
mesh::MainBoard* _board;
|
mesh::MainBoard* _board;
|
||||||
char tmp[80];
|
char tmp[80];
|
||||||
|
|
||||||
mesh::RTCClock* getRTCClock() { return _mesh->getRTCClock(); }
|
mesh::RTCClock* getRTCClock() { return _rtc; }
|
||||||
void savePrefs() { _callbacks->savePrefs(); }
|
void savePrefs() { _callbacks->savePrefs(); }
|
||||||
|
|
||||||
void checkAdvertInterval();
|
void checkAdvertInterval();
|
||||||
@@ -58,8 +59,8 @@ class CommonCLI {
|
|||||||
void loadPrefsInt(FILESYSTEM* _fs, const char* filename);
|
void loadPrefsInt(FILESYSTEM* _fs, const char* filename);
|
||||||
|
|
||||||
public:
|
public:
|
||||||
CommonCLI(mesh::MainBoard& board, mesh::Mesh* mesh, NodePrefs* prefs, CommonCLICallbacks* callbacks)
|
CommonCLI(mesh::MainBoard& board, mesh::RTCClock& rtc, NodePrefs* prefs, CommonCLICallbacks* callbacks)
|
||||||
: _board(&board), _mesh(mesh), _prefs(prefs), _callbacks(callbacks) { }
|
: _board(&board), _rtc(&rtc), _prefs(prefs), _callbacks(callbacks) { }
|
||||||
|
|
||||||
void loadPrefs(FILESYSTEM* _fs);
|
void loadPrefs(FILESYSTEM* _fs);
|
||||||
void savePrefs(FILESYSTEM* _fs);
|
void savePrefs(FILESYSTEM* _fs);
|
||||||
|
|||||||
Reference in New Issue
Block a user