 |
helics
3.0.1
|
10 #include "../NetworkCommsInterface.hpp"
34 virtual int getDefaultBrokerPort()
const override;
35 virtual void queue_rx_function()
override;
36 virtual void queue_tx_function()
override;
37 virtual void closeReceiver()
override;
41 int processIncomingMessage(zmq::message_t& msg);
44 int replyToIncomingMessage(zmq::message_t& msg, zmq::socket_t& sock);
46 int initializeBrokerConnections(zmq::socket_t& controlSocket);
49 std::string getPushAddress()
const;
std::string brokerTargetAddress
the base for the broker address
Definition: CommsInterface.hpp:125
bool propertyLock()
Definition: CommsInterface.cpp:153
@ startup
the connection is in startup mode
@ processed
the message was used to update the current state
virtual void loadNetworkInfo(const NetworkBrokerData &netInfo) override
Definition: ZmqComms.cpp:28
std::string name
the name of the object
Definition: CommsInterface.hpp:123
ZmqComms() noexcept
Definition: ZmqComms.cpp:53
@ terminated
the connection has been terminated
void logWarning(const std::string &message) const
Definition: CommsInterface.cpp:571
std::pair< std::string, int > extractInterfaceandPort(const std::string &address)
Definition: NetworkBrokerData.cpp:227
Definition: ZmqComms.h:23
std::atomic< bool > disconnecting
flag indicating that the comm system is in the process of disconnecting
Definition: CommsInterface.hpp:157
void logError(const std::string &message) const
Definition: CommsInterface.cpp:580
std::atomic< int > PortNumber
port to use for the local connection
Definition: NetworkCommsInterface.hpp:57
Definition: NetworkBrokerData.hpp:36
std::chrono::milliseconds connectionTimeout
Definition: CommsInterface.hpp:145
~ZmqComms()
Definition: ZmqComms.cpp:56
ActionMessage generateReplyToIncomingMessage(ActionMessage &cmd)
Definition: NetworkCommsInterface.cpp:194
static std::shared_ptr< ZmqContextManager > getContextPointer(const std::string &contextName=std::string{})
Definition: ZmqContextManager.cpp:37
gmlc::containers::BlockingPriorityQueue< std::pair< route_id, ActionMessage > > txQueue
set of messages waiting to be transmitted
Definition: CommsInterface.hpp:154
bool checkActionFlag(uint16_t flags, FlagIndex flag)
Definition: flagOperations.hpp:85
bool isValidCommand(const ActionMessage &command) noexcept
Definition: ActionMessage.hpp:317
@ TCP
using tcp ports for communication
std::function< void(ActionMessage &&)> ActionCallback
the callback for what to do with a received message
Definition: CommsInterface.hpp:150
@ error
some error occurred on the connection
void disconnect()
Definition: CommsInterface.cpp:385
void transmit(route_id rid, const ActionMessage &cmd)
Definition: CommsInterface.cpp:170
bool useJsonSerialization
true to make all connections use JSON serialization
Definition: CommsInterface.hpp:142
@ use_json_serialization_flag
flag to indicate it should use the json packetization
Definition: flagOperations.hpp:22
int brokerPort
standardized broker port to use for connection to the brokers
Definition: NetworkCommsInterface.hpp:56
void setActionFlag(FlagContainer &M, FlagIndex flag)
Definition: flagOperations.hpp:77
std::string localTargetAddress
the base for the receive address
Definition: CommsInterface.hpp:124
std::string brokerName
the identifier for the broker
Definition: CommsInterface.hpp:126
std::string prettyPrintString(const ActionMessage &command)
Definition: ActionMessage.cpp:841
bool isDisconnectCommand(const ActionMessage &command) noexcept
Definition: ActionMessage.hpp:276
std::atomic< bool > requestDisconnect
flag gets set when disconnect is called
Definition: CommsInterface.hpp:148
void insertProtocol(std::string &networkAddress, InterfaceTypes interfaceT)
Definition: NetworkBrokerData.cpp:292
virtual void loadNetworkInfo(const NetworkBrokerData &netInfo) override
Definition: NetworkCommsInterface.cpp:77
bool isProtocolCommand(const ActionMessage &command) noexcept
Definition: ActionMessage.hpp:226
the main namespace for the helics co-simulation library User functions will be in the helics namespac...
Definition: AsyncFedCallInfo.hpp:14
bool serverMode
some comms have a server mode and non-server mode
Definition: CommsInterface.hpp:140
std::string makePortAddress(const std::string &networkInterface, int portNumber)
Definition: NetworkBrokerData.cpp:217
Definition: NetworkCommsInterface.hpp:18
InterfaceTypes
Definition: NetworkBrokerData.hpp:24
@ connected
we are connected
void logMessage(const std::string &message) const
Definition: CommsInterface.cpp:562
const std::string & getRandomID() const
Definition: CommsInterface.hpp:183