Go to the documentation of this file.
66 * @note The event stream is not thread-safe. If the same stream handle is to be used by multiple threads,
70 #include "ntapi/commontypes.h"
71 #include "ntapi/stream_config.h"
79 NT_EVENT_SOURCE_SENSOR = (1 << 1), //!< Bit for sensor change event - Data placed in @ref NtEventSensor_s
80 NT_EVENT_SOURCE_CONFIG = (1 << 2), //!< Bit for config change made events - Data placed in @ref NtConfig_s
81 NT_EVENT_SOURCE_TIMESYNC = (1 << 3), //!< Bit for time sync events - Data placed in @ref NtEventTimeSync_s
82 NT_EVENT_SOURCE_SDRAM_FILL_LEVEL = (1 << 4), //!< Bit for host buffer fill level warning - Data placed in @ref NtSDRAMFillLevel_s
83 NT_EVENT_SOURCE_PTP_PORT = (1 << 5), //!< Bit for PTP port events - Data placed in @ref NtEventPtpPort_s
84 NT_EVENT_SOURCE_TIMESYNC_STATE_MACHINE = (1 << 6),//!< Bit for time sync state machine - Data placed in @ref NtEventTimeSyncStateMachine_s
91 NT_EVENT_SOURCE_TIMESYNC_STATE_MACHINE), //!< Bits for all events
94 NT_EVENT_LISTEN_TIMESTAMP_SAMPLE_ADAPTER0 = (1 << 23), //!< Listen for command event(s). Event raised on write
180 NT_EVENT_TIMESYNC_TIME_IN_SYNC, //!< TS clock changed from out-of-sync to in-sync with master clock based on configured threshold value. Note: no timestamp value supplied.
181 NT_EVENT_TIMESYNC_TIME_OUT_OF_SYNC, //!< TS clock changed from in-sync to out-of-sync with master clock based on configured threshold value. note: no timestamp value supplied.
184 NT_EVENT_TIMESYNC_EXTERNAL_DEVICE_LOST_SYNC_SIGNAL, //!< External device lost synchronization signal
186 NT_EVENT_TIMESYNC_EXTERNAL_DEVICE_LOST_TIME_OF_DAY, //!< External device lost time of day information
211 #define MAX_SDRAM_FILL_LEVEL_STREAMS 256
216 uint32_t numStreams; //!< Number of streams using the host buffers. Also indicating the use depth of @ref aStreams.
217 uint64_t used; //!< SDRAM used. This shows the amount of adapter memory used. One must pay attention to this value.
219 //!< This happens if the adapter is not able to transfer the received data to the host buffers on the PC
229 //!< The application is not able to release the packets (host buffer) fast enough so the data is
230 //!< ready for the driver and adapter to fill with new data. The result is that the adapter runs
244 uint64_t enQueued; //!< The data currently enqueued to the stream. The stream with the largest enqueued amount is the slowest stream and probably the one that causes the packet loss.
246 } aStreams[MAX_SDRAM_FILL_LEVEL_STREAMS];
253 enum NtSensorSource_e source; //!< The source of the sensor (the port or adapter on which the sensor resides)
254 uint32_t sourceIndex; //!< The source index - the adapter number or port number where the sensor resides
255 uint32_t sensorIndex; //!< The sensor index - the index of the sensor within the group of sensors. Each adapter or port has a different number and sensor type.
287 uint8_t reserved; //!< Reserved for future use
303 struct NtSDRAMFillLevel_s sdramFillLevelEvent; //!< Host buffer usage event - @ref NT_EVENT_SOURCE_SDRAM_FILL_LEVEL
305 struct NtEventTimeSyncStateMachine_s timeSyncStateMachineEvent; //!< Time sync change state event - @ref NT_EVENT_SOURCE_TIMESYNC_STATE_MACHINE
307 } NtEvent_t;
327 * @param[in] eventMask @ref NtEventSource_e - A bitmask defining the sources of events to receive
332 int NT_EventOpen(NtEventStream_t *hStream, const char *name, uint32_t eventMask);
375 int NT_EventClose(NtEventStream_t hStream);