AlteriomPainlessMesh v2.1.1
Easy ESP32/ESP8266 mesh networking with Alteriom IoT extensions
Loading...
Searching...
No Matches
Namespaces | Classes | Typedefs | Enumerations
painlessmesh Namespace Reference

Namespaces

namespace  ack
 
namespace  base64
 
namespace  buffer
 
namespace  callback
 
namespace  gateway
 
namespace  layout
 
namespace  logger
 
namespace  memory
 
namespace  metrics
 
namespace  ntp
 
namespace  plugin
 
namespace  protocol
 
namespace  router
 
namespace  rtc
 
namespace  tcp
 
namespace  validation
 
namespace  wifi
 

Classes

struct  BridgeChangeEvent
 
struct  BridgeHealthMetrics
 
class  BridgeInfo
 
struct  BridgeStatus
 
struct  BridgeTestResult
 
class  Connection
 
struct  ElectionRecord
 
struct  InternetResult
 
class  Mesh
 
class  MessageQueue
 
struct  PendingInternetRequest
 
struct  QueuedMessage
 
struct  QueueStats
 
struct  SendOptions
 

Typedefs

typedef std::function< void(uint32_t nodeId)> newConnectionCallback_t
 
typedef std::function< void(uint32_t nodeId)> droppedConnectionCallback_t
 
typedef std::function< void(uint32_t from, TSTRING &msg)> receivedCallback_t
 
typedef std::function< void()> changedConnectionsCallback_t
 
typedef std::function< void(int32_t offset)> nodeTimeAdjustedCallback_t
 
typedef std::function< void(uint32_t nodeId, int32_t delay)> nodeDelayCallback_t
 
typedef std::function< void(uint32_t bridgeNodeId, bool internetAvailable)> bridgeStatusChangedCallback_t
 
typedef std::function< void(uint32_t timestamp)> rtcSyncCompleteCallback_t
 
typedef std::function< void(bool available)> localInternetChangedCallback_t
 
typedef std::function< void(uint32_t oldPrimary, uint32_t newPrimary)> gatewayChangedCallback_t
 
typedef std::function< void(bool success, uint16_t httpStatus, TSTRING error)> internetResultCallback_t
 
typedef std::function< void(const InternetResult &result)> internetResponseCallback_t
 
typedef std::function< void(QueueState state, uint32_t messageCount)> queueStateChangedCallback_t
 

Enumerations

enum  MessagePriority { PRIORITY_CRITICAL = 0 , PRIORITY_HIGH = 1 , PRIORITY_NORMAL = 2 , PRIORITY_LOW = 3 }
 
enum  QueueState { QUEUE_EMPTY , QUEUE_NORMAL , QUEUE_75_PERCENT , QUEUE_FULL }
 

Detailed Description

Memory management utilities for painlessMesh

This module provides optimized memory management utilities to reduce allocations and improve performance in memory-constrained environments.

Performance metrics and monitoring utilities for painlessMesh

This module provides comprehensive performance monitoring capabilities to help optimize mesh network performance and diagnose issues.

Input validation and security utilities for painlessMesh

This module provides comprehensive validation utilities to improve security and robustness of the mesh network.

Typedef Documentation

◆ bridgeStatusChangedCallback_t

typedef std::function<void(uint32_t bridgeNodeId, bool internetAvailable)> painlessmesh::bridgeStatusChangedCallback_t

◆ changedConnectionsCallback_t

typedef std::function<void()> painlessmesh::changedConnectionsCallback_t

◆ droppedConnectionCallback_t

typedef std::function<void(uint32_t nodeId)> painlessmesh::droppedConnectionCallback_t

◆ gatewayChangedCallback_t

typedef std::function<void(uint32_t oldPrimary, uint32_t newPrimary)> painlessmesh::gatewayChangedCallback_t

◆ internetResponseCallback_t

typedef std::function<void(const InternetResult& result)> painlessmesh::internetResponseCallback_t

Callback type for Internet request results, with the whole result

mesh.sendToInternet(url, "", [](const InternetResult& result) {
Serial.printf("HTTP %u: %s\n", result.httpStatus, result.response.c_str());
});
Definition mesh.hpp:100
uint16_t httpStatus
Definition mesh.hpp:106
TSTRING response
Definition mesh.hpp:110

◆ internetResultCallback_t

typedef std::function<void(bool success, uint16_t httpStatus, TSTRING error)> painlessmesh::internetResultCallback_t

Callback type for Internet request results

Parameters
successWhether the request was delivered successfully
httpStatusHTTP status code from the destination (0 if not applicable)
errorHuman-readable error message (empty if success)

◆ localInternetChangedCallback_t

typedef std::function<void(bool available)> painlessmesh::localInternetChangedCallback_t

◆ newConnectionCallback_t

typedef std::function<void(uint32_t nodeId)> painlessmesh::newConnectionCallback_t

◆ nodeDelayCallback_t

typedef std::function<void(uint32_t nodeId, int32_t delay)> painlessmesh::nodeDelayCallback_t

◆ nodeTimeAdjustedCallback_t

typedef std::function<void(int32_t offset)> painlessmesh::nodeTimeAdjustedCallback_t

◆ queueStateChangedCallback_t

typedef std::function<void(QueueState state, uint32_t messageCount)> painlessmesh::queueStateChangedCallback_t

◆ receivedCallback_t

typedef std::function<void(uint32_t from, TSTRING &msg)> painlessmesh::receivedCallback_t

◆ rtcSyncCompleteCallback_t

typedef std::function<void(uint32_t timestamp)> painlessmesh::rtcSyncCompleteCallback_t

Enumeration Type Documentation

◆ MessagePriority

Message priority levels for queue management Higher priority messages are preserved when queue is full

Enumerator
PRIORITY_CRITICAL 
PRIORITY_HIGH 
PRIORITY_NORMAL 
PRIORITY_LOW 

◆ QueueState

Queue state for monitoring and callbacks

Enumerator
QUEUE_EMPTY 
QUEUE_NORMAL 
QUEUE_75_PERCENT 
QUEUE_FULL