7#ifndef HELICS_CPP98_ENDPOINT_HPP_
8#define HELICS_CPP98_ENDPOINT_HPP_
11#include "DataBuffer.hpp"
12#include "helics/helics.h"
13#include "helicsExceptions.hpp"
25 Message() HELICS_NOTHROW: mo(HELICS_NULL_POINTER) {}
41 if (mo != HELICS_NULL_POINTER) {
47#ifdef HELICS_HAS_RVALUE_REFS
60 if (mo != HELICS_NULL_POINTER) {
199 mo = HELICS_NULL_POINTER;
224 Endpoint() HELICS_NOTHROW: ep(HELICS_NULL_POINTER) {}
240 HELICS_NODISCARD
bool hasMessage()
const
272 void send(
const void* data,
size_t data_size)
282 void sendTo(
const void* data,
size_t data_size,
const std::string& dest)
285 ep, data,
static_cast<int>(data_size), dest.c_str(),
hThrowOnError());
305 ep, data,
static_cast<int>(data_size), dest.c_str(), time,
hThrowOnError());
310 void send(
const std::string& data)
319 void sendTo(
const std::string& data,
const std::string& dest)
322 ep, &(data[0]),
static_cast<int>(data.size()), dest.c_str(),
hThrowOnError());
331 ep, &(data[0]),
static_cast<int>(data.size()), time,
hThrowOnError());
341 ep, &(data[0]),
static_cast<int>(data.size()), dest.c_str(), time,
hThrowOnError());
347 void send(
const std::vector<char>& data)
356 void sendTo(
const std::vector<char>& data,
const std::string& dest)
359 ep, data.data(),
static_cast<int>(data.size()), dest.c_str(),
hThrowOnError());
368 ep, data.data(),
static_cast<int>(data.size()), time,
hThrowOnError());
378 ep, data.data(),
static_cast<int>(data.size()), dest.c_str(), time,
hThrowOnError());
388#ifdef HELICS_HAS_RVALUE_REFS
430 if (mo != HELICS_NULL_POINTER) {
void helicsEndpointSetDefaultDestination(HelicsEndpoint endpoint, const char *dst, HelicsError *err)
Definition MessageFederateExport.cpp:215
HelicsBool helicsEndpointIsValid(HelicsEndpoint endpoint)
Definition MessageFederateExport.cpp:206
HelicsMessage helicsEndpointCreateMessage(HelicsEndpoint endpoint, HelicsError *err)
Definition MessageFederateExport.cpp:596
void helicsEndpointSendBytes(HelicsEndpoint endpoint, const void *data, int inputDataLength, HelicsError *err)
Definition MessageFederateExport.cpp:302
void helicsEndpointSendMessageZeroCopy(HelicsEndpoint endpoint, HelicsMessage message, HelicsError *err)
Definition MessageFederateExport.cpp:399
int helicsEndpointPendingMessageCount(HelicsEndpoint endpoint)
Definition MessageFederateExport.cpp:463
const char * helicsEndpointGetDefaultDestination(HelicsEndpoint endpoint)
Definition MessageFederateExport.cpp:232
void helicsEndpointSendBytesAt(HelicsEndpoint endpoint, const void *data, int inputDataLength, HelicsTime time, HelicsError *err)
Definition MessageFederateExport.cpp:338
HelicsBool helicsEndpointHasMessage(HelicsEndpoint endpoint)
Definition MessageFederateExport.cpp:445
void helicsEndpointSendMessage(HelicsEndpoint endpoint, HelicsMessage message, HelicsError *err)
Definition MessageFederateExport.cpp:381
const char * helicsEndpointGetInfo(HelicsEndpoint end)
Definition MessageFederateExport.cpp:689
void helicsEndpointSendBytesTo(HelicsEndpoint endpoint, const void *data, int inputDataLength, const char *dst, HelicsError *err)
Definition MessageFederateExport.cpp:320
HelicsMessage helicsEndpointGetMessage(HelicsEndpoint endpoint)
Definition MessageFederateExport.cpp:553
const char * helicsEndpointGetType(HelicsEndpoint endpoint)
Definition MessageFederateExport.cpp:651
void helicsEndpointSendBytesToAt(HelicsEndpoint endpoint, const void *data, int inputDataLength, const char *dst, HelicsTime time, HelicsError *err)
Definition MessageFederateExport.cpp:356
const char * helicsEndpointGetName(HelicsEndpoint endpoint)
Definition MessageFederateExport.cpp:669
void helicsEndpointSetInfo(HelicsEndpoint endpoint, const char *info, HelicsError *err)
Definition MessageFederateExport.cpp:706
void * HelicsEndpoint
Definition api-data.h:37
double HelicsTime
Definition api-data.h:106
void * HelicsMessage
Definition api-data.h:100
const HelicsBool HELICS_FALSE
Definition api-data.h:123
const HelicsBool HELICS_TRUE
Definition api-data.h:122
Definition DataBuffer.hpp:18
HELICS_NODISCARD HelicsDataBuffer getHelicsDataBuffer()
Definition DataBuffer.hpp:165
Definition Endpoint.hpp:219
void sendTo(const std::vector< char > &data, const std::string &dest)
Definition Endpoint.hpp:356
Endpoint & operator=(const Endpoint &endpoint)
Definition Endpoint.hpp:228
Endpoint(HelicsEndpoint hep) HELICS_NOTHROW
Definition Endpoint.hpp:222
void setInfo(const std::string &info)
Definition Endpoint.hpp:413
void sendToAt(const void *data, size_t data_size, const std::string &dest, HelicsTime time)
Definition Endpoint.hpp:302
HELICS_NODISCARD uint64_t pendingMessageCount() const
Definition Endpoint.hpp:256
void sendTo(const void *data, size_t data_size, const std::string &dest)
Definition Endpoint.hpp:282
HELICS_NODISCARD const char * getType()
Definition Endpoint.hpp:408
void sendTo(const std::string &data, const std::string &dest)
Definition Endpoint.hpp:319
void sendAt(const std::vector< char > &data, HelicsTime time)
Definition Endpoint.hpp:365
Message createMessage()
Definition Endpoint.hpp:265
Endpoint() HELICS_NOTHROW
Definition Endpoint.hpp:224
void sendAt(const std::string &data, HelicsTime time)
Definition Endpoint.hpp:328
Message getMessage()
Definition Endpoint.hpp:262
HELICS_NODISCARD const char * getInfo() const
Definition Endpoint.hpp:411
HELICS_NODISCARD const char * getDefaultDestination() const
Definition Endpoint.hpp:251
void send(const std::string &data)
Definition Endpoint.hpp:310
void sendMessage(const Message &message)
Definition Endpoint.hpp:383
HELICS_NODISCARD const char * getName() const
Definition Endpoint.hpp:406
void sendToAt(const std::vector< char > &data, const std::string &dest, HelicsTime time)
Definition Endpoint.hpp:375
Endpoint(const Endpoint &endpoint) HELICS_NOTHROW
Definition Endpoint.hpp:226
void send(const void *data, size_t data_size)
Definition Endpoint.hpp:272
void sendMessageZeroCopy(Message &message)
Definition Endpoint.hpp:399
void setDefaultDestination(const std::string &dest)
Definition Endpoint.hpp:246
void send(const std::vector< char > &data)
Definition Endpoint.hpp:347
HELICS_NODISCARD bool isValid() const
Definition Endpoint.hpp:238
void sendToAt(const std::string &data, const std::string &dest, HelicsTime time)
Definition Endpoint.hpp:338
void sendAt(const char *data, size_t data_size, HelicsTime time)
Definition Endpoint.hpp:292
HELICS_NODISCARD HelicsEndpoint baseObject() const
Definition Endpoint.hpp:236
Definition cpp98/Federate.hpp:229
Definition Endpoint.hpp:22
HELICS_NODISCARD const char * c_str() const
Definition Endpoint.hpp:165
HELICS_NODISCARD void * data() const
Definition Endpoint.hpp:127
Message & destination(const char *dest)
Definition Endpoint.hpp:91
Message & destination(const std::string &dest)
Definition Endpoint.hpp:85
Message & append(const std::string &str)
Definition Endpoint.hpp:159
Message & data(const char *str)
Definition Endpoint.hpp:141
Message & originalDestination(const std::string &odest)
Definition Endpoint.hpp:114
Message & originalSource(const std::string &osrc)
Definition Endpoint.hpp:103
HELICS_NODISCARD bool getFlagOption(int flag) const
Definition Endpoint.hpp:181
HELICS_NODISCARD int size() const
Definition Endpoint.hpp:120
HELICS_NODISCARD HelicsTime time() const
Definition Endpoint.hpp:167
Message & data(const void *ptr, int size)
Definition Endpoint.hpp:129
~Message()
Definition Endpoint.hpp:58
HELICS_NODISCARD int messageID() const
Definition Endpoint.hpp:186
Message() HELICS_NOTHROW
Definition Endpoint.hpp:25
void resize(int newSize)
Definition Endpoint.hpp:122
Message & newMessageObject(const Federate &fed)
Definition cpp98/MessageFederate.hpp:123
Message & time(HelicsTime val)
Definition Endpoint.hpp:169
Message & messageID(int newId)
Definition Endpoint.hpp:188
HELICS_NODISCARD const char * source() const
Definition Endpoint.hpp:69
HELICS_NODISCARD const char * originalDestination() const
Definition Endpoint.hpp:109
Message & source(const char *src)
Definition Endpoint.hpp:77
Message & data(const std::string &str)
Definition Endpoint.hpp:135
Message(HelicsMessage hmo) HELICS_NOTHROW
Definition Endpoint.hpp:31
HELICS_NODISCARD bool isValid() const
Definition Endpoint.hpp:67
HELICS_NODISCARD const char * destination() const
Definition Endpoint.hpp:83
Message & source(const std::string &src)
Definition Endpoint.hpp:71
HELICS_NODISCARD HelicsMessage release()
Definition Endpoint.hpp:196
void reserve(int newSize)
Definition Endpoint.hpp:125
Message & data(DataBuffer buffer)
Definition Endpoint.hpp:147
Message(const Message &mess) HELICS_NOTHROW
Definition Endpoint.hpp:34
HELICS_NODISCARD const char * originalSource() const
Definition Endpoint.hpp:98
HELICS_NODISCARD DataBuffer dataBuffer()
Definition Endpoint.hpp:204
Message & append(const void *ptr, int size)
Definition Endpoint.hpp:153
Message & setFlag(int flag, bool val)
Definition Endpoint.hpp:175
Message & operator=(const Message &mess) HELICS_NOTHROW
Definition Endpoint.hpp:39
Definition helicsExceptions.hpp:38
const char * helicsMessageGetDestination(HelicsMessage message)
Definition MessageFederateExport.cpp:922
void helicsMessageAppendData(HelicsMessage message, const void *data, int inputDataLength, HelicsError *err)
Definition MessageFederateExport.cpp:1190
HelicsMessage helicsMessageClone(HelicsMessage message, HelicsError *err)
Definition MessageFederateExport.cpp:1228
void helicsMessageSetFlagOption(HelicsMessage message, int flag, HelicsBool flagValue, HelicsError *err)
Definition MessageFederateExport.cpp:1139
const char * helicsMessageGetOriginalSource(HelicsMessage message)
Definition MessageFederateExport.cpp:931
int helicsMessageGetByteCount(HelicsMessage message)
Definition MessageFederateExport.cpp:991
void helicsMessageSetDestination(HelicsMessage message, const char *dst, HelicsError *err)
Definition MessageFederateExport.cpp:1060
void helicsMessageResize(HelicsMessage message, int newSize, HelicsError *err)
Definition MessageFederateExport.cpp:1093
void helicsMessageSetData(HelicsMessage message, const void *data, int inputDataLength, HelicsError *err)
Definition MessageFederateExport.cpp:1167
const char * helicsMessageGetSource(HelicsMessage message)
Definition MessageFederateExport.cpp:913
void helicsMessageSetDataBuffer(HelicsMessage message, HelicsDataBuffer data, HelicsError *err)
Definition MessageFederateExport.cpp:1176
HelicsBool helicsMessageGetFlagOption(HelicsMessage message, int flag)
Definition MessageFederateExport.cpp:967
void helicsMessageSetString(HelicsMessage message, const char *data, HelicsError *err)
Definition MessageFederateExport.cpp:1157
HelicsDataBuffer helicsMessageDataBuffer(HelicsMessage message, HelicsError *err)
Definition MessageFederateExport.cpp:1033
void helicsMessageFree(HelicsMessage message)
Definition MessageFederateExport.cpp:1252
int helicsMessageGetMessageID(HelicsMessage message)
Definition MessageFederateExport.cpp:958
void helicsMessageClear(HelicsMessage message, HelicsError *err)
Definition MessageFederateExport.cpp:1199
void * helicsMessageGetBytesPointer(HelicsMessage message)
Definition MessageFederateExport.cpp:1024
void helicsMessageSetSource(HelicsMessage message, const char *src, HelicsError *err)
Definition MessageFederateExport.cpp:1051
void helicsMessageSetTime(HelicsMessage message, HelicsTime time, HelicsError *err)
Definition MessageFederateExport.cpp:1084
void helicsMessageSetOriginalDestination(HelicsMessage message, const char *dst, HelicsError *err)
Definition MessageFederateExport.cpp:1076
void helicsMessageReserve(HelicsMessage message, int reserveSize, HelicsError *err)
Definition MessageFederateExport.cpp:1107
const char * helicsMessageGetOriginalDestination(HelicsMessage message)
Definition MessageFederateExport.cpp:940
void helicsMessageSetOriginalSource(HelicsMessage message, const char *src, HelicsError *err)
Definition MessageFederateExport.cpp:1068
HelicsTime helicsMessageGetTime(HelicsMessage message)
Definition MessageFederateExport.cpp:949
void helicsMessageSetMessageID(HelicsMessage message, int32_t messageID, HelicsError *err)
Definition MessageFederateExport.cpp:1121
const char * helicsMessageGetString(HelicsMessage message)
Definition MessageFederateExport.cpp:980
HelicsBool helicsMessageIsValid(HelicsMessage message)
Definition MessageFederateExport.cpp:1042
Definition cpp98/Broker.hpp:18