EPS Conduits  v0.0.2-2413
networking over networking
comm.hpp File Reference
#include "common.hpp"
#include <boost/uuid/uuid.hpp>
#include <string>
Include dependency graph for comm.hpp:
This graph shows which files directly or indirectly include this file:

Classes

struct  EPS::CommHeader1
 Communication header: common fields to all communication commands. More...
 
struct  EPS::CommHello2
 Communication header: initial "hello" sent between clients and servers when they first connect. More...
 
struct  EPS::CommAddress1
 Communication header: send a number of important addresses sent by the server to the clients on startup. More...
 
struct  EPS::CommData1
 Communication header: data packet. More...
 
struct  EPS::CommList2Data
 Represents a single EPS client. More...
 
struct  EPS::CommList2
 Communication header: list all devices. More...
 
struct  EPS::CommStats1
 Communication header: send stats information. More...
 

Namespaces

 EPS
 

Macros

#define MAX_NUMBER_OF_OTHER_ADDRESSES   3
 Several messages contain a limited vector of addresses. The maximum number of addresses we can send is controlled with this define. More...
 
#define EPS_PROTOCOL_VERSION   4
 Protocol identifier. More...
 
#define EPS_HOSTNAME_LENGTH   40
 

Enumerations

enum  EPS::ECommType {
  EPS::kUnknown = 0,
  EPS::kMinValid = 1,
  EPS::kHello1 = kMinValid,
  EPS::kAddress1 = 2,
  EPS::kData1 = 3,
  EPS::kList1 = 4,
  EPS::kStats1 = 5,
  EPS::kHello2 = 6,
  EPS::kList2 = 7,
  EPS::kMax
}
 Communication structure types. More...
 

Functions

std::string EPS::comm_type_to_string (const uint8_t type)
 Convert EPS::ECommType to a user-readable text string. More...
 
std::string EPS::comm_type_to_string (const EPS::ECommType type)
 Convert EPS::ECommType to a user-readable text string. More...
 

Macro Definition Documentation

◆ EPS_HOSTNAME_LENGTH

#define EPS_HOSTNAME_LENGTH   40

◆ EPS_PROTOCOL_VERSION

#define EPS_PROTOCOL_VERSION   4

Protocol identifier.

This is what determines if two different versions of EPS can communicate. This value must be incremented every time a change is made to the communication protocol that would prevent EPS from working correctly with prior versions.

◆ MAX_NUMBER_OF_OTHER_ADDRESSES

#define MAX_NUMBER_OF_OTHER_ADDRESSES   3

Several messages contain a limited vector of addresses. The maximum number of addresses we can send is controlled with this define.