Wasatch.VCPP 1.0.19
Visual C++ driver for Wasatch Photonics spectrometers
Public Member Functions | Static Public Member Functions | Public Attributes | List of all members
WasatchVCPP::Driver Class Reference

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 ()
 
SpectrometergetSpectrometer (int index)
 
bool removeSpectrometer (int index)
 
std::string getLibraryVersion ()
 

Static Public Member Functions

static DrivergetInstance ()
 
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
 

Detailed Description

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.

Thread-Safety

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:

Member Data Documentation

◆ libraryVersion

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.

Note
this value is checked by scripts/deploy against the given release tag

The documentation for this class was generated from the following files: