The network manager manages all network connections for SGCT.
More...
#include <sgct/networkmanager.h>
|
| static NetworkManager & | instance () |
| static void | create (NetworkMode nm, std::function< void(void *, int, int, int)> dataTransferDecode, std::function< void(bool, int)> dataTransferStatus, std::function< void(int, int)> dataTransferAcknowledge) |
| static void | destroy () |
|
| static std::condition_variable | cond |
The network manager manages all network connections for SGCT.
◆ NetworkMode
| Enumerator |
|---|
| Remote | |
| LocalServer | |
| LocalClient | |
◆ SyncMode
| Enumerator |
|---|
| SendDataToClients | |
| Acknowledge | |
◆ ~NetworkManager()
| sgct::NetworkManager::~NetworkManager |
( |
| ) |
|
◆ activeConnectionsCount()
| unsigned int sgct::NetworkManager::activeConnectionsCount |
( |
| ) |
const |
◆ areAllNodesConnected()
| bool sgct::NetworkManager::areAllNodesConnected |
( |
| ) |
const |
◆ clearCallbacks()
| void sgct::NetworkManager::clearCallbacks |
( |
| ) |
|
◆ connection()
| const Network & sgct::NetworkManager::connection |
( |
int | index | ) |
const |
◆ connectionsCount()
| int sgct::NetworkManager::connectionsCount |
( |
| ) |
const |
◆ create()
| void sgct::NetworkManager::create |
( |
NetworkMode | nm, |
|
|
std::function< void(void *, int, int, int)> | dataTransferDecode, |
|
|
std::function< void(bool, int)> | dataTransferStatus, |
|
|
std::function< void(int, int)> | dataTransferAcknowledge ) |
|
static |
◆ destroy()
| void sgct::NetworkManager::destroy |
( |
| ) |
|
|
static |
◆ initialize()
| void sgct::NetworkManager::initialize |
( |
| ) |
|
◆ instance()
| NetworkManager & sgct::NetworkManager::instance |
( |
| ) |
|
|
static |
◆ isComputerServer()
| bool sgct::NetworkManager::isComputerServer |
( |
| ) |
const |
Retrieve the node id if this node is part of the cluster configuration.
◆ isRunning()
| bool sgct::NetworkManager::isRunning |
( |
| ) |
const |
◆ isSyncComplete()
| bool sgct::NetworkManager::isSyncComplete |
( |
| ) |
const |
Compare if the last frame and current frames are different -> data update and if send frame == recieved frame.
◆ matchesAddress()
| bool sgct::NetworkManager::matchesAddress |
( |
std::string_view | address | ) |
const |
◆ sync()
| std::optional< std::pair< double, double > > sgct::NetworkManager::sync |
( |
SyncMode | sm | ) |
const |
- Parameters
-
| sm | If this application is server/master in cluster then set to true |
- Returns
- The min-max pair of the looping time to all connections if data was sent to the clients. If it was the acknowledge data call or no connections are available, a nullopt is returned
◆ syncConnection()
| const Network & sgct::NetworkManager::syncConnection |
( |
int | index | ) |
const |
◆ syncConnectionsCount()
| int sgct::NetworkManager::syncConnectionsCount |
( |
| ) |
const |
◆ transferData() [1/2]
| void sgct::NetworkManager::transferData |
( |
const void * | data, |
|
|
int | length, |
|
|
int | packageId ) const |
◆ transferData() [2/2]
| void sgct::NetworkManager::transferData |
( |
const void * | data, |
|
|
int | length, |
|
|
int | packageId, |
|
|
const Network & | connection ) const |
◆ cond
| std::condition_variable sgct::NetworkManager::cond |
|
static |
The documentation for this class was generated from the following file: