9 #include "gmlc/networking/addressOperations.hpp"
10 #include "gmlc/networking/interfaceOperations.hpp"
25 enum class ServerModeOptions : char {
27 SERVER_DEFAULT_ACTIVE = 1,
28 SERVER_DEFAULT_DEACTIVATED = 2,
30 SERVER_DEACTIVATED = 4,
46 gmlc::networking::InterfaceNetworks interfaceNetwork{
47 gmlc::networking::InterfaceNetworks::LOCAL};
58 ServerModeOptions
server_mode{ServerModeOptions::UNSPECIFIED};
59 bool encrypted{
false};
60 bool forceConnection{
false};
61 std::string encryptionConfig;
64 NetworkBrokerData() =
default;
72 bool enableConfig =
true);
79 void checkAndUpdateBrokerAddress(std::string_view localAddress);
80 gmlc::networking::InterfaceTypes allowedType{gmlc::networking::InterfaceTypes::IP};
Definition: NetworkBrokerData.hpp:23
bool appendNameToAddress
flag indicating that the name should be appended to the address
Definition: NetworkBrokerData.hpp:53
std::string localInterface
the interface to use for the local connection
Definition: NetworkBrokerData.hpp:35
std::string brokerAddress
the address or domain name of the broker
Definition: NetworkBrokerData.hpp:34
std::shared_ptr< helicsCLI11App > commandLineParser(std::string_view localAddress, bool enableConfig=true)
Definition: NetworkBrokerData.cpp:19
int maxRetries
the maximum number of retries to establish a network connection
Definition: NetworkBrokerData.hpp:45
int portNumber
the port number for the local interface
Definition: NetworkBrokerData.hpp:38
int maxMessageCount
maximum message count
Definition: NetworkBrokerData.hpp:44
bool use_os_port
specify that any automatic port allocation should use operating system allocation
Definition: NetworkBrokerData.hpp:50
int connectionPort
the port number for connecting
Definition: NetworkBrokerData.hpp:40
int portStart
the starting port for automatic port definitions
Definition: NetworkBrokerData.hpp:42
bool autobroker
Definition: NetworkBrokerData.hpp:51
std::string connectionAddress
the address for connecting
Definition: NetworkBrokerData.hpp:37
bool noAckConnection
Definition: NetworkBrokerData.hpp:54
bool useJsonSerialization
for message serialization use JSON
Definition: NetworkBrokerData.hpp:56
bool observer
specify that the network connection is used for observation only
Definition: NetworkBrokerData.hpp:57
int brokerPort
the port number to use for the main broker interface
Definition: NetworkBrokerData.hpp:39
void setInterfaceType(gmlc::networking::InterfaceTypes type)
Definition: NetworkBrokerData.hpp:75
ServerModeOptions server_mode
setup a server mode
Definition: NetworkBrokerData.hpp:58
int maxMessageSize
maximum message size
Definition: NetworkBrokerData.hpp:43
std::string brokerInitString
a string containing arguments for the broker initialization
Definition: NetworkBrokerData.hpp:36
NetworkBrokerData(gmlc::networking::InterfaceTypes type)
Definition: NetworkBrokerData.hpp:66
std::string brokerName
the identifier for the broker
Definition: NetworkBrokerData.hpp:33
bool reuse_address
Definition: NetworkBrokerData.hpp:48
the main namespace for the helics co-simulation library User functions will be in the helics namespac...
Definition: AsyncFedCallInfo.hpp:14