![]() |
reactor-c 1.0
C Runtime for Lingua Franca
|
Type definitions that are widely used across different parts of the runtime. More...
#include <stdbool.h>#include "modal_models/modes.h"#include "utils/pqueue.h"#include "utils/pqueue_tag.h"#include "lf_token.h"#include "tag.h"#include "vector.h"Go to the source code of this file.
Data Structures | |
| struct | allocation_record_t |
| Allocation record to keep track of dynamically-allocated memory. More... | |
| struct | event_t |
| Event activation record to push onto the event queue. More... | |
| struct | lf_action_base_t |
| Base type for actions. More... | |
| struct | lf_action_internal_t |
| Internal part of the action structs. More... | |
| struct | lf_port_internal_t |
| Internal part of the port structs. More... | |
| struct | lf_tag_advancement_barrier_t |
| A struct representing a barrier in threaded LF programs. More... | |
| struct | reaction_t |
| Reaction activation record to push onto the reaction queue. More... | |
| struct | self_base_t |
| The base type for all reactor self structs. More... | |
| struct | trigger_t |
| Trigger struct representing an output, timer, action, or input. More... | |
Macros | |
| #define | SCHED_ADAPTIVE 1 |
| Experimental adaptive scheduler. | |
| #define | SCHED_GEDF_NP 2 |
| Experimental GEDF-NP scheduler. | |
| #define | SCHED_NP 3 |
| Default non-preemptive scheduler. | |
Typedefs | |
| typedef struct allocation_record_t | allocation_record_t |
| Allocation record to keep track of dynamically-allocated memory. | |
| typedef struct event_t | event_t |
| Event activation record for storing event queue entries. | |
| typedef pqueue_pri_t | index_t |
| Topological order index for reactions. | |
| typedef struct lf_tag_advancement_barrier_t | lf_tag_advancement_barrier_t |
| A struct representing a barrier in threaded LF programs. | |
| typedef void(* | reaction_function_t) (void *) |
| Reaction function type. | |
| typedef struct reaction_t | reaction_t |
| typedef struct self_base_t | self_base_t |
| The base type for all reactor self structs. | |
| typedef char * | string |
| String type so that we don't have to use {= char* =}. | |
| typedef int | trigger_handle_t |
| Handles for scheduled triggers. | |
| typedef struct trigger_t | trigger_t |
| typedef unsigned short int | ushort |
| Unsigned short type. | |
Enumerations | |
| enum | lf_spacing_policy_t { defer , drop , replace , update } |
| Policy for handling scheduled events that violate the specified minimum interarrival time. More... | |
| enum | port_status_t { absent = false , present = true , unknown } |
| Status of a given port at a given logical time. More... | |
| enum | reaction_status_t { inactive = 0 , queued , running } |
| Status of a given reaction at a given logical time. More... | |
Type definitions that are widely used across different parts of the runtime.
IMPORTANT: Many of the structs defined here require matching layouts and, if changed, will require changes in the code generator.
| typedef struct reaction_t reaction_t |
| typedef struct trigger_t trigger_t |