7#ifndef HELICS_CPP98_INPUT_HPP_
8#define HELICS_CPP98_INPUT_HPP_
11#include "DataBuffer.hpp"
12#include "helics/helics.h"
13#include "helicsExceptions.hpp"
26 Input() HELICS_NOTHROW: inp(HELICS_NULL_POINTER) {}
28 Input(
const Input& inputs) HELICS_NOTHROW: inp(inputs.inp) {}
77 static_cast<int>(data.size()),
82# pragma GCC diagnostic push
83# pragma GCC diagnostic ignored "-Wstrict-aliasing"
87 void setDefault(
const std::vector<std::complex<double> >& data)
90 reinterpret_cast<const double*
>(data.data()),
91 static_cast<int>(data.size()),
95# pragma GCC diagnostic pop
99 HELICS_NODISCARD
int getBytes(std::vector<char>& data)
104 inp, data.data(),
static_cast<int>(data.size()), &size, HELICS_IGNORE_ERROR);
123 result.resize(
static_cast<size_t>(size) + 1);
126 if (!(result.empty()) && (result[
static_cast<size_t>(size) - 1] ==
'\0')) {
127 result.resize(
static_cast<size_t>(size) - 1);
138 str.resize(
static_cast<size_t>(size) + 1);
141 if (!(str.empty()) && (str[
static_cast<size_t>(size) - 1] ==
'\0')) {
142 str.resize(
static_cast<size_t>(size) - 1);
153 name.resize(
static_cast<size_t>(size) + 1);
175 std::complex<double> result(hc.real, hc.imag);
192 data.resize(actualSize);
207# pragma GCC diagnostic push
208# pragma GCC diagnostic ignored "-Wstrict-aliasing"
215 data.resize(actualSize);
217 reinterpret_cast<double*
>(data.data()),
223# pragma GCC diagnostic pop
267 HELICS_NODISCARD
const char*
getTag(
const std::string& tagname)
const
272 void setTag(
const std::string& tagname,
const std::string& tagvalue)
276 void setOption(int32_t option, int32_t value = 1)
280 HELICS_NODISCARD int32_t getOption(int32_t option) {
return helicsInputGetOption(inp, option); }
HelicsTime helicsInputLastUpdateTime(HelicsInput ipt)
Definition ValueFederateExport.cpp:1637
HelicsBool helicsInputIsUpdated(HelicsInput ipt)
Definition ValueFederateExport.cpp:1626
void helicsInputClearUpdate(HelicsInput ipt)
Definition ValueFederateExport.cpp:1654
void * HelicsInput
Definition api-data.h:26
double HelicsTime
Definition api-data.h:106
int HelicsBool
Definition api-data.h:120
const HelicsBool HELICS_FALSE
Definition api-data.h:123
const HelicsBool HELICS_TRUE
Definition api-data.h:122
Definition DataBuffer.hpp:18
Definition helicsExceptions.hpp:38
void helicsInputSetDefaultBytes(HelicsInput ipt, const void *data, int inputDataLength, HelicsError *err)
Definition ValueFederateExport.cpp:1092
void helicsInputSetDefaultVector(HelicsInput ipt, const double *vectorInput, int vectorLength, HelicsError *err)
Definition ValueFederateExport.cpp:1185
void helicsInputSetDefaultInteger(HelicsInput ipt, int64_t val, HelicsError *err)
Definition ValueFederateExport.cpp:1128
void helicsInputSetDefaultComplex(HelicsInput ipt, double real, double imag, HelicsError *err)
Definition ValueFederateExport.cpp:1175
void helicsInputSetDefaultComplexVector(HelicsInput ipt, const double *vectorInput, int vectorLength, HelicsError *err)
Definition ValueFederateExport.cpp:1205
void helicsInputSetDefaultDouble(HelicsInput ipt, double val, HelicsError *err)
Definition ValueFederateExport.cpp:1146
void helicsInputSetDefaultString(HelicsInput ipt, const char *defaultString, HelicsError *err)
Definition ValueFederateExport.cpp:1112
void helicsInputSetDefaultBoolean(HelicsInput ipt, HelicsBool val, HelicsError *err)
Definition ValueFederateExport.cpp:1137
void helicsInputGetString(HelicsInput ipt, char *outputString, int maxStringLength, int *actualLength, HelicsError *err)
Definition ValueFederateExport.cpp:813
void helicsInputGetNamedPoint(HelicsInput ipt, char *outputString, int maxStringLength, int *actualLength, double *val, HelicsError *err)
Definition ValueFederateExport.cpp:1051
int helicsInputGetStringSize(HelicsInput ipt)
Definition ValueFederateExport.cpp:981
void helicsInputGetBytes(HelicsInput ipt, void *data, int maxDataLength, int *actualSize, HelicsError *err)
Definition ValueFederateExport.cpp:779
void helicsInputGetComplexVector(HelicsInput ipt, double data[], int maxLength, int *actualSize, HelicsError *err)
Definition ValueFederateExport.cpp:1024
HelicsBool helicsInputGetBoolean(HelicsInput ipt, HelicsError *err)
Definition ValueFederateExport.cpp:854
HelicsDataBuffer helicsInputGetDataBuffer(HelicsInput inp, HelicsError *err)
Definition ValueFederateExport.cpp:768
int helicsInputGetVectorSize(HelicsInput ipt)
Definition ValueFederateExport.cpp:965
int64_t helicsInputGetInteger(HelicsInput ipt, HelicsError *err)
Definition ValueFederateExport.cpp:839
int helicsInputGetByteCount(HelicsInput ipt)
Definition ValueFederateExport.cpp:749
HelicsComplex helicsInputGetComplexObject(HelicsInput ipt, HelicsError *err)
Definition ValueFederateExport.cpp:944
void helicsInputGetVector(HelicsInput ipt, double data[], int maxLength, int *actualSize, HelicsError *err)
Definition ValueFederateExport.cpp:997
double helicsInputGetDouble(HelicsInput ipt, HelicsError *err)
Definition ValueFederateExport.cpp:872
void helicsInputAddTarget(HelicsInput ipt, const char *target, HelicsError *err)
Definition ValueFederateExport.cpp:739
HelicsBool helicsInputIsValid(HelicsInput ipt)
Definition ValueFederateExport.cpp:730
Definition cpp98/Broker.hpp:18
Definition api-data.h:168