THM1176InstrumentManager 1.1
Qt Object abstraction for Metrolab THM1176
Loading...
Searching...
No Matches
THM1176InstrumentManagerTypes.h
Go to the documentation of this file.
1// Copyright (c) 2020 Metrolab Technology S.A., Geneva, Switzerland (www.metrolab.com)
2// See the included file LICENSE.txt for the licensing conditions.
3
7#pragma once
8
9#include "THM1176.h"
10#include <QtCore/QObject>
11
12namespace MTL
13{
14
26
43
45class CTHM1176UnitsList : public std::vector<eTHM1176Units>
46{
47};
48
51{
52public:
53 // Measurement data retrieved from Instrument Driver.
59 ushort Temp;
60
61 // Active measurement parameters.
67 bool SleepParm;
68
69 // Warnings.
71
74 : Units{}, Temp{}, CommFormat{}, SleepParm{}
75 {
76 }
77
79 void clear()
80 {
81 Bx.clear();
82 By.clear();
83 Bz.clear();
84 Units = kT;
85 Temp = 0;
86 TimestampList.clear();
87
88 AveragingParms.clear();
89 TriggerParms.clear();
90 OutputSelect.clear();
91 SleepParm = false;
92 RangeParms.clear();
94
95 Warnings.clear();
96 }
97
99 bool operator==(CMeasurement other) const
100 {
101 return (
102 Bx == other.Bx &&
103 By == other.By &&
104 Bz == other.Bz &&
105 Units == other.Units &&
106 Temp == other.Temp &&
107 TimestampList == other.TimestampList &&
108
110 TriggerParms == other.TriggerParms &&
111 OutputSelect == other.OutputSelect &&
112 SleepParm == other.SleepParm &&
113 RangeParms == other.RangeParms &&
114 CommFormat == other.CommFormat &&
115
116 Warnings == other.Warnings
117 );
118 }
119
121 bool operator!=(CMeasurement other) const
122 {
123 return (!operator==(other));
124 }
125};
126
127} // namespace
Interface definition for C++ API for Metrolab THM1176/TFM1186.
CErrorList Warnings
Any warnings returned during the measurement.
CFluxList Bx
Bx value for each measurement.
bool operator!=(CMeasurement other) const
Inequality operator.
eTHM1176Units Units
Measurement units for Bx, By, Bz.
void clear()
Clear the data structure to default values.
sInputTrigger< uParm > TriggerParms
Trigger parameters used for measurement.
CTimestampList TimestampList
Timestamp for each measurement.
sRange< uParm > RangeParms
Range parameters used for measurement.
sAveraging< uParm > AveragingParms
Averaging parameters used for measurement.
bool operator==(CMeasurement other) const
Equality operator.
sArbitraryMeasurements OutputSelect
Output selection parameters used for measurement.
bool SleepParm
Sleep parameters used for measurement.
CFluxList By
By value for each measurement.
ushort Temp
Temperature, in arbitrary units.
CFluxList Bz
Bz value for each measurement.
eCommunicationFormat CommFormat
Communication parameters used for measurement.
List of errors returned by the instrument.
List of flux density values.
eCommunicationFormat
Enumeration of possible formats for returned data.
@ kComFormatAscii
Human-legible text.
@ kMHzp
Equivalent proton NMR resonant frequency, in Mega-Hertz.
eTHM1176OperatingMode
Operating modes used to initiate actions or provide status.
@ kTHM1176RestoreZeroOffset
Restore the factory zero-offset setting.
@ kTHM1176CalibrateZeroOffset
Initiate the zero-offset calibration procedure.
@ kTHM1176Reset
Reset instrument.
@ kTHM1176NotConnected
Disconnect instrument.
@ kTHM1176Measure
Start a single measurement.
@ kTHM1176MeasureContinuously
Start a continuous measurement.
@ kTHM1176Idle
Place the instrument in idle mode.
eTHM1176Units
Enumeration of possible measurement units, including "ADC".
@ kmApm
Equivalent H in a vacuum, in mA/m.
@ kmGauss
Milli-Gauss.
@ kMHzp
Equivalent proton NMR resonant frequency, in Mega-Hertz.
@ kkApm
Equivalent H in a vacuum, in kA/m.
@ kApm
Equivalent H in a vacuum, in A/m.
@ kmT
Milli-Tesla.
@ kADC
Raw ADC values.
@ kuT
Micro-Tesla.
@ kkGauss
Kilo-Gauss.
Specify the measurement data to be returned.
Measurement range parameter.