|
Wasatch.VCPP 1.0.19
Visual C++ driver for Wasatch Photonics spectrometers
|
This is an internal class encapsulating state and control of all connected spectrometers. More...
#include <Driver.h>
Public Member Functions | |
| int | getNumberOfSpectrometers () |
| int | openAllSpectrometers () |
| bool | closeAllSpectrometers () |
| Spectrometer * | getSpectrometer (int index) |
| bool | removeSpectrometer (int index) |
| std::string | getLibraryVersion () |
Static Public Member Functions | |
| static Driver * | getInstance () |
| static void | destroy () |
Public Attributes | |
| const std::string | libraryVersion = "1.0.19" |
| This is where the "master version number" is stored for the library. More... | |
| Logger | logger |
This is an internal class encapsulating state and control of all connected spectrometers.
End-users / customers would not normally access this class directly; they should interact with the library through WasatchVCPPWrapper.h or WasatchVCPP::Proxy.
It is expected that this library will be called from multi-threaded code, and therefore should support (or at least "fail gracefully") concurrent access.
In general, this means that no more than one concurrent acquisition is supported at a time (via Spectrometer::mutAcquisition), and that only one control message may be exchanged over endpoint 0 at any given time (per Spectrometer).
There are no specific locks in place, presently, to preclude things like:
| const std::string WasatchVCPP::Driver::libraryVersion = "1.0.19" |
This is where the "master version number" is stored for the library.
It's not in WasatchVCPP.h because that file will often be customer-writeable...what we really want to know is what version of the LIBRARY was compiled into the DLL, not what the "current" customer API is.