helics  2.8.1
Functions
operation functions

Functions

const char * helicsMessageGetSource (helics_message_object message)
 
const char * helicsMessageGetDestination (helics_message_object message)
 
const char * helicsMessageGetOriginalSource (helics_message_object message)
 
const char * helicsMessageGetOriginalDestination (helics_message_object message)
 
helics_time helicsMessageGetTime (helics_message_object message)
 
const char * helicsMessageGetString (helics_message_object message)
 
int helicsMessageGetMessageID (helics_message_object message)
 
helics_bool helicsMessageCheckFlag (helics_message_object message, int flag)
 
int helicsMessageGetRawDataSize (helics_message_object message)
 
void helicsMessageGetRawData (helics_message_object message, void *data, int maxMessageLength, int *actualSize, helics_error *err)
 
void * helicsMessageGetRawDataPointer (helics_message_object message)
 
helics_bool helicsMessageIsValid (helics_message_object message)
 
void helicsMessageSetSource (helics_message_object message, const char *src, helics_error *err)
 
void helicsMessageSetDestination (helics_message_object message, const char *dst, helics_error *err)
 
void helicsMessageSetOriginalSource (helics_message_object message, const char *src, helics_error *err)
 
void helicsMessageSetOriginalDestination (helics_message_object message, const char *dst, helics_error *err)
 
void helicsMessageSetTime (helics_message_object message, helics_time time, helics_error *err)
 
void helicsMessageResize (helics_message_object message, int newSize, helics_error *err)
 
void helicsMessageReserve (helics_message_object message, int reserveSize, helics_error *err)
 
void helicsMessageSetMessageID (helics_message_object message, int32_t messageID, helics_error *err)
 
void helicsMessageClearFlags (helics_message_object message)
 
void helicsMessageSetFlagOption (helics_message_object message, int flag, helics_bool flagValue, helics_error *err)
 
void helicsMessageSetString (helics_message_object message, const char *str, helics_error *err)
 
void helicsMessageSetData (helics_message_object message, const void *data, int inputDataLength, helics_error *err)
 
void helicsMessageAppendData (helics_message_object message, const void *data, int inputDataLength, helics_error *err)
 
void helicsMessageCopy (helics_message_object src_message, helics_message_object dst_message, helics_error *err)
 
helics_message_object helicsMessageClone (helics_message_object message, helics_error *err)
 
void helicsMessageFree (helics_message_object message)
 
void helicsMessageClear (helics_message_object message, helics_error *err)
 

Detailed Description

Functions for working with helics message envelopes.

Function Documentation

◆ helicsMessageAppendData()

void helicsMessageAppendData ( helics_message_object  message,
const void *  data,
int  inputDataLength,
helics_error err 
)

Append data to the payload.

Parameters
messageThe message object in question.
dataA string containing the message data to append.
inputDataLengthThe length of the data to input. @forcpponly
[in,out]errAn error object to fill out in case of an error. @endforcpponly

Referenced by helicscpp::Message::append().

◆ helicsMessageCheckFlag()

helics_bool helicsMessageCheckFlag ( helics_message_object  message,
int  flag 
)

Check if a flag is set on a message.

Parameters
messageThe message object in question.
flagThe flag to check should be between [0,15].
Returns
The flags associated with a message.

Referenced by helicscpp::Message::checkFlag().

◆ helicsMessageClear()

void helicsMessageClear ( helics_message_object  message,
helics_error err 
)

Reset a message to empty state

Parameters
messageThe message object to copy from.

The message after this function will be empty, with no source or destination @forcpponly

Parameters
[in,out]errAn error object to fill out in case of an error. @endforcpponly

◆ helicsMessageClearFlags()

void helicsMessageClearFlags ( helics_message_object  message)

Clear the flags of a message.

Parameters
messageThe message object in question

◆ helicsMessageClone()

helics_message_object helicsMessageClone ( helics_message_object  message,
helics_error err 
)

Clone a message object.

Parameters
messageThe message object to copy from. @forcpponly
[in,out]errAn error object to fill out in case of an error. @endforcpponly

Referenced by helicscpp::Message::operator=().

◆ helicsMessageCopy()

void helicsMessageCopy ( helics_message_object  src_message,
helics_message_object  dst_message,
helics_error err 
)

Copy a message object.

Parameters
src_messageThe message object to copy from.
dst_messageThe message object to copy to. @forcpponly
[in,out]errAn error object to fill out in case of an error. @endforcpponly

◆ helicsMessageFree()

void helicsMessageFree ( helics_message_object  message)

Free a message object from memory

Parameters
messageThe message object to copy from.

memory for message is managed so not using this function does not create memory leaks, this is an indication to the system that the memory for this message is done being used and can be reused for a new message. helicsFederateClearMessages() can also be used to clear up all stored messages at once

Referenced by helicscpp::Message::newMessageObject(), helicscpp::Message::operator=(), and helicscpp::Message::~Message().

◆ helicsMessageGetDestination()

const char* helicsMessageGetDestination ( helics_message_object  message)

Get the destination endpoint of a message.

Parameters
messageThe message object in question.
Returns
A string with the destination endpoint.

Referenced by helicscpp::Message::destination().

◆ helicsMessageGetMessageID()

int helicsMessageGetMessageID ( helics_message_object  message)

Get the messageID of a message.

Parameters
messageThe message object in question.
Returns
The messageID.

Referenced by helicscpp::Message::messageID().

◆ helicsMessageGetOriginalDestination()

const char* helicsMessageGetOriginalDestination ( helics_message_object  message)

Get the original destination endpoint of a message, the destination may have been modified by filters or other actions.

Parameters
messageThe message object in question.
Returns
A string with the original destination of a message.

Referenced by helicscpp::Message::originalDestination().

◆ helicsMessageGetOriginalSource()

const char* helicsMessageGetOriginalSource ( helics_message_object  message)

Get the original source endpoint of a message, the source may have been modified by filters or other actions.

Parameters
messageThe message object in question.
Returns
A string with the source of a message.

Referenced by helicscpp::Message::originalSource().

◆ helicsMessageGetRawData()

void helicsMessageGetRawData ( helics_message_object  message,
void *  data,
int  maxMessageLength,
int *  actualSize,
helics_error err 
)

Get the raw data for a message object.

Parameters
messageA message object to get the data for. @forcpponly
[out]dataThe memory location of the data.
maxMessageLengthThe maximum size of information that data can hold.
[out]actualSizeThe actual length of data copied to data.
[in,out]errA pointer to an error object for catching errors. @endforcpponly

@beginPythonOnly

Returns
Raw string data. @endPythonOnly

◆ helicsMessageGetRawDataPointer()

void* helicsMessageGetRawDataPointer ( helics_message_object  message)

Get a pointer to the raw data of a message.

Parameters
messageA message object to get the data for.
Returns
A pointer to the raw data in memory, the pointer may be NULL if the message is not a valid message.

Referenced by helicscpp::Message::data().

◆ helicsMessageGetRawDataSize()

int helicsMessageGetRawDataSize ( helics_message_object  message)

Get the size of the data payload in bytes.

Parameters
messageThe message object in question.
Returns
The size of the data payload.

Referenced by helicscpp::Message::size().

◆ helicsMessageGetSource()

const char* helicsMessageGetSource ( helics_message_object  message)

Get the source endpoint of a message.

Parameters
messageThe message object in question.
Returns
A string with the source endpoint.

Referenced by helicscpp::Message::source().

◆ helicsMessageGetString()

const char* helicsMessageGetString ( helics_message_object  message)

Get the payload of a message as a string.

Parameters
messageThe message object in question.
Returns
A string representing the payload of a message.

Referenced by helicscpp::Message::c_str().

◆ helicsMessageGetTime()

helics_time helicsMessageGetTime ( helics_message_object  message)

Get the helics time associated with a message.

Parameters
messageThe message object in question.
Returns
The time associated with a message.

Referenced by helicscpp::Message::time().

◆ helicsMessageIsValid()

helics_bool helicsMessageIsValid ( helics_message_object  message)

A check if the message contains a valid payload.

Parameters
messageThe message object in question.
Returns
helics_true if the message contains a payload.

Referenced by helicscpp::Message::isValid().

◆ helicsMessageReserve()

void helicsMessageReserve ( helics_message_object  message,
int  reserveSize,
helics_error err 
)

Reserve space in a buffer but don't actually resize.

The message data buffer will be reserved but not resized.

Parameters
messageThe message object in question.
reserveSizeThe number of bytes to reserve in the message object. @forcpponly
[in,out]errAn error object to fill out in case of an error. @endforcpponly

Referenced by helicscpp::Message::reserve().

◆ helicsMessageResize()

void helicsMessageResize ( helics_message_object  message,
int  newSize,
helics_error err 
)

Resize the data buffer for a message.

The message data buffer will be resized. There are no guarantees on what is in the buffer in newly allocated space. If the allocated space is not sufficient new allocations will occur.

Parameters
messageThe message object in question.
newSizeThe new size in bytes of the buffer. @forcpponly
[in,out]errAn error object to fill out in case of an error. @endforcpponly

Referenced by helicscpp::Message::resize().

◆ helicsMessageSetData()

void helicsMessageSetData ( helics_message_object  message,
const void *  data,
int  inputDataLength,
helics_error err 
)

Set the data payload of a message as raw data.

Parameters
messageThe message object in question.
dataA string containing the message data.
inputDataLengthThe length of the data to input. @forcpponly
[in,out]errAn error object to fill out in case of an error. @endforcpponly

Referenced by helicscpp::Message::data().

◆ helicsMessageSetDestination()

void helicsMessageSetDestination ( helics_message_object  message,
const char *  dst,
helics_error err 
)

Set the destination of a message.

Parameters
messageThe message object in question.
dstA string containing the new destination. @forcpponly
[in,out]errAn error object to fill out in case of an error. @endforcpponly

Referenced by helicscpp::Message::destination().

◆ helicsMessageSetFlagOption()

void helicsMessageSetFlagOption ( helics_message_object  message,
int  flag,
helics_bool  flagValue,
helics_error err 
)

Set a flag on a message.

Parameters
messageThe message object in question.
flagAn index of a flag to set on the message.
flagValueThe desired value of the flag. @forcpponly
[in,out]errAn error object to fill out in case of an error. @endforcpponly

Referenced by helicscpp::Message::setFlag().

◆ helicsMessageSetMessageID()

void helicsMessageSetMessageID ( helics_message_object  message,
int32_t  messageID,
helics_error err 
)

Set the message ID for the message.

Normally this is not needed and the core of HELICS will adjust as needed.

Parameters
messageThe message object in question.
messageIDA new message ID. @forcpponly
[in,out]errAn error object to fill out in case of an error. @endforcpponly

Referenced by helicscpp::Message::messageID().

◆ helicsMessageSetOriginalDestination()

void helicsMessageSetOriginalDestination ( helics_message_object  message,
const char *  dst,
helics_error err 
)

Set the original destination of a message.

Parameters
messageThe message object in question.
dstA string containing the new original source. @forcpponly
[in,out]errAn error object to fill out in case of an error. @endforcpponly

Referenced by helicscpp::Message::originalDestination().

◆ helicsMessageSetOriginalSource()

void helicsMessageSetOriginalSource ( helics_message_object  message,
const char *  src,
helics_error err 
)

Set the original source of a message.

Parameters
messageThe message object in question.
srcA string containing the new original source. @forcpponly
[in,out]errAn error object to fill out in case of an error. @endforcpponly

Referenced by helicscpp::Message::originalSource().

◆ helicsMessageSetSource()

void helicsMessageSetSource ( helics_message_object  message,
const char *  src,
helics_error err 
)

Set the source of a message.

Parameters
messageThe message object in question.
srcA string containing the source. @forcpponly
[in,out]errAn error object to fill out in case of an error. @endforcpponly

Referenced by helicscpp::Message::source().

◆ helicsMessageSetString()

void helicsMessageSetString ( helics_message_object  message,
const char *  str,
helics_error err 
)

Set the data payload of a message as a string.

Parameters
messageThe message object in question.
strA string containing the message data. @forcpponly
[in,out]errAn error object to fill out in case of an error. @endforcpponly

Referenced by helicscpp::Message::data().

◆ helicsMessageSetTime()

void helicsMessageSetTime ( helics_message_object  message,
helics_time  time,
helics_error err 
)

Set the delivery time for a message.

Parameters
messageThe message object in question.
timeThe time the message should be delivered. @forcpponly
[in,out]errAn error object to fill out in case of an error. @endforcpponly

Referenced by helicscpp::Message::time().