 |
helics
3.3.0
|
9 #include "../core/CoreBroker.hpp"
10 #include "../network/NetworkBroker.hpp"
22 bool allowMultiBroker();
29 std::vector<std::unique_ptr<CommsInterface>>
comms;
37 std::vector<std::pair<route_id, int>> routingTable;
51 virtual
bool brokerConnect() override;
52 virtual
void brokerDisconnect() override;
53 virtual
bool tryReconnect() override;
65 virtual
void addRoute(
route_id rid,
int interfaceId, std::string_view routeInfo) override;
Definition: MultiBroker.hpp:26
void joinAllThreads()
Definition: BrokerBase.cpp:91
CoreType type
the core type of the master controller
Definition: MultiBroker.hpp:36
virtual std::string generateLocalAddressString() const override
Definition: MultiBroker.cpp:217
@ MULTI
use the multi-broker
NetworkBrokerData netInfo
structure containing the networking information
Definition: MultiBroker.hpp:33
virtual std::shared_ptr< helicsCLI11App > generateCLI() override
Definition: CoreBroker.cpp:2190
CoreType
Definition: CoreTypes.hpp:36
@ INPROC
core/broker using a stripped down in process core type
Definition: NetworkBrokerData.hpp:23
bool sendToLogger(GlobalFederateId federateID, int logLevel, std::string_view name, std::string_view message, bool fromRemote=false) const
Definition: BrokerBase.cpp:343
void addAssociatedBrokerType(std::string_view name, CoreType type)
Definition: BrokerFactory.cpp:310
std::string getAddress() const
Definition: NetworkCommsInterface.cpp:260
Definition: ActionMessage.hpp:30
constexpr GlobalBrokerId parent_broker_id
Definition: GlobalFederateId.hpp:64
~MultiBroker()
Definition: MultiBroker.cpp:70
std::atomic< bool > haltOperations
flag indicating that no further message should be processed
Definition: BrokerBase.hpp:80
@ DEFAULT
ZMQ if available or UDP.
Definition: helicsCLI11.hpp:42
virtual const std::string & getIdentifier() const override final
Definition: CoreBroker.hpp:297
std::vector< std::unique_ptr< CommsInterface > > comms
Definition: MultiBroker.hpp:29
void addActionMessage(const ActionMessage &m)
Definition: BrokerBase.cpp:551
std::shared_ptr< helicsCLI11App > commandLineParser(std::string_view localAddress, bool enableConfig=true)
Definition: NetworkBrokerData.cpp:19
Definition: GlobalFederateId.hpp:184
virtual void transmit(route_id rid, const ActionMessage &cmd) override
Definition: MultiBroker.cpp:235
@ INTERPROCESS
use when all federates are on the same machine
std::string brokerAddress
the address or domain name of the broker
Definition: NetworkBrokerData.hpp:34
Time networkTimeout
timeout to establish a socket connection before giving up
Definition: BrokerBase.hpp:64
std::atomic< int > disconnectionStage
the stage of disconnection
Definition: MultiBroker.hpp:28
@ TEST
use the Test core if all federates are in the same process
virtual void setAsRoot() override final
Definition: CoreBroker.cpp:2207
the main namespace for the helics co-simulation library User functions will be in the helics namespac...
Definition: AsyncFedCallInfo.hpp:14
virtual void removeRoute(route_id rid) override
Definition: MultiBroker.cpp:292
@ HELICS_LOG_LEVEL_ERROR
Definition: helics_enums.h:188
std::function< void(int, std::string_view, std::string_view)> getLoggingCallback() const
Definition: BrokerBase.cpp:84
virtual void addRoute(route_id rid, int interfaceId, std::string_view routeInfo) override
Definition: MultiBroker.cpp:277
Definition: NetworkCommsInterface.hpp:18
Definition: CoreBroker.hpp:93
std::unique_ptr< CommsInterface > masterComm
the primary comms object or the one that links with the master
Definition: MultiBroker.hpp:31
std::atomic< bool > brokerInitialized
atomic protecting local initialization
Definition: MultiBroker.hpp:35
@ IPC
same as INTERPROCESS
std::string brokerName
the identifier for the broker
Definition: NetworkBrokerData.hpp:33
std::string configFile
the name of the config file in use
Definition: MultiBroker.hpp:34
MultiBroker() noexcept
Definition: MultiBroker.cpp:68
bool isValidIndex(sizeType testSize, const SizedDataType &vec)
Definition: core-data.hpp:171