helics  3.0.1
helics_definitions.hpp
Go to the documentation of this file.
1 /*
2 Copyright (c) 2017-2021,
3 Battelle Memorial Institute; Lawrence Livermore National Security, LLC; Alliance for Sustainable
4 Energy, LLC. See the top-level NOTICE for additional details. All rights reserved.
5 SPDX-License-Identifier: BSD-3-Clause
6 */
7 #pragma once
8 
12 #include "helics/helics_enums.h"
13 
14 namespace helics {
18 namespace defs {
20  enum Flags : int32_t {
90  };
92  enum Errors : int32_t {
117  };
118 
120  enum Properties : int32_t {
121  TIME_DELTA = HELICS_PROPERTY_TIME_DELTA,
126  RT_TOLERANCE = HELICS_PROPERTY_TIME_RT_TOLERANCE,
127  GRANT_TIMEOUT = HELICS_PROPERTY_TIME_GRANT_TIMEOUT,
128  INPUT_DELAY = HELICS_PROPERTY_TIME_INPUT_DELAY,
129  OUTPUT_DELAY = HELICS_PROPERTY_TIME_OUTPUT_DELAY,
130  MAX_ITERATIONS = HELICS_PROPERTY_INT_MAX_ITERATIONS,
131  LOG_LEVEL = HELICS_PROPERTY_INT_LOG_LEVEL,
132  FILE_LOG_LEVEL = HELICS_PROPERTY_INT_FILE_LOG_LEVEL,
133  CONSOLE_LOG_LEVEL = HELICS_PROPERTY_INT_CONSOLE_LOG_LEVEL
134  };
135 
137  enum Options : int32_t {
138  CONNECTION_REQUIRED = HELICS_HANDLE_OPTION_CONNECTION_REQUIRED,
139  CONNECTION_OPTIONAL = HELICS_HANDLE_OPTION_CONNECTION_OPTIONAL,
140  SINGLE_CONNECTION_ONLY = HELICS_HANDLE_OPTION_SINGLE_CONNECTION_ONLY,
141  MULTIPLE_CONNECTIONS_ALLOWED = HELICS_HANDLE_OPTION_MULTIPLE_CONNECTIONS_ALLOWED,
142  HANDLE_ONLY_TRANSMIT_ON_CHANGE = HELICS_HANDLE_OPTION_ONLY_TRANSMIT_ON_CHANGE,
143  HANDLE_ONLY_UPDATE_ON_CHANGE = HELICS_HANDLE_OPTION_ONLY_UPDATE_ON_CHANGE,
144  BUFFER_DATA = HELICS_HANDLE_OPTION_BUFFER_DATA,
145  IGNORE_INTERRUPTS = HELICS_HANDLE_OPTION_IGNORE_INTERRUPTS,
146  STRICT_TYPE_CHECKING = HELICS_HANDLE_OPTION_STRICT_TYPE_CHECKING,
147  IGNORE_UNIT_MISMATCH = HELICS_HANDLE_OPTION_IGNORE_UNIT_MISMATCH,
148  MULTI_INPUT_HANDLING_METHOD = HELICS_HANDLE_OPTION_MULTI_INPUT_HANDLING_METHOD,
149  INPUT_PRIORITY_LOCATION = HELICS_HANDLE_OPTION_INPUT_PRIORITY_LOCATION,
150  CLEAR_PRIORITY_LIST = HELICS_HANDLE_OPTION_CLEAR_PRIORITY_LIST,
152  };
153 
154 } // namespace defs
155 } // namespace helics
helics::defs::WAIT_FOR_CURRENT_TIME_UPDATE
@ WAIT_FOR_CURRENT_TIME_UPDATE
Definition: helics_definitions.hpp:45
helics::defs::EVENT_TRIGGERED
@ EVENT_TRIGGERED
Definition: helics_definitions.hpp:83
HELICS_HANDLE_OPTION_CLEAR_PRIORITY_LIST
@ HELICS_HANDLE_OPTION_CLEAR_PRIORITY_LIST
Definition: helics_enums.h:333
HELICS_HANDLE_OPTION_ONLY_TRANSMIT_ON_CHANGE
@ HELICS_HANDLE_OPTION_ONLY_TRANSMIT_ON_CHANGE
Definition: helics_enums.h:323
HELICS_FLAG_INTERRUPTIBLE
@ HELICS_FLAG_INTERRUPTIBLE
Definition: helics_enums.h:103
helics::defs::SLOW_RESPONDING
@ SLOW_RESPONDING
Definition: helics_definitions.hpp:30
HELICS_FLAG_DEBUGGING
@ HELICS_FLAG_DEBUGGING
Definition: helics_enums.h:162
HELICS_FLAG_FORWARD_COMPUTE
@ HELICS_FLAG_FORWARD_COMPUTE
Definition: helics_enums.h:123
HELICS_ERROR_INVALID_STATE_TRANSITION
@ HELICS_ERROR_INVALID_STATE_TRANSITION
Definition: helics_enums.h:220
HELICS_HANDLE_OPTION_ONLY_UPDATE_ON_CHANGE
@ HELICS_HANDLE_OPTION_ONLY_UPDATE_ON_CHANGE
Definition: helics_enums.h:325
HELICS_HANDLE_OPTION_IGNORE_INTERRUPTS
@ HELICS_HANDLE_OPTION_IGNORE_INTERRUPTS
Definition: helics_enums.h:327
HELICS_HANDLE_OPTION_STRICT_TYPE_CHECKING
@ HELICS_HANDLE_OPTION_STRICT_TYPE_CHECKING
Definition: helics_enums.h:318
helics::defs::ONLY_TRANSMIT_ON_CHANGE
@ ONLY_TRANSMIT_ON_CHANGE
Definition: helics_definitions.hpp:39
helics::defs::Options
Options
Definition: helics_definitions.hpp:137
HELICS_ERROR_INVALID_OBJECT
@ HELICS_ERROR_INVALID_OBJECT
Definition: helics_enums.h:230
helics::defs::EXECUTION_FAILURE
@ EXECUTION_FAILURE
Definition: helics_definitions.hpp:114
HELICS_ERROR_REGISTRATION_FAILURE
@ HELICS_ERROR_REGISTRATION_FAILURE
Definition: helics_enums.h:234
HELICS_FLAG_STRICT_CONFIG_CHECKING
@ HELICS_FLAG_STRICT_CONFIG_CHECKING
Definition: helics_enums.h:132
HELICS_ERROR_DISCARD
@ HELICS_ERROR_DISCARD
Definition: helics_enums.h:226
HELICS_FLAG_LOCAL_PROFILING_CAPTURE
@ HELICS_FLAG_LOCAL_PROFILING_CAPTURE
Definition: helics_enums.h:140
HELICS_FLAG_WAIT_FOR_CURRENT_TIME_UPDATE
@ HELICS_FLAG_WAIT_FOR_CURRENT_TIME_UPDATE
Definition: helics_enums.h:114
HELICS_FLAG_SOURCE_ONLY
@ HELICS_FLAG_SOURCE_ONLY
Definition: helics_enums.h:105
HELICS_HANDLE_OPTION_INPUT_PRIORITY_LOCATION
@ HELICS_HANDLE_OPTION_INPUT_PRIORITY_LOCATION
Definition: helics_enums.h:331
HELICS_ERROR_CONNECTION_FAILURE
@ HELICS_ERROR_CONNECTION_FAILURE
Definition: helics_enums.h:232
HELICS_FLAG_PROFILING
@ HELICS_FLAG_PROFILING
Definition: helics_enums.h:170
helics::defs::IGNORE_INPUT_UNIT_MISMATCH
@ IGNORE_INPUT_UNIT_MISMATCH
Definition: helics_definitions.hpp:81
helics::defs::REGISTRATION_FAILURE
@ REGISTRATION_FAILURE
Definition: helics_definitions.hpp:96
HELICS_ERROR_INVALID_FUNCTION_CALL
@ HELICS_ERROR_INVALID_FUNCTION_CALL
Definition: helics_enums.h:218
helics::defs::OTHER
@ OTHER
Definition: helics_definitions.hpp:116
helics::defs::INTERRUPTIBLE
@ INTERRUPTIBLE
Definition: helics_definitions.hpp:26
CONNECTIONS
@ CONNECTIONS
print summary+ federate level connection information
Definition: loggingHelper.hpp:26
HELICS_HANDLE_OPTION_CONNECTION_OPTIONAL
@ HELICS_HANDLE_OPTION_CONNECTION_OPTIONAL
Definition: helics_enums.h:310
HELICS_FLAG_REALTIME
@ HELICS_FLAG_REALTIME
Definition: helics_enums.h:125
helics::defs::ONLY_UPDATE_ON_CHANGE
@ ONLY_UPDATE_ON_CHANGE
Definition: helics_definitions.hpp:42
HELICS_FLAG_DELAY_INIT_ENTRY
@ HELICS_FLAG_DELAY_INIT_ENTRY
Definition: helics_enums.h:146
HELICS_PROPERTY_INT_CONSOLE_LOG_LEVEL
@ HELICS_PROPERTY_INT_CONSOLE_LOG_LEVEL
Definition: helics_enums.h:274
HELICS_FLAG_OBSERVER
@ HELICS_FLAG_OBSERVER
Definition: helics_enums.h:99
HELICS_FLAG_ROLLBACK
@ HELICS_FLAG_ROLLBACK
Definition: helics_enums.h:121
helics::defs::REALTIME
@ REALTIME
Definition: helics_definitions.hpp:56
HELICS_FLAG_IGNORE_TIME_MISMATCH_WARNINGS
@ HELICS_FLAG_IGNORE_TIME_MISMATCH_WARNINGS
Definition: helics_enums.h:129
HELICS_WARNING
@ HELICS_WARNING
Definition: helics_enums.h:222
helics::defs::SINGLE_THREAD_FEDERATE
@ SINGLE_THREAD_FEDERATE
Definition: helics_definitions.hpp:58
helics::defs::STRICT_CONFIG_CHECKING
@ STRICT_CONFIG_CHECKING
Definition: helics_definitions.hpp:79
HELICS_PROPERTY_INT_LOG_LEVEL
@ HELICS_PROPERTY_INT_LOG_LEVEL
Definition: helics_enums.h:268
helics::defs::ROLLBACK
@ ROLLBACK
Definition: helics_definitions.hpp:51
HELICS_ERROR_OTHER
@ HELICS_ERROR_OTHER
Definition: helics_enums.h:211
HELICS_PROPERTY_INT_MAX_ITERATIONS
@ HELICS_PROPERTY_INT_MAX_ITERATIONS
Definition: helics_enums.h:266
helics::defs::OK
@ OK
Definition: helics_definitions.hpp:94
defs
helics_enums.h
base helics enumerations for C and C++ API's
HELICS_HANDLE_OPTION_MULTI_INPUT_HANDLING_METHOD
@ HELICS_HANDLE_OPTION_MULTI_INPUT_HANDLING_METHOD
Definition: helics_enums.h:329
helics::defs::IGNORE_TIME_MISMATCH_WARNINGS
@ IGNORE_TIME_MISMATCH_WARNINGS
Definition: helics_definitions.hpp:65
HELICS_ERROR_INVALID_ARGUMENT
@ HELICS_ERROR_INVALID_ARGUMENT
Definition: helics_enums.h:228
helics::defs::DEBUGGING
@ DEBUGGING
Definition: helics_definitions.hpp:69
HELICS_PROPERTY_TIME_PERIOD
@ HELICS_PROPERTY_TIME_PERIOD
Definition: helics_enums.h:246
helics::defs::Errors
Errors
Definition: helics_definitions.hpp:92
HELICS_PROPERTY_TIME_RT_TOLERANCE
@ HELICS_PROPERTY_TIME_RT_TOLERANCE
Definition: helics_enums.h:257
HELICS_HANDLE_OPTION_CONNECTION_REQUIRED
@ HELICS_HANDLE_OPTION_CONNECTION_REQUIRED
Definition: helics_enums.h:307
HELICS_PROPERTY_TIME_DELTA
@ HELICS_PROPERTY_TIME_DELTA
Definition: helics_enums.h:244
helics::defs::DUMPLOG
@ DUMPLOG
Definition: helics_definitions.hpp:71
helics::defs::SYSTEM_FAILURE
@ SYSTEM_FAILURE
Definition: helics_definitions.hpp:106
HELICS_FLAG_FORCE_LOGGING_FLUSH
@ HELICS_FLAG_FORCE_LOGGING_FLUSH
Definition: helics_enums.h:166
HELICS_FLAG_TERMINATE_ON_ERROR
@ HELICS_FLAG_TERMINATE_ON_ERROR
Definition: helics_enums.h:164
HELICS_FLAG_ONLY_UPDATE_ON_CHANGE
@ HELICS_FLAG_ONLY_UPDATE_ON_CHANGE
Definition: helics_enums.h:111
PROFILING
@ PROFILING
profiling log level
Definition: loggingHelper.hpp:23
helics::defs::FORCE_LOGGING_FLUSH
@ FORCE_LOGGING_FLUSH
Definition: helics_definitions.hpp:67
helics::defs::PROFILING_MARKER
@ PROFILING_MARKER
Definition: helics_definitions.hpp:87
HELICS_FLAG_EVENT_TRIGGERED
@ HELICS_FLAG_EVENT_TRIGGERED
Definition: helics_enums.h:137
HELICS_HANDLE_OPTION_MULTIPLE_CONNECTIONS_ALLOWED
@ HELICS_HANDLE_OPTION_MULTIPLE_CONNECTIONS_ALLOWED
Definition: helics_enums.h:314
helics::defs::LOCAL_PROFILING_CAPTURE
@ LOCAL_PROFILING_CAPTURE
Definition: helics_definitions.hpp:89
HELICS_HANDLE_OPTION_CONNECTIONS
@ HELICS_HANDLE_OPTION_CONNECTIONS
Definition: helics_enums.h:335
HELICS_OK
@ HELICS_OK
Definition: helics_enums.h:236
helics::defs::SOURCE_ONLY
@ SOURCE_ONLY
Definition: helics_definitions.hpp:36
helics
the main namespace for the helics co-simulation library User functions will be in the helics namespac...
Definition: AsyncFedCallInfo.hpp:14
helics::defs::FORWARD_COMPUTE
@ FORWARD_COMPUTE
Definition: helics_definitions.hpp:54
helics::defs::Flags
Flags
Definition: helics_definitions.hpp:20
HELICS_PROPERTY_TIME_RT_LAG
@ HELICS_PROPERTY_TIME_RT_LAG
Definition: helics_enums.h:251
HELICS_FLAG_SINGLE_THREAD_FEDERATE
@ HELICS_FLAG_SINGLE_THREAD_FEDERATE
Definition: helics_enums.h:127
HELICS_HANDLE_OPTION_IGNORE_UNIT_MISMATCH
@ HELICS_HANDLE_OPTION_IGNORE_UNIT_MISMATCH
Definition: helics_enums.h:320
helics::defs::ENABLE_INIT_ENTRY
@ ENABLE_INIT_ENTRY
Definition: helics_definitions.hpp:63
helics::defs::CONNECTIONS_REQUIRED
@ CONNECTIONS_REQUIRED
Definition: helics_definitions.hpp:73
helics::defs::TERMINATE_ON_ERROR
@ TERMINATE_ON_ERROR
Definition: helics_definitions.hpp:34
HELICS_FLAG_ENABLE_INIT_ENTRY
@ HELICS_FLAG_ENABLE_INIT_ENTRY
Definition: helics_enums.h:148
HELICS_HANDLE_OPTION_BUFFER_DATA
@ HELICS_HANDLE_OPTION_BUFFER_DATA
Definition: helics_enums.h:316
helics::defs::STRICT_INPUT_TYPE_CHECKING
@ STRICT_INPUT_TYPE_CHECKING
Definition: helics_definitions.hpp:77
helics::defs::OBSERVER
@ OBSERVER
Definition: helics_definitions.hpp:22
HELICS_FLAG_RESTRICTIVE_TIME_POLICY
@ HELICS_FLAG_RESTRICTIVE_TIME_POLICY
Definition: helics_enums.h:119
helics::defs::RESTRICTIVE_TIME_POLICY
@ RESTRICTIVE_TIME_POLICY
Definition: helics_definitions.hpp:49
helics::defs::INVALID_ARGUMENT
@ INVALID_ARGUMENT
Definition: helics_definitions.hpp:102
HELICS_HANDLE_OPTION_SINGLE_CONNECTION_ONLY
@ HELICS_HANDLE_OPTION_SINGLE_CONNECTION_ONLY
Definition: helics_enums.h:312
HELICS_PROPERTY_TIME_RT_LEAD
@ HELICS_PROPERTY_TIME_RT_LEAD
Definition: helics_enums.h:254
HELICS_PROPERTY_TIME_OUTPUT_DELAY
@ HELICS_PROPERTY_TIME_OUTPUT_DELAY
Definition: helics_enums.h:261
helics::defs::DISCARD
@ DISCARD
Definition: helics_definitions.hpp:104
HELICS_PROPERTY_TIME_INPUT_DELAY
@ HELICS_PROPERTY_TIME_INPUT_DELAY
Definition: helics_enums.h:259
HELICS_FLAG_UNINTERRUPTIBLE
@ HELICS_FLAG_UNINTERRUPTIBLE
Definition: helics_enums.h:101
HELICS_ERROR_EXECUTION_FAILURE
@ HELICS_ERROR_EXECUTION_FAILURE
Definition: helics_enums.h:216
HELICS_PROPERTY_INT_FILE_LOG_LEVEL
@ HELICS_PROPERTY_INT_FILE_LOG_LEVEL
Definition: helics_enums.h:271
helics::defs::CONNECTION_FAILURE
@ CONNECTION_FAILURE
Definition: helics_definitions.hpp:98
WARNING
@ WARNING
print/log warning and errors
Definition: loggingHelper.hpp:24
HELICS_FLAG_ONLY_TRANSMIT_ON_CHANGE
@ HELICS_FLAG_ONLY_TRANSMIT_ON_CHANGE
Definition: helics_enums.h:108
helics::defs::INVALID_STATE_TRANSITION
@ INVALID_STATE_TRANSITION
Definition: helics_definitions.hpp:110
HELICS_FLAG_PROFILING_MARKER
@ HELICS_FLAG_PROFILING_MARKER
Definition: helics_enums.h:172
helics::defs::UNINTERRUPTIBLE
@ UNINTERRUPTIBLE
Definition: helics_definitions.hpp:24
helics::defs::CONNECTIONS_OPTIONAL
@ CONNECTIONS_OPTIONAL
Definition: helics_definitions.hpp:75
helics::defs::INVALID_FUNCTION_CALL
@ INVALID_FUNCTION_CALL
Definition: helics_definitions.hpp:112
helics::defs::Properties
Properties
Definition: helics_definitions.hpp:120
HELICS_PROPERTY_TIME_GRANT_TIMEOUT
@ HELICS_PROPERTY_TIME_GRANT_TIMEOUT
Definition: helics_enums.h:264
HELICS_PROPERTY_TIME_OFFSET
@ HELICS_PROPERTY_TIME_OFFSET
Definition: helics_enums.h:248
HELICS_FLAG_DUMPLOG
@ HELICS_FLAG_DUMPLOG
Definition: helics_enums.h:168
helics::defs::DELAY_INIT_ENTRY
@ DELAY_INIT_ENTRY
Definition: helics_definitions.hpp:61
HELICS_ERROR_SYSTEM_FAILURE
@ HELICS_ERROR_SYSTEM_FAILURE
Definition: helics_enums.h:224
helics::defs::INVALID_OBJECT
@ INVALID_OBJECT
Definition: helics_definitions.hpp:100
HELICS_FLAG_SLOW_RESPONDING
@ HELICS_FLAG_SLOW_RESPONDING
Definition: helics_enums.h:158