Snapshot¶
This chapter describes the Snapshot interface, which allows multiple signal values to be read using a single call.
Usage¶
Usage pattern of the Snapshot interface is as follows:
Reserve a snapshot instance using the ReserveSnapshot method on the TopController interface.
Add signals to the snapshot instance.
Acquire signal values by triggering a sample.
Step 3 can be repeated as many times as desired. Signals can be added or removed between the samples.
A snapshot is released by calling Dispose (for C#), or by letting all shared pointers to the snapshot instance go out of scope (for C++).
Mode¶
The snapshot mechanism supports two modes for reading samples. The table Snapshot modes describes differences between these modes.
Mode |
Description |
Atomic |
Signal values are read synchronous to sample loop. The number of available resources supporting atomic mode might be limited. |
Relaxed |
Signal values are read asynchronously (number of available resources only limited by available controller memory). |