reactor-c
C Runtime for Lingua Franca
Loading...
Searching...
No Matches
reactor_threaded.h
Go to the documentation of this file.
1
10#ifndef REACTOR_THREADED_H
11#define REACTOR_THREADED_H
12
13#include "lf_types.h"
14
23void try_advance_level(environment_t* env, volatile size_t* next_reaction_level);
24
31
61void _lf_increment_tag_barrier(environment_t* env, tag_t future_tag);
62
74
90
91int _lf_wait_on_tag_barrier(environment_t* env, tag_t proposed_tag);
93bool wait_until(instant_t logical_time_ns, lf_cond_t* condition);
95tag_t send_next_event_tag(environment_t* env, tag_t tag, bool wait_for_reply);
97#endif // REACTOR_THREADED_H
Type definitions that are widely used across different parts of the runtime.
void _lf_increment_tag_barrier_locked(environment_t *env, tag_t future_tag)
Version of _lf_increment_tag_barrier to call when the caller holds the mutex. This version does not a...
Definition reactor_threaded.c:50
void lf_synchronize_with_other_federates(void)
int _lf_wait_on_tag_barrier(environment_t *env, tag_t proposed_tag)
Definition reactor_threaded.c:139
void _lf_decrement_tag_barrier_locked(environment_t *env)
Definition reactor_threaded.c:99
void try_advance_level(environment_t *env, volatile size_t *next_reaction_level)
Advance to the next level. For federated runtimes, this function should stall the advance until we kn...
Definition reactor_threaded.c:853
tag_t send_next_event_tag(environment_t *env, tag_t tag, bool wait_for_reply)
Definition reactor_threaded.c:317
tag_t get_next_event_tag(environment_t *env)
Definition reactor_threaded.c:275
void _lf_increment_tag_barrier(environment_t *env, tag_t future_tag)
Definition reactor_threaded.c:92
bool wait_until(instant_t logical_time_ns, lf_cond_t *condition)
Definition reactor_threaded.c:223
void _lf_next_locked(environment_t *env)
Definition reactor_threaded.c:349
void lf_enqueue_port_absent_reactions(environment_t *env)
Execution environment. This struct contains information about the execution environment....
Definition environment.h:69
Definition lf_POSIX_threads_support.h:41
Definition tag.h:81
int64_t instant_t
Definition tag.h:66