![]() |
helics
3.4.0
|
the main namespace for the helics co-simulation library User functions will be in the helics namespace with internal functions possible in a lower level namespace More...
Namespaces | |
BrokerFactory | |
CoreFactory | |
Typedefs | |
using | defV = std::variant< double, int64_t, std::string, std::complex< double >, std::vector< double >, std::vector< std::complex< double > >, NamedPoint > |
using | IdentifierType = std::uint32_t |
specify the underlying type used in the identifiers | |
using | PublicationId = IdentifierId< IdentifierType, Identifiers::PUBLICATION, invalid_id_value > |
using | InputId = IdentifierId< IdentifierType, Identifiers::INPUT, invalid_id_value > |
using | QueryId = IdentifierId< IdentifierType, Identifiers::QUERY, invalid_id_value > |
template<typename T > | |
using | remove_cv_ref = std::remove_cv_t< std::remove_reference_t< T > > |
Helper template to remove const volatile references. | |
template<typename X > | |
using | typeCategory = std::conditional_t< helicsType< remove_cv_ref< X > >() !=DataType::HELICS_CUSTOM, std::integral_constant< int, primaryType >, std::conditional_t< isConvertableType< remove_cv_ref< X > >(), std::integral_constant< int, convertibleType >, std::integral_constant< int, nonConvertibleType > >> |
using | dvalue = std::variant< double, std::string > |
using | portData = std::vector< std::tuple< int, bool, std::shared_ptr< Broker > >> |
using | activeProtector = gmlc::libguarded::guarded< std::pair< bool, bool > > |
using | Time = TimeRepresentation< count_time< 9 > > |
using | IdentifierBaseType = int32_t |
using | InterfaceTypes = gmlc::networking::InterfaceTypes |
Enumerations | |
enum | RandomDistributions : int { CONSTANT, UNIFORM, BERNOULLI, BINOMIAL, GEOMETRIC, POISSON, EXPONENTIAL, GAMMA, WEIBULL, EXTREME_VALUE, NORMAL, LOGNORMAL, CHI_SQUARED, CAUCHY, FISHER_F, STUDENT_T } |
enum | FilterTypes { CUSTOM = HELICS_FILTER_TYPE_CUSTOM, DELAY = HELICS_FILTER_TYPE_DELAY, RANDOM_DELAY = HELICS_FILTER_TYPE_RANDOM_DELAY, RANDOM_DROP = HELICS_FILTER_TYPE_RANDOM_DROP, REROUTE = HELICS_FILTER_TYPE_REROUTE, CLONE = HELICS_FILTER_TYPE_CLONE, FIREWALL = HELICS_FILTER_TYPE_FIREWALL, UNRECOGNIZED = 7 } |
enum | TypeLocation : decltype(std::declval< defV >().index()) { double_loc = 0U, int_loc = 1U, string_loc = 2U, complex_loc = 3U, vector_loc = 4U, complex_vector_loc = 5U, named_point_loc = 6U } |
enum | Identifiers : char { PUBLICATION = 'p', INPUT = 'i', FILTER = 'f', ENDPOINT = 'e', QUERY = 'q', TRANSLATORS = 't' } |
enum | InterfaceVisibility { LOCAL, GLOBAL } |
enum | DataType : int { HELICS_UNKNOWN = HELICS_DATA_TYPE_UNKNOWN, HELICS_STRING = HELICS_DATA_TYPE_STRING, HELICS_DOUBLE = HELICS_DATA_TYPE_DOUBLE, HELICS_INT = HELICS_DATA_TYPE_INT, HELICS_COMPLEX = HELICS_DATA_TYPE_COMPLEX, HELICS_VECTOR = HELICS_DATA_TYPE_VECTOR, HELICS_COMPLEX_VECTOR = HELICS_DATA_TYPE_COMPLEX_VECTOR, HELICS_NAMED_POINT = HELICS_DATA_TYPE_NAMED_POINT, HELICS_BOOL = HELICS_DATA_TYPE_BOOLEAN, HELICS_TIME = HELICS_DATA_TYPE_TIME, HELICS_CHAR = HELICS_DATA_TYPE_CHAR, HELICS_CUSTOM = HELICS_DATA_TYPE_RAW, HELICS_ANY = HELICS_DATA_TYPE_ANY, HELICS_JSON = HELICS_DATA_TYPE_JSON, HELICS_MULTI = HELICS_DATA_TYPE_MULTI } |
enum | MultiInputHandlingMethod : uint16_t { NO_OP = HELICS_MULTI_INPUT_NO_OP, VECTORIZE_OPERATION = HELICS_MULTI_INPUT_VECTORIZE_OPERATION, AND_OPERATION = HELICS_MULTI_INPUT_AND_OPERATION, OR_OPERATION = HELICS_MULTI_INPUT_OR_OPERATION, SUM_OPERATION = HELICS_MULTI_INPUT_SUM_OPERATION, DIFF_OPERATION = HELICS_MULTI_INPUT_DIFF_OPERATION, MAX_OPERATION = HELICS_MULTI_INPUT_MAX_OPERATION, MIN_OPERATION = HELICS_MULTI_INPUT_MIN_OPERATION, AVERAGE_OPERATION = HELICS_MULTI_INPUT_AVERAGE_OPERATION } |
enum | TranslatorTypes : std::int32_t { CUSTOM = HELICS_TRANSLATOR_TYPE_CUSTOM, CUSTOM = HELICS_FILTER_TYPE_CUSTOM, JSON = HELICS_TRANSLATOR_TYPE_JSON, BINARY = HELICS_TRANSLATOR_TYPE_BINARY, UNRECOGNIZED = 7, UNRECOGNIZED = 7 } |
enum | JsonErrorCodes : std::int32_t { BAD_REQUEST = 400, FORBIDDEN = 403, NOT_FOUND = 404, METHOD_NOT_ALLOWED = 405, TIMEOUT = 408, DISCONNECTED = 410, INTERNAL_ERROR = 500, NOT_IMPLEMENTED = 501, BAD_GATEWAY = 502, SERVICE_UNAVAILABLE = 503, GATEWAY_TIMEOUT = 504 } |
enum | LogLevels : int { DUMPLOG = HELICS_LOG_LEVEL_DUMPLOG, NO_PRINT = HELICS_LOG_LEVEL_NO_PRINT, ERROR_LEVEL = HELICS_LOG_LEVEL_ERROR, PROFILING = HELICS_LOG_LEVEL_PROFILING, WARNING = HELICS_LOG_LEVEL_WARNING, SUMMARY = HELICS_LOG_LEVEL_SUMMARY, CONNECTIONS, INTERFACES, TIMING = HELICS_LOG_LEVEL_TIMING, DATA = HELICS_LOG_LEVEL_DATA, DEBUG = HELICS_LOG_LEVEL_DEBUG, TRACE = HELICS_LOG_LEVEL_TRACE, FED = 99999 } |
enum | CommandErrorCodes : int { lost_server_connection_code = -5, connection_error_code = -2, already_init_error_code = 5, duplicate_federate_name_error_code = 6, duplicate_broker_name_error_code = 7, mismatch_broker_key_error_code = 9, max_federate_count_exceeded = 11, max_broker_count_exceeded = 13, broker_terminating = 14, multiple_wait_for_current_time_flags = 15, duplicate_federate_id = 17 } |
enum | OperatingState : std::uint8_t { OPERATING = 0, ERROR_STATE = 5, DISCONNECTED = 10 } |
enum | ConnectionState : std::uint8_t { CONNECTED = 0, INIT_REQUESTED = 1, OPERATING = 2, ERROR_STATE = 40, REQUEST_DISCONNECT = 48, DISCONNECTED = 50 } |
enum | FederateStates : std::uint8_t { CREATED, FederateStates::INITIALIZING, FederateStates::EXECUTING, FederateStates::TERMINATING, FederateStates::ERRORED, FederateStates::FINISHED, FederateStates::UNKNOWN } |
enum | CoreThreading : std::uint8_t { CoreThreading::DEFAULT = HELICS_CORE_TYPE_DEFAULT, CoreThreading::MULTI = HELICS_FLAG_MULTI_THREAD_CORE, CoreThreading::SINGLE = HELICS_FLAG_SINGLE_THREAD_CORE } |
enum | CoreType : int { CoreType::DEFAULT = HELICS_CORE_TYPE_DEFAULT, CoreType::ZMQ = HELICS_CORE_TYPE_ZMQ, CoreType::MPI = HELICS_CORE_TYPE_MPI, CoreType::TEST = HELICS_CORE_TYPE_TEST, CoreType::INTERPROCESS = HELICS_CORE_TYPE_INTERPROCESS, CoreType::IPC = HELICS_CORE_TYPE_IPC, CoreType::TCP = HELICS_CORE_TYPE_TCP, CoreType::TCP_SS = HELICS_CORE_TYPE_TCP_SS, CoreType::UDP = HELICS_CORE_TYPE_UDP, CoreType::NNG = HELICS_CORE_TYPE_NNG, CoreType::ZMQ_SS = HELICS_CORE_TYPE_ZMQ_SS, CoreType::HTTP = HELICS_CORE_TYPE_HTTP, CoreType::WEBSOCKET = HELICS_CORE_TYPE_WEBSOCKET, CoreType::INPROC = HELICS_CORE_TYPE_INPROC, CoreType::NULLCORE = HELICS_CORE_TYPE_NULL, CoreType::EMPTY = HELICS_CORE_TYPE_EMPTY, CoreType::UNRECOGNIZED = 22, CoreType::MULTI = 45 } |
enum | MessageProcessingResult : std::int8_t { MessageProcessingResult::CONTINUE_PROCESSING = -2, MessageProcessingResult::DELAY_MESSAGE = -1, MessageProcessingResult::NEXT_STEP = 0, MessageProcessingResult::ITERATING = 2, MessageProcessingResult::HALTED = 3, MessageProcessingResult::USER_RETURN = 5, MessageProcessingResult::ERROR_RESULT = 7, REPROCESS_MESSAGE = 8, BUSY = 10 } |
enum | IterationResult : signed char { IterationResult::NEXT_STEP = 0, IterationResult::ITERATING = 2, IterationResult::HALTED = 3, IterationResult::ERROR_RESULT = 7 } |
enum | IterationRequest : signed char { IterationRequest::NO_ITERATIONS = 0, IterationRequest::FORCE_ITERATION = 1, IterationRequest::ITERATE_IF_NEEDED = 2, IterationRequest::HALT_OPERATIONS = 3, IterationRequest::ERROR_CONDITION = 7 } |
enum | InterfaceType : char { UNKNOWN = 'u', InterfaceType::PUBLICATION = 'p', InterfaceType::INPUT = 'i', InterfaceType::ENDPOINT = 'e', InterfaceType::FILTER = 'f', InterfaceType::TRANSLATOR = 't', InterfaceType::SINK = 's' } |
enum | TimeSynchronizationMethod : uint8_t { DISTRIBUTED = 0, GLOBAL = 1, ASYNC = 2 } |
enumeration of possible time coordination methods | |
enum | GeneralFlags : uint16_t { error_flag = 4, indicator_flag = 5 } |
enum | TimingFlags : uint16_t { iteration_requested_flag = 0, non_granting_flag = 7, interrupted_flag = 8, delayed_timing_flag = 10, parent_flag = 13, child_flag = 14 } |
flags used in timing messages More... | |
enum | InterfaceFlags : uint16_t { buffer_data_flag = 0, destination_target = 1, required_flag = 2, single_connection_flag = 3, only_update_on_change_flag = 6, mapped_flag = 7, optional_flag = 8, only_transmit_on_change_flag = 12, nameless_interface_flag = 15 } |
flags used on handles More... | |
enum | EndpointFlags { targeted_flag = 10, has_source_filter_flag = 11, source_only_flag = 13, receive_only_flag = 14 } |
enumeration of endpoint specific flags More... | |
enum | FilterFlags { clone_flag = 9, has_dest_filter_flag = 13, has_non_cloning_dest_filter_flag = 14 } |
enumeration of filter specific flags More... | |
enum | ConnectionFlags : uint16_t { core_flag = 3, global_timing_flag = 5, use_json_serialization_flag = 6, async_timing_flag = 7, observer_flag = 8, dynamic_join_flag = 9, disconnected_flag = 12, test_connection_flag = 13, slow_responding_flag = 14, non_counting_flag = 15 } |
flags used when connecting a federate/core/broker to a federation More... | |
enum | MessageFlags : uint16_t { filter_processing_required_flag = 7, user_custom_message_flag1 = 10, destination_processing_flag = 11, user_custom_message_flag2 = 13, user_custom_message_flag3 = 14, empty_flag = 15 } |
flags used for messages More... | |
enum | OperationFlags : uint16_t { cancel_flag = 13 } |
general flags used for other operations More... | |
enum | Subqueries : std::uint16_t { GENERAL_QUERY = 0, FEDERATE_MAP = 1, CURRENT_TIME_MAP = 2, DEPENDENCY_GRAPH = 3, DATA_FLOW_GRAPH = 4, VERSION_ALL = 5, GLOBAL_STATE = 6, GLOBAL_TIME_DEBUGGING = 7, GLOBAL_FLUSH = 8, GLOBAL_STATUS = 9, BARRIERS = 11 } |
enumeration of subqueries that cascade and need multiple levels of processing | |
enum | QueryReuse : std::uint8_t { ENABLED = 0, DISABLED = 1 } |
Enumeration of if query result is reusable. | |
enum | TimeState : std::uint8_t { initialized = 0, exec_requested_require_iteration = 1, exec_requested_iterative = 2, exec_requested = 3, time_granted = 5, time_requested_require_iteration = 6, time_requested_iterative = 7, time_requested = 8, error = 10 } |
enum | ConnectionType : std::uint8_t { INDEPENDENT = 0, PARENT = 1, CHILD = 2, SELF = 3, NONE = 4 } |
enum | TimeProcessingResult : std::uint8_t { TimeProcessingResult::NOT_PROCESSED = 0, TimeProcessingResult::PROCESSED = 1, TimeProcessingResult::PROCESSED_AND_CHECK = 2, TimeProcessingResult::PROCESSED_NEW_REQUEST = 3, TimeProcessingResult::DELAY_PROCESSING = 5 } |
enum | GrantDelayMode : std::uint8_t { NONE = 0, INTERRUPTED = 1, WAITING = 2 } |
enum | FederateType : int { GENERIC, VALUE, MESSAGE, COMBINATION, CALLBACK, INVALID } |
Functions | |
template<> | |
const char * | typeNameString< std::vector< SmallBuffer > > () |
void | cleanupHelicsLibrary () |
int | getPropertyIndex (std::string val) |
int | getFlagIndex (std::string val) |
int | getOptionIndex (std::string val) |
int | getOptionValue (std::string val) |
FederateInfo | loadFederateInfo (const std::string &configString) |
std::string | generateFullCoreInitString (const FederateInfo &fi) |
double | randDouble (RandomDistributions dist, double p1, double p2) |
std::string | newDestGeneration (const std::string &src, const std::string &dest, std::string formula) |
FilterTypes | filterTypeFromString (std::string_view filterType) noexcept |
void | addOperations (Filter *filt, FilterTypes type, Core *) |
Filter & | make_filter (FilterTypes type, Federate *mFed, std::string_view name) |
Filter & | make_filter (InterfaceVisibility locality, FilterTypes type, Federate *mFed, std::string_view name) |
std::unique_ptr< Filter > | make_filter (FilterTypes type, Core *cr, std::string_view name) |
std::unique_ptr< Filter > | make_filter (FilterTypes type, CoreApp &cr, std::string_view name) |
CloningFilter & | make_cloning_filter (FilterTypes type, Federate *mFed, std::string_view delivery, std::string_view name) |
CloningFilter & | make_cloning_filter (InterfaceVisibility locality, FilterTypes type, Federate *mFed, std::string_view delivery, std::string_view name) |
std::unique_ptr< CloningFilter > | make_cloning_filter (FilterTypes type, Core *cr, std::string_view delivery, std::string_view name) |
std::unique_ptr< CloningFilter > | make_cloning_filter (FilterTypes type, CoreApp &cr, std::string_view delivery, std::string_view name) |
bool | changeDetected (const defV &prevValue, const std::string &val, double) |
bool | changeDetected (const defV &prevValue, std::string_view val, double) |
bool | changeDetected (const defV &prevValue, bool val, double) |
bool | changeDetected (const defV &prevValue, const std::vector< double > &val, double deltaV) |
bool | changeDetected (const defV &prevValue, const std::vector< std::complex< double >> &val, double deltaV) |
bool | changeDetected (const defV &prevValue, const double *vals, size_t size, double deltaV) |
bool | changeDetected (const defV &prevValue, const std::complex< double > &val, double deltaV) |
bool | changeDetected (const defV &prevValue, double val, double deltaV) |
bool | changeDetected (const defV &prevValue, Time val, double deltaV) |
bool | changeDetected (const defV &prevValue, int64_t val, double deltaV) |
bool | changeDetected (const defV &prevValue, const NamedPoint &val, double deltaV) |
void | valueExtract (const defV &dv, std::string &val) |
void | valueExtract (const defV &dv, std::complex< double > &val) |
void | valueExtract (const defV &dv, std::vector< double > &val) |
void | valueExtract (const defV &dv, std::vector< std::complex< double >> &val) |
void | valueExtract (const defV &dv, NamedPoint &val) |
void | valueExtract (const defV &dv, Time &val) |
void | valueExtract (const defV &dv, char &val) |
void | valueExtract (const defV &dv, bool &val) |
defV | readJsonValue (const data_view &dv) |
void | valueExtract (const data_view &dv, DataType baseType, std::string &val) |
void | valueExtract (const data_view &dv, DataType baseType, std::vector< double > &val) |
void | valueExtract (const data_view &dv, DataType baseType, std::vector< std::complex< double >> &val) |
void | valueExtract (const data_view &dv, DataType baseType, std::complex< double > &val) |
void | valueExtract (const data_view &dv, DataType baseType, NamedPoint &val) |
void | valueExtract (const data_view &dv, DataType baseType, Time &val) |
void | valueExtract (const data_view &dv, DataType baseType, bool &val) |
void | valueExtract (const data_view &dv, DataType baseType, char &val) |
void | valueExtract (const data_view &dv, DataType baseType, defV &val) |
void | valueConvert (defV &val, DataType newType) |
SmallBuffer | typeConvertDefV (DataType type, const defV &val) |
SmallBuffer | typeConvertDefV (const defV &val) |
int64_t | make_valid (bool obj) |
int64_t | make_valid (uint64_t val) |
int64_t | make_valid (int16_t val) |
int64_t | make_valid (uint16_t val) |
int64_t | make_valid (char val) |
int64_t | make_valid (unsigned char val) |
int64_t | make_valid (int32_t val) |
int64_t | make_valid (uint32_t val) |
int64_t | make_valid (Time val) |
double | make_valid (float val) |
std::complex< double > | make_valid (const std::complex< float > &val) |
template<class X > | |
decltype(auto) | make_valid (X &&obj) |
template<class X > | |
std::enable_if_t< std::is_arithmetic< X >::value &&(!std::is_same< X, char >::value)> | valueExtract (const defV &dv, X &val) |
template<class X > | |
std::enable_if_t< std::is_arithmetic< X >::value &&(!std::is_same< X, char >::value)> | valueExtract (const data_view &dv, DataType baseType, X &val) |
const std::string & | typeNameStringRef (DataType type) |
double | vectorNorm (const std::vector< double > &vec) |
double | vectorNorm (const double *vec, std::size_t size) |
double | vectorNorm (const std::vector< std::complex< double >> &vec) |
std::string | helicsComplexString (double real, double imag) |
std::string | helicsComplexString (std::complex< double > val) |
DataType | getTypeFromString (std::string_view typeName) |
std::string_view | getCleanedTypeName (std::string_view typeName) |
const std::regex | creg (R"(([+-]?(\d+(\.\d+)?|\.\d+)([eE][+-]?\d+)?)\s*([+-]\s*(\d+(\.\d+)?|\.\d+)([eE][+-]?\d+)?)[ji]*)") |
std::complex< double > | helicsGetComplex (std::string_view val) |
std::string | helicsIntString (std::int64_t val) |
std::string | helicsDoubleString (double val) |
std::string | helicsVectorString (const std::vector< double > &val) |
std::string | helicsVectorString (const double *vals, size_t size) |
std::string | helicsComplexVectorString (const std::vector< std::complex< double >> &val) |
std::string | helicsNamedPointString (const NamedPoint &point) |
std::string | helicsNamedPointString (std::string_view pointName, double val) |
std::vector< double > | helicsGetVector (std::string_view val) |
std::vector< std::complex< double > > | helicsGetComplexVector (std::string_view val) |
NamedPoint | helicsGetNamedPoint (std::string_view val) |
std::complex< double > | getComplexFromString (std::string_view val) |
std::int64_t | getIntFromString (std::string_view val) |
double | getDoubleFromString (std::string_view val) |
void | helicsGetVector (std::string_view val, std::vector< double > &data) |
void | helicsGetComplexVector (std::string_view val, std::vector< std::complex< double >> &data) |
bool | helicsBoolValue (std::string_view val) |
SmallBuffer | emptyBlock (DataType outputType, DataType inputType=DataType::HELICS_ANY) |
SmallBuffer | typeConvert (DataType type, double val) |
SmallBuffer | typeConvert (DataType type, int64_t val) |
SmallBuffer | typeConvert (DataType type, std::string_view val) |
SmallBuffer | typeConvert (DataType type, const std::vector< double > &val) |
SmallBuffer | typeConvert (DataType type, const double *vals, size_t size) |
SmallBuffer | typeConvertComplex (DataType type, const double *vals, size_t size) |
SmallBuffer | typeConvert (DataType type, const std::vector< std::complex< double >> &val) |
SmallBuffer | typeConvert (DataType type, const std::complex< double > &val) |
SmallBuffer | typeConvert (DataType type, const NamedPoint &val) |
SmallBuffer | typeConvert (DataType type, std::string_view str, double val) |
SmallBuffer | typeConvert (DataType type, bool val) |
SmallBuffer | typeConvert (DataType type, char val) |
SmallBuffer | typeConvert (DataType type, Time val) |
template<class X > | |
constexpr const char * | typeNameString () |
template<> | |
constexpr const char * | typeNameString< std::vector< std::string > > () |
template<> | |
constexpr const char * | typeNameString< std::vector< double > > () |
template<> | |
constexpr const char * | typeNameString< std::vector< std::complex< double > > > () |
template<> | |
constexpr const char * | typeNameString< double > () |
template<> | |
constexpr const char * | typeNameString< float > () |
template<> | |
constexpr const char * | typeNameString< bool > () |
template<> | |
constexpr const char * | typeNameString< char > () |
template<> | |
constexpr const char * | typeNameString< unsigned char > () |
template<> | |
constexpr const char * | typeNameString< std::int32_t > () |
template<> | |
constexpr const char * | typeNameString< std::uint32_t > () |
template<> | |
constexpr const char * | typeNameString< int64_t > () |
template<> | |
constexpr const char * | typeNameString< std::uint64_t > () |
template<> | |
constexpr const char * | typeNameString< std::complex< float > > () |
template<> | |
constexpr const char * | typeNameString< std::complex< double > > () |
template<> | |
constexpr const char * | typeNameString< std::string > () |
template<> | |
constexpr const char * | typeNameString< NamedPoint > () |
constexpr bool | isBytesType (DataType type) |
template<class X > | |
constexpr DataType | helicsType () |
template<> | |
constexpr DataType | helicsType< int64_t > () |
template<> | |
constexpr DataType | helicsType< bool > () |
template<> | |
constexpr DataType | helicsType< std::string > () |
template<> | |
constexpr DataType | helicsType< NamedPoint > () |
template<> | |
constexpr DataType | helicsType< double > () |
template<> | |
constexpr DataType | helicsType< Time > () |
template<> | |
constexpr DataType | helicsType< std::complex< double > > () |
template<> | |
constexpr DataType | helicsType< std::vector< double > > () |
template<> | |
constexpr DataType | helicsType< std::vector< std::complex< double > > > () |
template<class X > | |
constexpr bool | isConvertableType () |
template<> | |
constexpr bool | isConvertableType< float > () |
template<> | |
constexpr bool | isConvertableType< long double > () |
template<> | |
constexpr bool | isConvertableType< int32_t > () |
template<> | |
constexpr bool | isConvertableType< int16_t > () |
template<> | |
constexpr bool | isConvertableType< uint16_t > () |
template<> | |
constexpr bool | isConvertableType< char > () |
template<> | |
constexpr bool | isConvertableType< unsigned char > () |
template<> | |
constexpr bool | isConvertableType< uint64_t > () |
template<class X > | |
X | invalidValue () |
template<> | |
constexpr double | invalidValue< double > () |
template<> | |
constexpr int64_t | invalidValue< int64_t > () |
template<> | |
constexpr uint64_t | invalidValue< uint64_t > () |
template<> | |
constexpr Time | invalidValue< Time > () |
template<> | |
NamedPoint | invalidValue< NamedPoint > () |
template<> | |
constexpr std::complex< double > | invalidValue< std::complex< double > > () |
template<class X > | |
X | varMax (const std::vector< defV > &vals) |
template<class X , class Y , typename OP > | |
Y | varDiff (const std::vector< defV > &vals, const OP &op) |
template<class X > | |
size_t | varMaxIndex (const std::vector< defV > &vals, std::function< double(const X &)> op) |
template<class X > | |
X | varMin (const std::vector< defV > &vals) |
template<class X > | |
size_t | varMinIndex (const std::vector< defV > &vals, std::function< double(const X &)> op) |
double | doubleExtractAndConvert (const data_view &dv, const std::shared_ptr< units::precise_unit > &inputUnits, const std::shared_ptr< units::precise_unit > &outputUnits) |
void | integerExtractAndConvert (defV &store, const data_view &dv, const std::shared_ptr< units::precise_unit > &inputUnits, const std::shared_ptr< units::precise_unit > &outputUnits) |
bool | checkForNeededCoreRetrieval (std::size_t currentIndex, DataType injectionType, DataType conversionType) |
template<class X > | |
const X & | getValueRefImpl (defV &val) |
template<> | |
const std::string & | getValueRefImpl (defV &val) |
std::vector< std::string > | vectorizeQueryResult (std::string_view queryres) |
std::vector< int > | vectorizeIndexQuery (std::string_view queryres) |
std::vector< std::string > | vectorizeAndSortQueryResult (std::string_view queryres) |
bool | waitForInit (helics::Federate *fed, std::string_view fedName, std::chrono::milliseconds timeout) |
bool | waitForFed (helics::Federate *fed, std::string_view fedName, std::chrono::milliseconds timeout) |
std::string | queryFederateSubscriptions (helics::Federate *fed, std::string_view fedName) |
template<class X > | |
X | getValue (ValueFederate &fed, std::string_view key) |
template<class X > | |
void | getValue (ValueFederate &fed, std::string_view key, X &obj) |
time_units | timeUnitsFromString (std::string_view unitString) |
Time | loadTimeFromString (std::string_view timeString) |
Time | loadTimeFromString (std::string_view timeString, time_units defUnits) |
TranslatorTypes | translatorTypeFromString (std::string_view translatorType) noexcept |
void | addOperations (Translator *trans, TranslatorTypes type) |
std::string | to_string (CoreType type) |
CoreType | coreTypeFromString (std::string_view type) noexcept |
bool | isCoreTypeAvailable (CoreType type) noexcept |
template<class... Us> | |
void | publish (ValueFederate &fed, std::string_view pubName, Us... pargs) |
int | getTypeSize (const std::string &type) |
bool | isBlockSizeValid (int size, const publication_info &pubI) |
bool | allowMultiBroker () |
void | processOptions (const toml::value §ion, const std::function< int(const std::string &)> &optionConversion, const std::function< int(const std::string &)> &valueConversion, const std::function< void(int, int)> &optionAction) |
void | processOptions (const Json::Value §ion, const std::function< int(const std::string &)> &optionConversion, const std::function< int(const std::string &)> &valueConversion, const std::function< void(int, int)> &optionAction) |
void | loadTags (const Json::Value §ion, const std::function< void(std::string_view, std::string_view)> &tagAction) |
void | loadTags (const toml::value §ion, const std::function< void(std::string_view, std::string_view)> &tagAction) |
template<typename Callable > | |
void | addTargets (const toml::value §ion, std::string targetName, Callable callback) |
template<typename Callable > | |
void | addTargets (const Json::Value §ion, std::string targetName, Callable callback) |
std::string | generateJsonQuotedString (const std::string &string) |
std::string | generateJsonErrorResponse (JsonErrorCodes code, const std::string &message) |
void | bufferToJson (const LogBuffer &buffer, Json::Value &base) |
LogLevels | logLevelFromString (std::string_view level) |
std::string | logLevelToString (LogLevels level) |
template<std::size_t DataSize> | |
void | swap_bytes (std::uint8_t *data) |
std::unique_ptr< Message > | createMessageFromCommand (const ActionMessage &cmd) |
std::unique_ptr< Message > | createMessageFromCommand (ActionMessage &&cmd) |
const char * | actionMessageType (action_message_def::action_t action) |
const char * | commandErrorString (int errorCode) |
std::string | errorMessageString (const ActionMessage &command) |
std::string | prettyPrintString (const ActionMessage &command) |
std::ostream & | operator<< (std::ostream &os, const ActionMessage &command) |
int | appendMessage (ActionMessage &m, const ActionMessage &newMessage) |
void | setIterationFlags (ActionMessage &command, IterationRequest iterate) |
bool | operator< (const ActionMessage &cmd, const ActionMessage &cmd2) |
bool | isProtocolCommand (const ActionMessage &command) noexcept |
bool | isPriorityCommand (const ActionMessage &command) noexcept |
bool | isTimingCommand (const ActionMessage &command) noexcept |
bool | isDependencyCommand (const ActionMessage &command) noexcept |
bool | isDisconnectCommand (const ActionMessage &command) noexcept |
bool | isErrorCommand (const ActionMessage &command) noexcept |
bool | isIgnoreableCommand (const ActionMessage &command) noexcept |
bool | isValidCommand (const ActionMessage &command) noexcept |
const std::string & | brokerStateName (BrokerBase::BrokerState state) |
const std::string & | stateString (OperatingState state) |
template<class sizeType , class SizedDataType > | |
bool | isValidIndex (sizeType testSize, const SizedDataType &vec) |
const std::string & | stateString (ConnectionState state) |
std::string_view | interfaceTypeName (InterfaceType type) noexcept |
const std::string & | fedStateString (FederateStates state) |
bool | returnableResult (MessageProcessingResult result) |
template<class FlagContainer , class FlagIndex > | |
void | setActionFlag (FlagContainer &M, FlagIndex flag) |
template<class FlagIndex > | |
bool | checkActionFlag (uint16_t flags, FlagIndex flag) |
template<class FlagContainer , class FlagIndex > | |
bool | checkActionFlag (const FlagContainer &M, FlagIndex flag) |
template<class FlagContainer , class FlagIndex > | |
void | clearActionFlag (FlagContainer &M, FlagIndex flag) |
template<class FlagContainer , class FlagIndex > | |
void | toggleActionFlag (FlagContainer &M, FlagIndex flag) |
constexpr uint16_t | make_flags (unsigned int flag) |
constexpr uint16_t | make_flags (unsigned int flag1, unsigned int flag2) |
constexpr uint16_t | make_flags (unsigned int flag1, unsigned int flag2, unsigned int flag3) |
constexpr uint16_t | toggle_flag (uint16_t base, unsigned int flag) |
std::ostream & | operator<< (std::ostream &os, GlobalBrokerId id) |
constexpr GlobalFederateId | getSpecialFederateId (GlobalBrokerId broker, GlobalBrokerId::BaseType index) |
std::ostream & | operator<< (std::ostream &os, GlobalFederateId id) |
std::ostream & | operator<< (std::ostream &os, GlobalHandle id) |
constexpr route_id | generateRouteId (int32_t route_type_code, int32_t index) |
constexpr int32_t | getRouteTypeCode (route_id rid) |
std::ostream & | operator<< (std::ostream &os, route_id id) |
HelicsConfigJSON * | addJsonConfig (CLI::App *app) |
Add the HELICS JSON configuration processor to the app. | |
constexpr Time | operator""_t (long double val) |
std::string | systemInfo () |
bool | checkTypeMatch (std::string_view type1, std::string_view type2, bool strict_match) |
bool | checkUnitMatch (const std::string &unit1, const std::string &unit2, bool strict_match) |
std::ostream & | operator<< (std::ostream &os, LocalFederateId fid) |
std::ostream & | operator<< (std::ostream &os, InterfaceHandle handle) |
constexpr LocalFederateId | gLocalCoreId (-259) |
void | addFederateTags (Json::Value &v, const FederateState *fed) |
Json::Value | generateInterfaceConfig (const helics::HandleManager &hm, const helics::GlobalFederateId &fed) |
void | generateInterfaceConfig (Json::Value &iblock, const helics::HandleManager &hm, const helics::GlobalFederateId &fed) |
std::string | generateInterfaceQueryResults (std::string_view request, const HandleManager &handles, const GlobalFederateId fed, const std::function< void(Json::Value &)> &addHeaderInfo) |
std::string | generateInterfaceQueryResults (std::string_view request, const InterfaceInfo &info, const std::function< void(Json::Value &)> &addHeaderInfo) |
bool | operator== (const SmallBuffer &sb1, const SmallBuffer &sb2) |
bool | operator!= (const SmallBuffer &sb1, const SmallBuffer &sb2) |
std::tuple< FederateStates, MessageProcessingResult, bool > | processCoordinatorMessage (ActionMessage &cmd, TimeCoordinator *timeCoord, const FederateStates state, const bool timeGranted_mode, const GlobalFederateId localID) |
void | addTimeState (Json::Value &output, const TimeState state) |
void | generateJsonOutputTimeData (Json::Value &output, const TimeData &dep, bool includeAggregates) |
void | generateJsonOutputDependency (Json::Value &output, const DependencyInfo &dep) |
const DependencyInfo & | getExecEntryMinFederate (const TimeDependencies &dependencies, GlobalFederateId self, ConnectionType ignoreType, GlobalFederateId ignore) |
TimeData | generateMinTimeUpstream (const TimeDependencies &dependencies, bool restricted, GlobalFederateId self, GlobalFederateId ignore, std::int32_t responseCode) |
TimeData | generateMinTimeDownstream (const TimeDependencies &dependencies, bool restricted, GlobalFederateId self, GlobalFederateId ignore, std::int32_t responseCode) |
TimeData | generateMinTimeTotal (const TimeDependencies &dependencies, bool restricted, GlobalFederateId self, GlobalFederateId ignore, std::int32_t responseCode) |
GrantDelayMode | getDelayMode (bool waiting, bool interrupted) |
bool | checkSequenceCounter (const DependencyInfo &dep, Time tmin, std::int32_t sq) |
template<typename ContainerT , typename PredicateT > | |
void | maperase_if (ContainerT &items, const PredicateT &predicate) |
bool | loadCores () |
constexpr const char * | tcodeStr (int tcode) |
int | getDefaultPort (int coreType) |
FedObject * | getFedObject (HelicsFederate fed, HelicsError *err) noexcept |
CoreObject * | getCoreObject (HelicsCore core, HelicsError *err) noexcept |
BrokerObject * | getBrokerObject (HelicsBroker broker, HelicsError *err) noexcept |
Variables | |
constexpr auto | bvecstr = "block_vector" |
constexpr IdentifierType | invalid_id_value |
defining an invalid id value More... | |
constexpr double | invalidDouble = -1e49 |
defined constant for an invalid value as a double | |
constexpr int | primaryType = 0 |
constexpr int | convertibleType = 1 |
constexpr int | nonConvertibleType = 2 |
constexpr std::string_view | emptyString {""} |
const std::unordered_map< std::string, int > | gLogLevelMap |
const std::map< LogLevels, std::string_view > | levelMaps |
constexpr auto | LEADING_CHAR = '\xF3' |
constexpr auto | TAIL_CHAR1 = '\xFA' |
constexpr auto | TAIL_CHAR2 = '\xFC' |
constexpr int | targetStringLoc {0} |
constexpr int | sourceStringLoc {1} |
constexpr int | unitStringLoc {1} |
constexpr int | origSourceStringLoc {2} |
constexpr int | origDestStringLoc {3} |
constexpr int | typeStringLoc {0} |
constexpr int | typeOutStringLoc {1} |
constexpr int32_t | cmd_info_basis {65536} |
constexpr char | universalKey [] = "**" |
constexpr Time | startupTime = Time::minVal() |
constexpr Time | initialTime {-1000000.0} |
constexpr IdentifierBaseType | gGlobalFederateIdShift {0x0002'0000} |
constexpr IdentifierBaseType | gGlobalBrokerIdShift {0x7000'0000} |
constexpr IdentifierBaseType | gGlobalPriorityBlockSize {100'000'000} |
constexpr GlobalBrokerId | parent_broker_id {0} |
constexpr GlobalBrokerId | gRootBrokerID {1} |
constexpr GlobalFederateId | gDirectCoreId {-235262} |
constexpr route_id | parent_route_id {0} |
constexpr route_id | control_route {-1} |
constexpr int32_t | normal_route_code {0} |
constexpr int32_t | json_route_code {10} |
constexpr Time | timeZero = Time::zeroVal() |
constexpr Time | timeEpsilon = Time::epsilon() |
constexpr Time | negEpsilon = -Time::epsilon() |
constexpr Time | cBigTime = Time{static_cast<int64_t>(HELICS_BIG_NUMBER * 1000000)} |
constexpr Time | initializationTime = negEpsilon |
constexpr auto | versionString = HELICS_VERSION_STRING |
constexpr int | versionMajor = HELICS_VERSION_MAJOR |
constexpr int | versionMinor = HELICS_VERSION_MINOR |
constexpr int | versionPatch = HELICS_VERSION_PATCH |
constexpr auto | versionBuild = HELICS_VERSION_BUILD |
constexpr auto | buildFlags = HELICS_BUILD_FLAGS_DEBUG |
constexpr auto | compiler = HELICS_COMPILER_VERSION |
constexpr InterfaceHandle | gDirectSendHandle |
this special handle can be used to directly send a message in a core More... | |
constexpr const char * | tstr [] |
constexpr const char * | defInterface [] |
constexpr const char * | defBrokerInterface [] |
constexpr const char * | defLocalInterface [] = {"127.0.0.1", "127.0.0.1", "tcp://127.0.0.1", "", ""} |
constexpr int | always_log = -100000 |
level that will always log | |
constexpr int | log_everything = 100 |
level that will log everything | |
the main namespace for the helics co-simulation library User functions will be in the helics namespace with internal functions possible in a lower level namespace
HELICS Application API
the core namespace for the helics C++ library all user functions are found in this namespace along with many other functions in the Core API
using helics::defV = typedef std::variant<double, int64_t, std::string, std::complex<double>, std::vector<double>, std::vector<std::complex<double> >, NamedPoint> |
define a variant with the different types
using helics::IdentifierBaseType = typedef int32_t |
base date type for id types
using helics::Time = typedef TimeRepresentation<count_time<9> > |
Simulation virtual time.
Class represents time in the core.
using helics::typeCategory = typedef std::conditional_t<helicsType<remove_cv_ref<X> >() != DataType::HELICS_CUSTOM, std::integral_constant<int, primaryType>, std::conditional_t<isConvertableType<remove_cv_ref<X> >(), std::integral_constant<int, convertibleType>, std::integral_constant<int, nonConvertibleType> >> |
template dividing types into 3 categories 0 is primary types 1 types convertible to primary types 2 type not convertible to primary types
enum helics::ConnectionFlags : uint16_t |
flags used when connecting a federate/core/broker to a federation
|
strong |
enumeration of possible states of a remote federate or broker
|
strong |
enumeration of the different connection arrangements
|
strong |
|
strong |
the type of the cores that are available
|
strong |
the base types for helics
enumeration of endpoint specific flags
|
strong |
enumeration of the possible federate states
|
strong |
type code embedded in the objects so the library knows how to cast them appropriately
enum helics::FilterFlags |
enumeration of filter specific flags
|
strong |
a set of common defined filters
enum helics::GeneralFlags : uint16_t |
flag definitions for the action Message Flag field
Enumerator | |
---|---|
error_flag | flag indicating an error condition associated with the command |
indicator_flag | flag used for setting values |
|
strong |
enumeration of delay modes which affect whether a time is granted or not
|
strong |
the known types of identifiers
enum helics::InterfaceFlags : uint16_t |
flags used on handles
|
strong |
|
strong |
enumeration of locality namespaces
|
strong |
enumeration of the possible iteration requests by a federate
|
strong |
enumeration of the possible states of iteration
enum helics::LogLevels : int |
enumeration of defined print levels
enum helics::MessageFlags : uint16_t |
flags used for messages
|
strong |
enumeration of the possible message processing results
|
strong |
enumeration of possible operating conditions for a federate
enum helics::OperationFlags : uint16_t |
|
strong |
enumeration of possible random number generator distributions
|
strong |
enumeration of the possible time message processing results
|
strong |
enumeration of possible states for a federate to be in regards to time request
enum helics::TimingFlags : uint16_t |
flags used in timing messages
enum helics::TranslatorTypes : std::int32_t |
a set of common defined translators
enum helics::TypeLocation : decltype(std::declval< defV >().index()) |
enumeration of the index value of the types inside the defV variant
const char * helics::actionMessageType | ( | action_message_def::action_t | action | ) |
return the name of the action
action | The action to get the name for |
Referenced by prettyPrintString().
void helics::addOperations | ( | Filter * | filt, |
FilterTypes | type, | ||
Core * | |||
) |
add a defined operation to a filter
Referenced by make_cloning_filter().
void helics::addOperations | ( | Translator * | trans, |
TranslatorTypes | type | ||
) |
add a defined operation to a translator
References helics::Translator::setTranslatorOperations().
int helics::appendMessage | ( | ActionMessage & | m, |
const ActionMessage & | newMessage | ||
) |
append a message to multi message container
m | the message to add the extra message to |
newMessage | the message to append |
References helics::ActionMessage::action(), helics::ActionMessage::counter, and helics::ActionMessage::to_string().
Referenced by helics::BaseTimeCoordinator::disconnect(), helics::TimeCoordinator::localError(), and helics::CommonCore::setValue().
const std::string & helics::brokerStateName | ( | BrokerBase::BrokerState | state | ) |
helper function to generate the name of a state as a string
References helics::BrokerBase::CONFIGURED, helics::BrokerBase::CONFIGURING, helics::BrokerBase::CONNECTED, helics::BrokerBase::CONNECTED_ERROR, helics::BrokerBase::CONNECTING, helics::BrokerBase::CREATED, helics::BrokerBase::ERRORED, helics::BrokerBase::INITIALIZING, helics::BrokerBase::OPERATING, helics::BrokerBase::TERMINATED, helics::BrokerBase::TERMINATING, and helics::BrokerBase::TERMINATING_ERROR.
void helics::bufferToJson | ( | const LogBuffer & | buffer, |
Json::Value & | base | ||
) |
helper function to write a log buffer to a json object
Referenced by helics::CommonCore::query(), and helics::CoreBroker::query().
HELICS_CXX_EXPORT bool helics::changeDetected | ( | const defV & | prevValue, |
const std::string & | val, | ||
double | deltaV | ||
) |
detect a change from the previous values
Referenced by helics::Publication::publish(), and helics::Publication::publishComplex().
|
inline |
template function to check a flag in an object containing a flags field
|
inline |
check a flag value on a specified index template function to check a flag in an object containing a flags field
Referenced by helics::CommonCore::addDestinationTarget(), helics::CommonCore::addSourceTarget(), helics::CommonCore::closeHandle(), helics::FilterFederate::destinationProcessMessage(), errorMessageString(), prettyPrintString(), helics::TimeCoordinator::processConfigUpdateMessage(), helics::BaseTimeCoordinator::processDependencyUpdateMessage(), helics::FilterFederate::processFilterReturn(), helics::FilterFederate::processMessageFilter(), helics::CommonCore::sendMessage(), helics::CommonCore::sendTo(), helics::CommonCore::sendToAt(), helics::FederateState::setInterfaceProperty(), helics::FederateState::setProperties(), helics::CommonCore::setValue(), helics::ActionMessage::to_string(), and toggleActionFlag().
HELICS_CXX_EXPORT void helics::cleanupHelicsLibrary | ( | ) |
function to do some housekeeping work
this runs some cleanup routines and tries to close out any residual thread that haven't been shutdown yet
References helics::BrokerFactory::cleanUpBrokers(), and helics::CoreFactory::cleanUpCores().
Referenced by helicsCloseLibrary().
|
inline |
template function to clear a flag in an object containing a flags field
Referenced by toggleActionFlag().
const char * helics::commandErrorString | ( | int | errorCode | ) |
return a string associated with a particular error code
[in,out] | errorCode | The error to get the string for |
Referenced by errorMessageString().
|
noexcept |
generate a core type value from a std::string
type | a string describing the desired core type |
std::unique_ptr< Message > helics::createMessageFromCommand | ( | ActionMessage && | cmd | ) |
create a new message object that moves all the information from the ActionMessage into newly allocated memory for the message
std::unique_ptr< Message > helics::createMessageFromCommand | ( | const ActionMessage & | cmd | ) |
create a new message object that copies all the information from the ActionMessage into newly allocated memory for the message
References helics::ActionMessage::actionTime, helics::ActionMessage::flags, helics::ActionMessage::messageID, and helics::ActionMessage::payload.
Referenced by helics::FilterFederate::destinationProcessMessage(), and helics::FilterFederate::processMessageFilter().
HELICS_CXX_EXPORT double helics::doubleExtractAndConvert | ( | const data_view & | dv, |
const std::shared_ptr< units::precise_unit > & | inputUnits, | ||
const std::shared_ptr< units::precise_unit > & | outputUnits | ||
) |
convert a dataview to a double and do a unit conversion if appropriate
References helics::ValueConverter< X >::interpret().
std::string helics::errorMessageString | ( | const ActionMessage & | command | ) |
generate a string representing an error from an ActionMessage
command | the command to generate the error string for |
References checkActionFlag(), commandErrorString(), error_flag, and helics::ActionMessage::messageID.
const std::string & helics::fedStateString | ( | FederateStates | state | ) |
convert the state into a human readable string
Referenced by helics::FederateState::logMessage(), and helics::FederateState::processQuery().
|
noexcept |
get the filter type from a string
HELICS_CXX_EXPORT std::string helics::generateFullCoreInitString | ( | const FederateInfo & | fi | ) |
generate string for passing arguments to the core
References helics::FederateInfo::autobroker, helics::FederateInfo::broker, helics::FederateInfo::brokerInitString, helics::FederateInfo::brokerPort, helics::FederateInfo::coreInitString, helics::FederateInfo::debugging, helics::FederateInfo::encrypted, helics::FederateInfo::encryptionConfig, helics::FederateInfo::fileInUse, helics::FederateInfo::key, helics::FederateInfo::localport, helics::FederateInfo::profilerFileName, and helics::FederateInfo::useJsonSerialization.
Referenced by helics::Federate::Federate().
std::string helics::generateInterfaceQueryResults | ( | std::string_view | request, |
const HandleManager & | handles, | ||
const GlobalFederateId | fed, | ||
const std::function< void(Json::Value &)> & | addHeaderInfo | ||
) |
generate results from a query related to interfaces
References ENDPOINT, FILTER, INPUT, helics::GlobalFederateId::isValid(), PUBLICATION, and TRANSLATOR.
|
inline |
generate a json error response string
Referenced by helics::CoreApp::query(), helics::EmptyCore::query(), helics::CommonCore::query(), helics::CoreBroker::query(), and helics::Federate::queryComplete().
|
noexcept |
get the brokerObject from a HelicsBroker and verify it is valid
References HELICS_ERROR_INVALID_OBJECT.
Referenced by helicsBrokerClone(), helicsBrokerFree(), and helicsBrokerIsValid().
HELICS_CXX_EXPORT std::string_view helics::getCleanedTypeName | ( | std::string_view | typeName | ) |
convert to a string and also get a cleaned view of the string if it were a specific typeid
returns the input if not changed
References getCleanedTypeName(), and typeNameStringRef().
Referenced by getCleanedTypeName(), and helics::ValueFederateManager::registerInput().
HELICS_CXX_EXPORT std::complex< double > helics::getComplexFromString | ( | std::string_view | val | ) |
get a complex number from a string
References getComplexFromString(), helicsGetComplex(), and helicsGetVector().
Referenced by getComplexFromString(), and valueExtract().
|
noexcept |
get the CoreObject from a HelicsCore and verify it is valid
References HELICS_ERROR_INVALID_OBJECT.
Referenced by helicsCoreClone(), helicsCoreFree(), and helicsCoreIsValid().
HELICS_CXX_EXPORT double helics::getDoubleFromString | ( | std::string_view | val | ) |
get a double from a string
References getDoubleFromString().
Referenced by getDoubleFromString(), getIntFromString(), and valueExtract().
|
noexcept |
get the FedObject from a HelicsBroker and verify it is valid
References HELICS_ERROR_INVALID_OBJECT.
Referenced by helicsFederateFree().
HELICS_CXX_EXPORT int helics::getFlagIndex | ( | std::string | val | ) |
get a flag index from a string name of the flag
val | a name of a flag option to get an integer index code for use in /ref CoreFederateInfo::setFlagOption |
Referenced by getPropertyIndex().
HELICS_CXX_EXPORT std::int64_t helics::getIntFromString | ( | std::string_view | val | ) |
get an int from a string
References getDoubleFromString(), and getIntFromString().
Referenced by getIntFromString(), and valueExtract().
HELICS_CXX_EXPORT int helics::getOptionIndex | ( | std::string | val | ) |
get an integer option index for a binary flag option
val | a name of flag option to get an integer index code for used in /ref CoreFederateInfo::setOptionFlag |
HELICS_CXX_EXPORT int helics::getOptionValue | ( | std::string | val | ) |
get a numerical value for a string option value
val | a value from an enumeration or flag used as part of a value |
HELICS_CXX_EXPORT int helics::getPropertyIndex | ( | std::string | val | ) |
get an integer/time property/flag from a string name of the property or flag
val | a name of property to get an integer index code for used in /ref CoreFederateInfo::setProperty |
References getFlagIndex().
|
constexpr |
generate a special federate id for a broker/core
References helics::GlobalBrokerId::baseValue(), gGlobalBrokerIdShift, and gRootBrokerID.
HELICS_CXX_EXPORT DataType helics::getTypeFromString | ( | std::string_view | typeName | ) |
convert a string to a type
References getTypeFromString().
Referenced by getTypeFromString(), and helics::Publication::Publication().
X helics::getValue | ( | ValueFederate & | fed, |
std::string_view | key | ||
) |
get a value directly from the subscription key name
this is a convenience function to get a value directly from the subscription key name this function should not be used as the primary means of retrieving value as it does involve an additional map find operation vs the member getValue calls
fed | a reference to a valueFederate |
key | the name of the publication |
References helics::ValueFederate::getInput(), and helics::Input::getValue().
void helics::getValue | ( | ValueFederate & | fed, |
std::string_view | key, | ||
X & | obj | ||
) |
get a value directly from the subscription key name
this is a convenience function to get a value directly from the subscription key name this function should not be used as the primary means of retrieving value as it does involve an additional map find operation vs the member getValue calls
fed | a reference to a valueFederate |
key | the name of the publication |
obj | the obj to store the retrieved value |
References helics::ValueFederate::getSubscription(), and helics::Input::getValue().
|
constexpr |
constant to use for indicating that a command is for the core itself from the Core Public API
Referenced by helics::CoreFactory::abortAllCores(), helics::CommonCore::getFederateTag(), helics::CommonCore::getFlagOption(), helics::CommonCore::getIntegerProperty(), helics::CoreApp::getTag(), helics::CoreApp::globalError(), helics::CoreApp::haltInit(), helicsCoreGlobalError(), helics::CommonCore::logMessage(), helics::CommonCore::registerCloningFilter(), helics::CommonCore::registerFilter(), helics::CommonCore::registerTranslator(), helics::CommonCore::setCoreReadyToInit(), helics::CommonCore::setFederateTag(), helics::CommonCore::setFlagOption(), helics::CommonCore::setIntegerProperty(), helics::CommonCore::setLoggingCallback(), and helics::CoreApp::setTag().
HELICS_CXX_EXPORT bool helics::helicsBoolValue | ( | std::string_view | val | ) |
get the boolean value of a string
References helicsBoolValue().
Referenced by helicsBoolValue(), and valueExtract().
HELICS_CXX_EXPORT std::string helics::helicsComplexString | ( | double | real, |
double | imag | ||
) |
generate a string representation of a complex number from separate real and imaginary parts
References helicsComplexString().
Referenced by helicsComplexString(), and valueExtract().
HELICS_CXX_EXPORT std::string helics::helicsComplexString | ( | std::complex< double > | val | ) |
generate a string representation of a complex number
References helicsComplexString().
HELICS_CXX_EXPORT std::string helics::helicsComplexVectorString | ( | const std::vector< std::complex< double >> & | val | ) |
generate a string representation of a complex vector
string will look like cv[1.02+2j,45]
References helicsComplexVectorString().
Referenced by helicsComplexVectorString(), and valueExtract().
HELICS_CXX_EXPORT std::string helics::helicsDoubleString | ( | double | val | ) |
generate a string representation of a double
References helicsDoubleString().
Referenced by helicsDoubleString(), and typeConvert().
HELICS_CXX_EXPORT std::complex< double > helics::helicsGetComplex | ( | std::string_view | val | ) |
convert a string to a complex number
References helicsGetComplex().
Referenced by getComplexFromString(), helicsGetComplex(), helicsGetComplexVector(), and helics::apps::PhasorGenerator::setString().
HELICS_CXX_EXPORT std::vector< std::complex< double > > helics::helicsGetComplexVector | ( | std::string_view | val | ) |
convert a string to a complex vector
References helicsGetComplexVector().
Referenced by helicsGetComplexVector(), and valueExtract().
HELICS_CXX_EXPORT void helics::helicsGetComplexVector | ( | std::string_view | val, |
std::vector< std::complex< double >> & | data | ||
) |
convert a string to a complex vector using an existing vector
References helicsGetComplex(), helicsGetComplexVector(), and invalidValue().
HELICS_CXX_EXPORT NamedPoint helics::helicsGetNamedPoint | ( | std::string_view | val | ) |
convert a string to a named point
References helicsGetNamedPoint(), helics::NamedPoint::name, and helics::NamedPoint::value.
Referenced by helicsGetNamedPoint(), and valueExtract().
HELICS_CXX_EXPORT std::vector< double > helics::helicsGetVector | ( | std::string_view | val | ) |
convert a string to a vector
References helicsGetVector().
Referenced by getComplexFromString(), helicsGetVector(), and valueExtract().
HELICS_CXX_EXPORT std::string helics::helicsIntString | ( | std::int64_t | val | ) |
generate a string representation of an int
References helicsIntString().
Referenced by helicsIntString().
HELICS_CXX_EXPORT std::string helics::helicsNamedPointString | ( | const NamedPoint & | point | ) |
generate a named point string
string will look like {"<name>":val}
References helicsNamedPointString(), helics::NamedPoint::name, and helics::NamedPoint::value.
Referenced by helicsNamedPointString(), and valueExtract().
|
constexpr |
template function for generating a known name of a type
HELICS_CXX_EXPORT std::string helics::helicsVectorString | ( | const double * | vals, |
size_t | size | ||
) |
generate a string representation of a vector from pointer and size
string will look like v[1.02,45]
References helicsVectorString().
HELICS_CXX_EXPORT std::string helics::helicsVectorString | ( | const std::vector< double > & | val | ) |
generate a string representation of a vector
string will look like v[1.02,45]
References helicsVectorString().
Referenced by helicsVectorString(), and valueExtract().
|
inline |
generate an invalid value for the various types
Referenced by helicsGetComplexVector().
|
inline |
function to check if the size is valid for the given type
References isBlockSizeValid(), and helics::publication_info::size.
Referenced by isBlockSizeValid().
|
noexcept |
Returns true if core/broker type specified is available in current compilation.
|
inlinenoexcept |
check if a command is a disconnect command
Referenced by isIgnoreableCommand().
|
inlinenoexcept |
check if a command is an error command
Referenced by isIgnoreableCommand().
|
inlinenoexcept |
check if the command can be ignored by a missing route
References isDisconnectCommand(), and isErrorCommand().
|
inlinenoexcept |
check if a command is a priority command
References helics::action_message_def::cmd_ignore.
Referenced by helics::BrokerBase::addActionMessage(), and helics::CommsInterface::transmit().
|
inlinenoexcept |
check if a command is a protocol command
Referenced by helics::NetworkCommsInterface::generateReplyToIncomingMessage().
|
inlinenoexcept |
check if a command is a valid command
References helics::action_message_def::cmd_invalid.
|
inline |
helper template to check whether an index is actually valid for a particular vector
SizedDataType | a vector like data type that must have a size function |
testSize | an index to test |
vec | a reference to a vector like object that has a size method |
Referenced by helics::HandleManager::addHandleAtIndex(), helics::MultiBroker::addRoute(), helics::InputInfo::getData(), helics::HandleManager::getHandleInfo(), helics::ValueFederateManager::getInput(), helics::HandleManager::getInterfaceHandle(), helics::apps::Clone::getMessage(), helics::apps::Recorder::getMessage(), helics::apps::Clone::getValue(), helics::apps::Recorder::getValue(), and helics::apps::Player::runTo().
bool helics::loadCores | ( | ) |
load the available core and Broker types into the factory
HELICS_CXX_EXPORT FederateInfo helics::loadFederateInfo | ( | const std::string & | configString | ) |
generate a FederateInfo object from a config file or string (JSON, TOML)
References helics::FederateInfo::defName, helics::FederateInfo::fileInUse, helics::FederateInfo::loadInfoFromArgsIgnoreOutput(), helics::FederateInfo::loadInfoFromJson(), and helics::FederateInfo::loadInfoFromToml().
HELICS_CXX_EXPORT Time helics::loadTimeFromString | ( | std::string_view | timeString | ) |
generate a time from a string
the string can be a double or with units for example "1.234", or "1032ms" or "10423425 ns"
invalid_argument | if the string is not a valid time |
HELICS_CXX_EXPORT Time helics::loadTimeFromString | ( | std::string_view | timeString, |
time_units | defUnit | ||
) |
generate a time from a string
the string can be a double or with units for example "1.234" or "1032ms"
timeString | the string containing the time |
defUnit | the units to apply to a string with no other units specified |
invalid_argument | if the string is not a valid time |
HELICS_CXX_EXPORT std::unique_ptr< CloningFilter > helics::make_cloning_filter | ( | FilterTypes | type, |
Core * | cr, | ||
std::string_view | delivery, | ||
std::string_view | name = EMPTY_STRING |
||
) |
create a cloning filter with a delivery location
type | the type of filter to create |
cr | the core to create the filter through |
delivery | the endpoint to deliver the cloned message to |
name | the name of the filter (optional) |
References addOperations().
HELICS_CXX_EXPORT std::unique_ptr< CloningFilter > helics::make_cloning_filter | ( | FilterTypes | type, |
CoreApp & | cr, | ||
std::string_view | delivery, | ||
std::string_view | name = EMPTY_STRING |
||
) |
create a cloning filter with a delivery location
type | the type of filter to create |
cr | the core to create the filter through |
delivery | the endpoint to deliver the cloned message to |
name | the name of the filter (optional) |
References helics::CoreApp::getCopyofCorePointer(), and make_cloning_filter().
HELICS_CXX_EXPORT CloningFilter & helics::make_cloning_filter | ( | FilterTypes | type, |
Federate * | fed, | ||
std::string_view | delivery, | ||
std::string_view | name = EMPTY_STRING |
||
) |
create a filter
type | the type of filter to create |
fed | the federate to create the filter through |
delivery | the endpoint to deliver the cloned message to |
name | the name of the filter (optional) |
References addOperations(), helics::Federate::getCorePointer(), and helics::Federate::registerCloningFilter().
Referenced by make_cloning_filter(), and helics::ConnectorFederateManager::registerCloningFilter().
HELICS_CXX_EXPORT CloningFilter & helics::make_cloning_filter | ( | InterfaceVisibility | locality, |
FilterTypes | type, | ||
Federate * | fed, | ||
std::string_view | delivery, | ||
std::string_view | name = EMPTY_STRING |
||
) |
create a cloning filter with a specified visibility
locality | can be global or local |
type | the type of filter to create |
fed | the federate to create the filter through |
delivery | the endpoint to deliver the cloned message to |
name | the name of the filter (optional) |
HELICS_CXX_EXPORT std::unique_ptr< Filter > helics::make_filter | ( | FilterTypes | type, |
Core * | cr, | ||
std::string_view | name = EMPTY_STRING |
||
) |
create a filter
type | the type of filter to create |
cr | the core to create the filter through |
name | the name of the filter (optional) |
HELICS_CXX_EXPORT std::unique_ptr< Filter > helics::make_filter | ( | FilterTypes | type, |
CoreApp & | cr, | ||
std::string_view | name = EMPTY_STRING |
||
) |
create a filter
type | the type of filter to create |
cr | the core to create the filter through |
name | the name of the filter (optional) |
References helics::CoreApp::getCopyofCorePointer(), and make_filter().
HELICS_CXX_EXPORT Filter & helics::make_filter | ( | FilterTypes | type, |
Federate * | fed, | ||
std::string_view | name = EMPTY_STRING |
||
) |
create a filter
type | the type of filter to create |
fed | the federate to create the filter through |
name | the name of the filter (optional) |
Referenced by make_filter(), and helics::ConnectorFederateManager::registerFilter().
HELICS_CXX_EXPORT Filter & helics::make_filter | ( | InterfaceVisibility | locality, |
FilterTypes | type, | ||
Federate * | fed, | ||
std::string_view | name = EMPTY_STRING |
||
) |
create a filter
locality | the visibility of the filter global or local |
type | the type of filter to create |
fed | the federate to create the filter through |
name | the name of the filter (optional) |
|
inlineconstexpr |
helper function to facilitate make a flag variable
Referenced by helics::UnknownHandleManager::hasNonOptionalUnknowns(), helics::UnknownHandleManager::hasRequiredUnknowns(), make_flags(), helics::UnknownHandleManager::processNonOptionalUnknowns(), helics::UnknownHandleManager::processRequiredUnknowns(), helics::CommonCore::registerCloningFilter(), helics::CommonCore::registerDataSink(), helics::CommonCore::registerTargetedEndpoint(), and toggle_flag().
|
inlineconstexpr |
helper function to facilitate make a flag variable out of two flags
References make_flags().
|
inlineconstexpr |
helper function to facilitate make a flag variable out of three flags
References make_flags().
|
inline |
directly convert the boolean to integer
|
inline |
directly convert the boolean to integer
decltype(auto) helics::make_valid | ( | X && | obj | ) |
this template should do nothing for most classes the specific overloads are the important ones
|
inline |
operator to check if small buffers are not equal to each other
|
constexpr |
user defined literal for a time variable
std::ostream & helics::operator<< | ( | std::ostream & | os, |
const ActionMessage & | command | ||
) |
stream operator for a command
References prettyPrintString().
std::ostream & helics::operator<< | ( | std::ostream & | os, |
GlobalBrokerId | id | ||
) |
stream operator for a federate_id
std::ostream & helics::operator<< | ( | std::ostream & | os, |
GlobalFederateId | id | ||
) |
stream operator for a federate_id
std::ostream & helics::operator<< | ( | std::ostream & | os, |
GlobalHandle | id | ||
) |
stream operator for a federate_id
|
inline |
operator to check if small buffers are equal to each other
std::string helics::prettyPrintString | ( | const ActionMessage & | command | ) |
generate a human readable string with information about a command
command | the command to generate the string for |
References helics::ActionMessage::action(), actionMessageType(), helics::ActionMessage::actionTime, helics::InterfaceHandle::baseValue(), helics::GlobalFederateId::baseValue(), checkActionFlag(), helics::ActionMessage::dest_handle, helics::ActionMessage::dest_id, error_flag, helics::ActionMessage::name(), helics::ActionMessage::payload, helics::SmallBuffer::size(), helics::ActionMessage::source_handle, helics::ActionMessage::source_id, helics::ActionMessage::Tdemin, and helics::ActionMessage::Te.
Referenced by operator<<(), and helics::CommonCore::sendMessage().
void helics::publish | ( | ValueFederate & | fed, |
std::string_view | pubName, | ||
Us... | pargs | ||
) |
publish directly from the publication name
this is a convenience function to publish directly from the publication name this function should not be used as the primary means of publications as it does involve an additional map find operation vs the member publish calls
fed | a reference to a valueFederate |
pubName | the name of the publication |
pargs | any combination of arguments that go into the other publish commands |
References helics::ValueFederate::getPublication(), and helics::Publication::publish().
HELICS_CXX_EXPORT std::string helics::queryFederateSubscriptions | ( | helics::Federate * | fed, |
std::string_view | fedName | ||
) |
helper function to get a list of all the publications a federate subscribes to
fed | a pointer to the federate |
fedName | the name of the federate we are querying |
References HELICS_SEQUENCING_MODE_ORDERED, and helics::Federate::query().
|
inline |
function to check if the message processing result should be returned or processing continued
References NEXT_STEP.
|
inline |
template function to set a flag in an object containing a flags field
FlagContainer | an object with a .flags field |
FlagIndex | a type that can be used as part of a shift to index into a flag object |
M | the container to set the flag in |
flag | the flag to set |
Referenced by helics::CommonCore::addDestinationFilterToEndpoint(), helics::CoreBroker::addDestinationFilterToEndpoint(), helics::CommonCore::addDestinationTarget(), helics::CommonCore::addSourceTarget(), helics::CoreBroker::clearTimeBarrier(), helics::FilterCoordinator::closeFilter(), helics::CommonCore::closeHandle(), helics::CommonCore::connect(), helics::CommonCore::enterExecutingMode(), helics::FederateState::enterExecutingMode(), helics::TimeCoordinator::enteringExecMode(), helics::BaseTimeCoordinator::generateTimeRequest(), helics::TimeoutMonitor::pingSub(), helics::CommonCore::registerCloningFilter(), helics::CommonCore::registerFederate(), helics::CommonCore::requestTimeIterative(), helics::BaseTimeCoordinator::sendTimingInfo(), helics::TimeCoordinator::sendUpdatedExecRequest(), helics::CommonCore::setFlagOption(), helics::CommonCore::setHandleOption(), setIterationFlags(), helics::CoreBroker::setLoggingCallback(), helics::CommonCore::setLoggingCallback(), helics::CommonCore::timeRequest(), and toggleActionFlag().
void helics::setIterationFlags | ( | ActionMessage & | command, |
IterationRequest | iterate | ||
) |
set the flags for an iteration request
References ERROR_CONDITION, error_flag, FORCE_ITERATION, ITERATE_IF_NEEDED, iteration_requested_flag, NO_ITERATIONS, required_flag, and setActionFlag().
Referenced by helics::CommonCore::enterExecutingMode(), helics::FederateState::enterExecutingMode(), helics::TimeCoordinator::enteringExecMode(), helics::CommonCore::enterInitializingMode(), helics::CommonCore::requestTimeIterative(), and helics::TimeCoordinator::sendUpdatedExecRequest().
const std::string & helics::stateString | ( | OperatingState | state | ) |
function to print string for the state
std::string helics::systemInfo | ( | ) |
generate an extended version and system info string in json format
References buildFlags, compiler, helics::CoreFactory::getAvailableCoreTypes(), versionBuild, versionMajor, versionMinor, versionPatch, and versionString.
Referenced by helicsGetSystemInfo().
HELICS_CXX_EXPORT time_units helics::timeUnitsFromString | ( | std::string_view | unitString | ) |
generate a time related unit,
invalid_argument | if the string is not a valid unit |
HELICS_CXX_EXPORT std::string helics::to_string | ( | CoreType | type | ) |
generate a string based on the core type
|
inlineconstexpr |
helper function to toggle a bit in a uint16_t value
References make_flags().
|
inline |
template function to clear a flag in an object containing a flags field
References checkActionFlag(), clearActionFlag(), and setActionFlag().
|
noexcept |
get the translator type from a string
HELICS_CXX_EXPORT SmallBuffer helics::typeConvert | ( | DataType | type, |
double | val | ||
) |
convert a value to a data block to be interpreted using the specified type
type | the type used for the data conversion |
val | a double to convert |
References helicsDoubleString(), typeConvert(), and typeNameStringRef().
Referenced by helics::Publication::publish(), helics::Publication::publishComplex(), and typeConvert().
|
inlineconstexpr |
template class for generating a known name of a type
|
inlineconstexpr |
for boolean
|
inlineconstexpr |
for character
|
inlineconstexpr |
for float
|
inlineconstexpr |
for float
|
inlineconstexpr |
for 64 bit unsigned integer
|
inlineconstexpr |
for complex double
|
inlineconstexpr |
for complex double
|
inlineconstexpr |
for integer
|
inlineconstexpr |
for unsigned integer
|
inlineconstexpr |
for 64 bit unsigned integer
|
inlineconstexpr |
for unsigned character
const HELICS_CXX_EXPORT std::string & helics::typeNameStringRef | ( | DataType | type | ) |
sometimes we just need a ref to a string for the basic types
References typeNameStringRef().
Referenced by getCleanedTypeName(), helicsFederateRegisterGlobalInput(), helicsFederateRegisterGlobalPublication(), helicsFederateRegisterInput(), helicsFederateRegisterPublication(), typeConvert(), and typeNameStringRef().
std::enable_if_t<std::is_arithmetic<X>::value && (!std::is_same<X, char>::value)> helics::valueExtract | ( | const data_view & | dv, |
DataType | baseType, | ||
X & | val | ||
) |
assume it is some numeric type (int or double)
HELICS_CXX_EXPORT void helics::valueExtract | ( | const defV & | dv, |
bool & | val | ||
) |
extract the value from a variant to a bool
References helicsBoolValue(), and vectorNorm().
HELICS_CXX_EXPORT void helics::valueExtract | ( | const defV & | dv, |
char & | val | ||
) |
extract the value from a variant to a character
References getDoubleFromString(), and invalidDouble.
HELICS_CXX_EXPORT void helics::valueExtract | ( | const defV & | dv, |
NamedPoint & | val | ||
) |
extract the value from a variant to a named point
References helicsComplexString(), helicsComplexVectorString(), helicsGetNamedPoint(), helicsVectorString(), helics::NamedPoint::name, and helics::NamedPoint::value.
HELICS_CXX_EXPORT void helics::valueExtract | ( | const defV & | dv, |
std::complex< double > & | val | ||
) |
extract the value from a variant to a complex number
References getComplexFromString().
HELICS_CXX_EXPORT void helics::valueExtract | ( | const defV & | dv, |
std::string & | val | ||
) |
extract the value from a variant to a string
References helicsComplexString(), helicsComplexVectorString(), helicsNamedPointString(), and helicsVectorString().
HELICS_CXX_EXPORT void helics::valueExtract | ( | const defV & | dv, |
std::vector< double > & | val | ||
) |
extract the value from a variant to a vector of doubles
References helicsGetVector().
HELICS_CXX_EXPORT void helics::valueExtract | ( | const defV & | dv, |
std::vector< std::complex< double >> & | val | ||
) |
extract the value from a variant to a complex vector of doubles
References helicsGetComplexVector().
extract the value from a variant to a named point
References getDoubleFromString(), getIntFromString(), and timeZero.
std::enable_if_t<std::is_arithmetic<X>::value && (!std::is_same<X, char>::value)> helics::valueExtract | ( | const defV & | dv, |
X & | val | ||
) |
extract the value from a variant to a numerical type
References getDoubleFromString(), getIntFromString(), and vectorNorm().
HELICS_CXX_EXPORT std::vector< std::string > helics::vectorizeAndSortQueryResult | ( | std::string_view | queryres | ) |
function takes a query result, vectorizes and sorts it if the query is a vector result, if not the results go into the first element of the vector
References vectorizeQueryResult().
HELICS_CXX_EXPORT std::vector< int > helics::vectorizeIndexQuery | ( | std::string_view | queryres | ) |
function takes a query result and vectorizes it if the query is a vector result of integer indices, if not the results are an empty vector
HELICS_CXX_EXPORT std::vector< std::string > helics::vectorizeQueryResult | ( | std::string_view | queryres | ) |
function takes a query result and vectorizes it if the query is a vector result, if not the results go into the first element of the vector
Referenced by helics::apps::Probe::initialize(), and vectorizeAndSortQueryResult().
HELICS_CXX_EXPORT double helics::vectorNorm | ( | const std::vector< double > & | vec | ) |
compute the L2 norm of a vector
References vectorNorm().
Referenced by valueExtract(), and vectorNorm().
HELICS_CXX_EXPORT double helics::vectorNorm | ( | const std::vector< std::complex< double >> & | vec | ) |
compute the L2 norm of a magnitudes of a complex vector
References vectorNorm().
HELICS_CXX_EXPORT bool helics::waitForFed | ( | helics::Federate * | fed, |
std::string_view | fedName, | ||
std::chrono::milliseconds | timeout = std::chrono::milliseconds(10000) |
||
) |
helper function to wait for a particular federate to be created
this is useful if some reason we need to make sure a federate is created before proceeding
fed | a pointer to the federate |
fedName | the name of the federate we are querying |
timeout | the amount of time in ms to wait before returning false |
References helics::Federate::query().
HELICS_CXX_EXPORT bool helics::waitForInit | ( | helics::Federate * | fed, |
std::string_view | fedName, | ||
std::chrono::milliseconds | timeout = std::chrono::milliseconds(10000) |
||
) |
helper function to wait for a particular federate has requested initialization mode
this is useful for querying information and being reasonably certain the federate is done adding to its interface
fed | a pointer to the federate |
fedName | the name of the federate we are querying |
timeout | the time to wait for the fed to initialize |
References HELICS_SEQUENCING_MODE_ORDERED, and helics::Federate::query().
|
constexpr |
build flags used to compile helics
Referenced by helicsGetBuildFlags(), and systemInfo().
definition of large time representing simulation end
Referenced by helics::TimeDependencies::checkIfReadyForTimeGrant(), helics::TimeDependencies::getMinDependency(), helics::GlobalTimeCoordinator::updateTimeFactors(), and helics::TimeCoordinator::updateTimeFactors().
|
constexpr |
compiler used to build helics
Referenced by helicsGetCompilerVersion(), and systemInfo().
|
constexpr |
|
constexpr |
|
constexpr |
identifier to target the local core even if the global id hasn't been assigned yet
Referenced by helics::CommonCore::setGlobal().
|
constexpr |
this special handle can be used to directly send a message in a core
Referenced by helics::CommonCore::sendMessage().
|
constexpr |
a shift in the global id index to discriminate between global ids of brokers vs federates
Referenced by getSpecialFederateId().
|
constexpr |
a shift in the global federate id numbers to allow discrimination between local ids and global ones this value allows 131072 federates to be available in each core 1,878,917,120 allowable federates in the system and 268,435,455 brokers allowed if we need more than that this, HELICS as a program has been phenomenally successful beyond all wildest imaginations and we can probably afford to change these to 64 bit numbers to accommodate. Of the available federates there are 2 federate numbers that can be defined per core/broker for various purposes. These are the upper number of federate id's so 536,870,910 reserved federate id's. An ID of 1 is reserved for the root broker
|
constexpr |
the block size for global priority levels
|
constexpr |
constant to use for indicating the id of the root broker
Referenced by getSpecialFederateId(), helics::CoreBroker::setAsRoot(), and helics::CommonCore::setGlobal().
|
constexpr |
common definition of currentTime in initialization mode
Referenced by helics::Federate::enteringExecutingMode(), helics::MessageFederateManager::initializeToExecuteStateTransition(), and helics::ValueFederateManager::initializeToExecuteStateTransition().
|
constexpr |
defining an invalid id value
const std::map<LogLevels, std::string_view> helics::levelMaps |
|
constexpr |
definition of the smallest negative increment of time
|
constexpr |
constant to use for indicating that a command is for the parent object
Referenced by helics::FilterFederate::createFilter(), helics::TranslatorFederate::createTranslator(), helics::BaseTimeCoordinator::enteringExecMode(), helics::TimeCoordinator::enteringExecMode(), helics::CommonCore::processDisconnect(), helics::FilterFederate::processMessageFilter(), helics::BaseTimeCoordinator::processTimeMessage(), helics::CommonCore::registerFederate(), helics::BrokerBase::saveProfilingData(), helics::CommonCore::sendCommand(), and helics::TimeoutMonitor::tick().
|
constexpr |
definition of the minimum time resolution
Referenced by helics::apps::Source::runTo().
|
constexpr |
constexpr definition for starting time
Referenced by helics::InputInfo::addData(), helics::AsyncTimeCoordinator::checkExecEntry(), helics::TimeCoordinator::checkExecEntry(), helics::PublicationInfo::CheckSetValue(), helics::Message::clear(), helics::BrokerBase::configureBase(), helics::FederateState::enterExecutingMode(), helics::FederateState::finalize(), helics::ActionMessage::fromByteArray(), helics::TimeCoordinator::generateConfig(), helics::FederateState::logMessage(), helics::Federate::requestNextStep(), helics::CommonCore::requestTimeIterative(), helics::apps::Recorder::runTo(), helics::apps::Clone::runTo(), helics::apps::Player::runTo(), helics::apps::Source::runTo(), helics::DelayFilterOperation::set(), helics::BrokerBase::setErrorState(), helics::CommonCore::setTimeProperty(), helics::TimeCoordinator::updateMessageTime(), helics::TimeCoordinator::updateValueTime(), and valueExtract().
|
constexpr |
|
constexpr |
the build string if any
Referenced by systemInfo().
|
constexpr |
get the Major version number
Referenced by systemInfo().
|
constexpr |
get the Minor version number
Referenced by systemInfo().
|
constexpr |
get the patch number
Referenced by systemInfo().
|
constexpr |
a string representation of the HELICS version
Referenced by helicsGetVersion(), and systemInfo().