29 #ifndef OCEANDIRECT_SPECTROMETER_FEATURE_ADAPTER_H
30 #define OCEANDIRECT_SPECTROMETER_FEATURE_ADAPTER_H
32 #include "api/adapters/FeatureAdapterTemplate.h"
33 #include "common/public/SpectrumWithMetadata.h"
34 #include "common/buses/Bus.h"
35 #include "common/protocols/Protocol.h"
36 #include "vendors/OceanOptics/features/pixel/PixelFeatureInterface.h"
37 #include "vendors/OceanOptics/features/spectrometer/OOISpectrometerFeatureInterface.h"
45 OOISpectrometerFeatureInterface *spec,
46 const FeatureFamily &f,
47 Protocol *p, Bus *b,
unsigned short instanceIndex);
51 int getUnformattedSpectrum(
int *errorCode,
unsigned char *buffer,
int bufferLength);
52 int getFormattedSpectrum(
int *errorCode,
double* buffer,
int bufferLength);
53 int getFormattedSpectrumWithMetaData(
int *error_code, SpectrumWithMetadata *buffer,
int bufferLength);
55 void setStoredDarkSpectrum(
int* errorCode,
double* darkSpectrum,
int darkSpectrumLength);
56 int getStoredDarkSpectrum(
int* errorCode,
double* darkSpectrum,
int darkSpectrumLength);
57 int getDarkCorrectedSpectrum(
int* errorCode,
double* darkSpectrum,
int darkSpectrumLength,
58 double* darkCorrectedSpectrum,
int darkCorrectedSpectrumLength);
59 int darkCorrectSpectrum(
int* errorCode,
double* illuminatedSpectrum,
int illuminatedSpectrumLength,
60 double* darkCorrectedSpectrum,
int darkCorrectedSpectrumLength);
61 int getDarkCorrectedSpectrum(
int* errorCode,
double* darkCorrectedSpectrum,
int darkCorrectedSpectrumLength);
62 int darkCorrectSpectrum(
int* errorCode,
double* darkSpectrum,
int darkSpectrumLength,
double* illuminatedSpectrum,
63 int illuminatedSpectrumLength,
double* darkCorrectedSpectrum,
int darkCorrectedSpectrumLength);
65 int getNonlinearityCorrectedSpectrum(
int* errorCode,
double* darkSpectrum,
int darkSpectrumLength,
66 double* nonlinearityCoeffs,
int nonlinearityCoeffsLength,
67 double* nonlinearityCorrectedSpectrum,
int nonlinearityCorrectedSpectrumLength);
68 int nonlinearityCorrectSpectrum(
int* errorCode,
double* illuminatedSpectrum,
69 int illuminatedSpectrumLength,
double* nonlinearityCoeffs,
int nonlinearityCoeffsLength,
70 double* nonlinearityCorrectedSpectrum,
int nonlinearityCorrectedSpectrumLength);
71 int getNonlinearityCorrectedSpectrum(
int* errorCode,
double* nonlinearityCoeffs,
int nonlinearityCoeffsLength,
72 double* nonlinearityCorrectedSpectrum,
int nonlinearityCorrectedSpectrumLength);
73 int nonlinearityCorrectSpectrum(
int* errorCode,
double* darkSpectrum,
int darkSpectrumLength,
double* illuminatedSpectrum,
74 int illuminatedSpectrumLength,
double* nonlinearityCoeffs,
int nonlinearityCoeffsLength,
double* nonlinearityCorrectedSpectrum,
75 int nonlinearityCorrectedSpectrumLength);
77 int getUnformattedSpectrumLength(
int *errorCode);
78 int getFormattedSpectrumLength(
int *errorCode);
79 void setTriggerMode(
int *errorCode,
int mode);
80 int getTriggerMode(
int *errorCode);
81 unsigned long getAcquisitionDelayIncrementMicroseconds(
int* errorCode);
82 unsigned long getAcquisitionDelayMaximumMicroseconds(
int* errorCode);
83 unsigned long getAcquisitionDelayMinimumMicroseconds(
int* errorCode);
84 unsigned long getAcquisitionDelayMicroseconds(
int* errorCode);
85 void setAcquisitionDelayMicroseconds(
int* errorCode,
const unsigned long delay_usec);
88 int getWavelengths(
int *errorCode,
double *wavelengths,
int length);
89 int getWavelengthCoefficients(
int *errorCode,
double *wavelengths,
int length);
90 void setWavelengthCoefficients(
int *errorCode,
double *wavelengths,
int length);
91 int getElectricDarkPixelCount(
int *errorCode, PixelFeatureInterface *pixelFeatureInterface);
92 int getElectricDarkPixelIndices(
int *errorCode, PixelFeatureInterface *pixelFeatureInterface,
int *indices,
int length);
93 void setIntegrationTimeMicros(
int *errorCode,
unsigned long integrationTimeMicros);
94 unsigned long getIntegrationTimeMicros(
int *errorCode);
95 long getMinimumIntegrationTimeMicros(
int *errorCode);
96 long getMinimumAveragingIntegrationTimeMicros(
int* errorCode);
97 long getMaximumIntegrationTimeMicros(
int *errorCode);
98 double getMaximumIntensity(
int *errorCode);
100 void setSpectraSummationCount(
int* errorCode, std::uint32_t spectraCount);
101 int getSpectraSummationCount(
int* errorCode);
Definition: FeatureAdapterTemplate.h:44
Definition: SpectrometerFeatureAdapter.h:42
This is an interface to Advance features of OceanDirect that allow access to less common controls....
Definition: AcquisitionDelayFeatureAdapter.h:35