ET System
16.4
|
This structure defines an Event which exists in shared memory, holds data, and gets passed from station to station. More...
#include <et.h>
Data Fields | |
struct et_event_t * | next |
Next event in linked list. More... | |
void * | tempdata |
For MacOS or non mutex-sharing systems, a temp event gotten by the server thread needs its data pointer stored while the user maps the temp file and puts that pointer in pdata field (when converting the pdata pointer back to a value the ET system uses, so the server thread can unmap it from memory, grab & restore the stored value). More... | |
void * | pdata |
Set to either data field pointer (shared mem), or to temp event buffer. More... | |
char * | data |
Pointer to shared memory data. More... | |
uint64_t | length |
Size of actual data in bytes. More... | |
uint64_t | memsize |
Total size of available data memory in bytes. More... | |
uint64_t | pointer |
For remote events, pointer to this event in the server's space (used for writing of modified events). More... | |
int | modify |
When "getting" events from a remote client, this flag tells server whether this event will be modified with the intention of sending it back to the server (ET_MODIFY) or whether only the header will be modified and returned (ET_MODIFY_HEADER) or whether there'll be no modification of the event (0). More... | |
int | priority |
Event priority, either ET_HIGH or ET_LOW. More... | |
int | owner |
Id of attachment that owns this event, else the system (-1). More... | |
int | temp |
ET_EVENT_TEMP if temporary event, else ET_EVENT_NORMAL. More... | |
int | age |
ET_EVENT_NEW if it's a new event, else ET_EVENT_USED (new events always go to GrandCentral if user crashes). More... | |
int | datastatus |
ET_DATA_OK normally, ET_DATA_CORRUPT if data corrupt, ET_DATA_POSSIBLY_CORRUPT if data questionable. More... | |
int | byteorder |
Use to track the data's endianness (set to 0x04030201). More... | |
int | group |
Group number, events are divided into groups for limiting the number of events producers have access to. More... | |
int | place |
Place number of event's relative position in shared mem starting with 0 (lowest memory position) and ending with (# of events - 1). More... | |
int | control [ET_STATION_SELECT_INTS] |
Array of ints to select on for entry into station. More... | |
char | filename [ET_TEMPNAME_LENGTH] |
Filename of temp event. More... | |
This structure defines an Event which exists in shared memory, holds data, and gets passed from station to station.
int et_event_t::age |
ET_EVENT_NEW if it's a new event, else ET_EVENT_USED (new events always go to GrandCentral if user crashes).
Referenced by et_event_put(), and et_events_put().
int et_event_t::byteorder |
Use to track the data's endianness (set to 0x04030201).
Referenced by et_event_getendian(), et_event_needtoswap(), et_event_setendian(), etr_event_get(), etr_event_put(), etr_events_get(), and etr_events_put().
int et_event_t::control[ET_STATION_SELECT_INTS] |
Array of ints to select on for entry into station.
Referenced by et_event_getcontrol(), et_event_setcontrol(), etr_event_get(), etr_event_put(), and etr_events_get().
char* et_event_t::data |
Pointer to shared memory data.
int et_event_t::datastatus |
ET_DATA_OK normally, ET_DATA_CORRUPT if data corrupt, ET_DATA_POSSIBLY_CORRUPT if data questionable.
Referenced by et_event_getdatastatus(), et_event_setdatastatus(), etr_event_get(), etr_event_put(), and etr_events_get().
char et_event_t::filename[ET_TEMPNAME_LENGTH] |
Filename of temp event.
Referenced by et_event_dump().
int et_event_t::group |
Group number, events are divided into groups for limiting the number of events producers have access to.
Referenced by et_event_getgroup(), et_event_new(), and et_events_new().
uint64_t et_event_t::length |
Size of actual data in bytes.
Referenced by et_event_getlength(), et_event_put(), et_event_setlength(), et_events_new(), et_events_new_group(), etr_event_get(), etr_event_new(), etr_event_put(), etr_events_get(), etr_events_new(), etr_events_new_group(), and etr_events_put().
uint64_t et_event_t::memsize |
Total size of available data memory in bytes.
Referenced by et_event_dump(), et_event_put(), et_event_setlength(), et_events_new(), et_events_new_group(), etr_event_get(), etr_event_new(), etr_event_put(), etr_events_get(), etr_events_new(), and etr_events_new_group().
int et_event_t::modify |
When "getting" events from a remote client, this flag tells server whether this event will be modified with the intention of sending it back to the server (ET_MODIFY) or whether only the header will be modified and returned (ET_MODIFY_HEADER) or whether there'll be no modification of the event (0).
Referenced by et_events_put(), etr_event_dump(), etr_event_get(), etr_event_new(), etr_event_put(), etr_events_get(), etr_events_new(), and etr_events_new_group().
struct et_event_t* et_event_t::next |
Next event in linked list.
int et_event_t::owner |
Id of attachment that owns this event, else the system (-1).
Referenced by et_event_dump(), et_event_put(), etr_event_new(), etr_event_put(), etr_events_new(), and etr_events_new_group().
void* et_event_t::pdata |
Set to either data field pointer (shared mem), or to temp event buffer.
Referenced by et_event_dump(), et_event_getdata(), et_event_put(), et_event_setdatabuffer(), et_events_get(), et_events_new(), et_events_new_group(), etr_event_dump(), etr_event_get(), etr_event_new(), etr_event_put(), and etr_events_put().
int et_event_t::place |
Place number of event's relative position in shared mem starting with 0 (lowest memory position) and ending with (# of events - 1).
Referenced by etr_event_dump(), etr_event_get(), etr_event_new(), etr_event_put(), etr_events_get(), etr_events_new(), and etr_events_new_group().
uint64_t et_event_t::pointer |
For remote events, pointer to this event in the server's space (used for writing of modified events).
int et_event_t::priority |
Event priority, either ET_HIGH or ET_LOW.
Referenced by et_event_getpriority(), et_event_setpriority(), etr_event_get(), etr_event_put(), and etr_events_get().
int et_event_t::temp |
ET_EVENT_TEMP if temporary event, else ET_EVENT_NORMAL.
Referenced by et_event_dump(), et_event_put(), etr_event_new(), etr_events_new(), and etr_events_new_group().
void* et_event_t::tempdata |
For MacOS or non mutex-sharing systems, a temp event gotten by the server thread needs its data pointer stored while the user maps the temp file and puts that pointer in pdata field (when converting the pdata pointer back to a value the ET system uses, so the server thread can unmap it from memory, grab & restore the stored value).