| THM1176InstrumentDriver 1.2 C++ API for Metrolab THM1176

Loading...
Searching...
No Matches
MTL::Instrument::CTHM1176Instrument< InstrType, RsrcMgrType > Class Template Reference

THM1176 instrument class. More...

`#include <THM1176.h>`

Inheritance diagram for MTL::Instrument::CTHM1176Instrument< InstrType, RsrcMgrType >:
[legend]
Collaboration diagram for MTL::Instrument::CTHM1176Instrument< InstrType, RsrcMgrType >:
[legend]

## Public Member Functions
| CTHM1176Instrument (RsrcMgrType &rResourceManager, tResourceName ResourceName)
| Constructor.
virtual | ~CTHM1176Instrument ()
| Destructor.
const CErrorList & | CurrentErrorList ()
| Fetch current error list.
void | ClearErrorList ()
| Clear the error list.
bool | Connect (U32 InitialTimeout, bool Exclusive=true, std::string *pErrMsg=nullptr)
| Open the connection to the instrument.
void | Disconnect ()
| Close the connection to the instrument.
bool | ParmAveragingSet (const sAveraging< uParm > &rAvg)
| Set the averaging parameter.
bool | ParmAveragingGet (sAveraging< uParm > &rAvg)
| Fetch the currently selected averaging parameter.
bool | ParmAveragingGet (sAveraging< sBoundedParm > &rAvg)
| Fetch current averaging parameter, incl. min/max/default.
bool | ParmSleepSet (bool Sleep)
| Set parameter whether to sleep after each acquisition.
bool | ParmSleepGet (bool &rSleep)
| Fetch parameter whether to sleep after each acquisition.
bool | ParmTriggerInputSet (const sInputTrigger< uParm > &rInputTrig)
| Set trigger input parameters.
bool | ParmTriggerInputGet (sInputTrigger< uParm > &rInputTrig)
| Fetch current trigger input parameters.
bool | ParmTriggerInputGet (sInputTrigger< sBoundedParm > &rInputTrig)
| Fetch current trigger input parameters, incl. min/max/default.
bool | ParmUnitsSet (eUnits Units)
| Set measurement units.
bool | ParmUnitsGet (eUnits &rUnits)
| Fetch currently selected measurement units.
bool | ParmUseCalibrationSet (bool UseCal)
| Set whether to return calibrated results.
bool | ParmUseCalibrationGet (bool &rUseCal)
| Fetch parameter whether to return calibrated results.
bool | ParmRangeSet (const sRange< uParm > &rRange)
| Set measurement range.
bool | ParmRangeGet (sRange< uParm > &rRange)
| Fetch currently selected measurement range.
bool | ParmRangeGet (sRange< sBoundedParm > &rRange)
| Fetch currently selected measurement range, incl. min/max/default.
bool | ReadFileDirectory (U32 &rUsedBytes, U32 &rAvailableBytes, tFileList &rFileList)
| Read the instrument's file directory information.
bool | ReadFile (std::string Path, std::string &rContent)
| Read a file from the instrument's file system.
bool | Initiate (bool Continuous=false)
| Initiate measurements.
bool | Abort (void)
| Abort a measurement in progress.
bool | SendBusTrigger ()
| Send a USB bus trigger.
bool | MeasurementsGet (U32 NoMeasurements, CFluxList &rBx, CFluxList &rBy, CFluxList &rBz, eUnits &rUnits, U16 &rTemp, CTimestampList &rTimestampList, sMeasurementConditions *pMeasurementConditions=NULL)
| Retrieve measurements: short form.
bool | MeasurementsGet (sArbitraryMeasurements ArbSelect, CFluxList &rBx, CFluxList &rBy, CFluxList &rBz, eUnits &rUnits, U16 &rTemp, CTimestampList &rTimestampList, sMeasurementConditions *pMeasurementConditions=NULL)
| Retrieve measurements: long form.
bool | SetFormat (eCommunicationFormat Format)
| Select whether data is returned as text or binary.
bool | GetFormat (eCommunicationFormat &Format)
| Retrieve whether data is returned as text or binary.
bool | Measure (tFlux &rBx, tFlux &rBy, tFlux &rBz, bool DefaultParms=true, eUnits Units=kT, tFlux ExpectedField=0., unsigned int NoDigits=0)
| High-level measurement: single measurement.
bool | Measure (CFluxList &rBx, CFluxList &rBy, CFluxList &rBz, unsigned int NoMeasurements=1, bool DefaultParms=true, eUnits Units=kT, tFlux ExpectedField=0., unsigned int NoDigits=0)
| High-level measurement: multiple measurements.
bool | StatusPreset ()
| Reset OPERation and QUEStionable enable registers.
bool | StatusGet (sStatusRegister Reg, U16 &rStatus)
| Fetch current value of a single status register.
bool | StatusGet (RegisterList Regs, StatusValues &rStatus)
| Fetch current values of a list of status registers.
bool | StatusSetEnableRegister (eStatusRegisterSet Set, U16 DisableMask, U16 EnableMask)
| Disable and enable bits in the given enable register.
bool | WriteAndRead (const std::string &rWriteStr, CSCPIBuffer &rReadBuffer)
| Write an arbitrary command and read the result.
bool | GetIdentification (std::string &rIdentification)
| Fetch the intrument's identification string.
bool | GetIdentification (sIdentifier &rIdentification)
| Fetch the intrument's parsed identification string.
bool | GetAllRanges (CFluxList &rRanges)
| Fetch all the intrument's ranges.
bool | ConvertTimestamp (const U64 RawTimestamp, CAbsoluteTimestamp &rTimestamp)
| Convert a raw timestamp to UNIX Epoch time and nanoseconds.
bool | GetAllUnits (CUnitsList &rUnits)
| Fetch all units supported by instrument.
bool | GetDivisor (eUnits Units, U32 &rDivisor)
| Fetch divisor to convert instrument's base units to given units.
bool | GetRotationMatrix (Matrix3f &Matrix)
| Fetch the intrument's rotation matrix, to correct angular error.
bool | GetImmediateMeasurementPeriod (const sAveraging< uParm > &rAvg, eModelRevision modelRev, F64 &rPeriod)
| Compute measurement interval for Immediate Trigger, for a given averaging parameter.
bool | CalibrateZeroOffset (bool ForceCalibration=false)
| Perform the Zero Offset calibration procedure.
bool | RestoreZeroOffset ()
| Restore the factory values for the Zero Offset.
bool | Reset ()
| Reset the instrument to power-on configuration.
bool | SwitchToDFUMode ()
| Enter the Device Firmware Upgrade mode.
bool | ReadInformationDates (std::string &rSManufacturingDate, std::time_t &rManufacturingDate, std::string &rSCalibrationDate, std::time_t &rCalibrationDate)
| Fetch the intrument's date information.
bool | AbortRead ()
| Abort a read operation.

## Detailed Description

template<class InstrType, class RsrcMgrType>
class MTL::Instrument::CTHM1176Instrument< InstrType, RsrcMgrType >

THM1176 instrument class.

Abstraction of a Metrolab THM1176 Three-axis Hall Magnetometer or TFM1186 Three-axis Fluxgate Magnetometer.

Template Parameters

  InstrType | Instrument class to use for communication, e.g. CVISAInstrument or CUSBTMCInstrument
  RsrcMgrType | Associated Resource Manager, e.g. CVISAResourceManager or CUSBTMCResourceManager

Definition at line 97 of file THM1176.h.

## Constructor & Destructor Documentation

## ◆ CTHM1176Instrument()

template<class InstrType, class RsrcMgrType>

CTHM1176Instrument::CTHM1176Instrument | ( | RsrcMgrType & | rResourceManager,
|  | tResourceName | ResourceName )

Constructor.

Parameters

  [in] | rResourceManager | Resource Manager.
  [in] | ResourceName | Resource name.

Definition at line 828 of file THM1176.cpp.

## ◆ ~CTHM1176Instrument()

template<class InstrType, class RsrcMgrType>

CTHM1176Instrument::~CTHM1176Instrument | ( |  | ) |
| virtual

Destructor.

Definition at line 835 of file THM1176.cpp.

## Member Function Documentation

## ◆ Abort()

template<class InstrType, class RsrcMgrType>

bool CTHM1176Instrument::Abort | ( | void |  | ) |

Abort a measurement in progress.

Returns
  True if successful.

Definition at line 1479 of file THM1176.cpp.

## ◆ AbortRead()

template<class InstrType, class RsrcMgrType>

bool CTHM1176Instrument::AbortRead | ( |  | ) |

Abort a read operation.

Returns
  True if successful.

Note: This operation is nonoperational for instruments with firmware version 3.1 or below. It will cause your instrument to lock up.

Definition at line 2316 of file THM1176.cpp.

## ◆ CalibrateZeroOffset()

template<class InstrType, class RsrcMgrType>

bool CTHM1176Instrument::CalibrateZeroOffset | ( | bool | ForceCalibration = false | ) |

Perform the Zero Offset calibration procedure.

Parameters

  [in] | ForceCalibration | Override warnings about models that should not be calibrated

Returns
  True if successful.

Notes:

1. The instrument must be placed in a zero-gauss chamber.
2. Should not be performed on a TFM1186.

Definition at line 2107 of file THM1176.cpp.

## ◆ ClearErrorList()

template<class InstrType, class RsrcMgrType>

void CTHM1176Instrument::ClearErrorList | ( |  | ) |

Clear the error list.

Definition at line 854 of file THM1176.cpp.

## ◆ Connect()

template<class InstrType, class RsrcMgrType>

bool CTHM1176Instrument::Connect | ( | U32 | InitialTimeout,
|  | bool | Exclusive = true,
|  | std::string * | pErrMsg = nullptr )

Open the connection to the instrument.

Parameters

  [in] | InitialTimeout | Timeout on exclusive lock request.
  [in] | Exclusive | Whether or not to request an exclusive lock.
  [in] | pErrMsg | Optional error message.

Returns
  True if the connection was successful.

Definition at line 866 of file THM1176.cpp.

## ◆ ConvertTimestamp()

template<class InstrType, class RsrcMgrType>

bool MTL::Instrument::CTHM1176Instrument< InstrType, RsrcMgrType >::ConvertTimestamp | ( | const U64 | RawTimestamp,
|  | CAbsoluteTimestamp & | rTimestamp )
| inline

Convert a raw timestamp to UNIX Epoch time and nanoseconds.

Parameters

  [in] | RawTimestamp | Raw timestamp returned by instrument.
  [out] | rTimestamp | Timestamp as UNIX Epoch time and nanoseconds.

Returns
  True if successful.

Definition at line 427 of file THM1176.h.

## ◆ CurrentErrorList()

template<class InstrType, class RsrcMgrType>

const CErrorList & CTHM1176Instrument::CurrentErrorList | ( |  | ) |

Fetch current error list.

Returns
  List of errors.

Definition at line 848 of file THM1176.cpp.

## ◆ Disconnect()

template<class InstrType, class RsrcMgrType>

void CTHM1176Instrument::Disconnect | ( |  | ) |

Close the connection to the instrument.

Definition at line 933 of file THM1176.cpp.

## ◆ GetAllRanges()

template<class InstrType, class RsrcMgrType>

bool CTHM1176Instrument::GetAllRanges | ( | CFluxList & | rRanges | ) |

Fetch all the intrument's ranges.

Parameters

  [out] | rRanges | List of ranges.

Returns
  True if successful.

Definition at line 2030 of file THM1176.cpp.

## ◆ GetAllUnits()

template<class InstrType, class RsrcMgrType>

bool CTHM1176Instrument::GetAllUnits | ( | CUnitsList & | rUnits | ) |

Fetch all units supported by instrument.

Parameters

  [out] | rUnits | List of units.

Returns
  True if successful.

Definition at line 2042 of file THM1176.cpp.

## ◆ GetDivisor()

template<class InstrType, class RsrcMgrType>

bool CTHM1176Instrument::GetDivisor | ( | eUnits | Units,
|  | U32 & | rDivisor )

Fetch divisor to convert instrument's base units to given units.

Parameters

  [in] | Units | Units for which we want the divisor.
  [out] | rDivisor | The returned divisor; zero if error.

Returns
  True if successful.

Definition at line 2054 of file THM1176.cpp.

## ◆ GetFormat()

template<class InstrType, class RsrcMgrType>

bool CTHM1176Instrument::GetFormat | ( | eCommunicationFormat & | Format | ) |

Retrieve whether data is returned as text or binary.

Parameters

  [out] | Format | Text or binary.

Returns
  True if successful.

Definition at line 1736 of file THM1176.cpp.

## ◆ GetIdentification() [1/2]

template<class InstrType, class RsrcMgrType>

bool CTHM1176Instrument::GetIdentification | ( | sIdentifier & | rIdentification | ) |

Fetch the intrument's parsed identification string.

Parameters

  [out] | rIdentification | Returned identification string.

Returns
  True if successful.

Definition at line 2020 of file THM1176.cpp.

## ◆ GetIdentification() [2/2]

template<class InstrType, class RsrcMgrType>

bool CTHM1176Instrument::GetIdentification | ( | std::string & | rIdentification | ) |

Fetch the intrument's identification string.

Parameters

  [out] | rIdentification | Returned identification string.

Returns
  True if successful.

Definition at line 2010 of file THM1176.cpp.

## ◆ GetImmediateMeasurementPeriod()

template<class InstrType, class RsrcMgrType>

bool CTHM1176Instrument::GetImmediateMeasurementPeriod | ( | const sAveraging< uParm > & | rAvg,
|  | eModelRevision | modelRev,
|  | F64 & | rPeriod )

Compute measurement interval for Immediate Trigger, for a given averaging parameter.

Parameters

  [in] | rAvg | Averaging setting.
  [in] | modelRev | THM1176 Model: kA for THM1176-A. kB for THM1176-B.
  [out] | rPeriod | Corresponding measurement period, in s.

Returns
  True if successful.

Definition at line 2081 of file THM1176.cpp.

## ◆ GetRotationMatrix()

template<class InstrType, class RsrcMgrType>

bool CTHM1176Instrument::GetRotationMatrix | ( | Matrix3f & | Matrix | ) |

Fetch the intrument's rotation matrix, to correct angular error.

Parameters

  [out] | Matrix | The returned rotation matrix.

Returns
  True if successful.

Definition at line 2074 of file THM1176.cpp.

## ◆ Initiate()

template<class InstrType, class RsrcMgrType>

bool CTHM1176Instrument::Initiate | ( | bool | Continuous = false | ) |

Initiate measurements.

Parameters

  [in] | Continuous | Whether to measure continuously.

Returns
  True if successful.

Definition at line 1463 of file THM1176.cpp.

## ◆ Measure() [1/2]

template<class InstrType, class RsrcMgrType>

bool CTHM1176Instrument::Measure | ( | CFluxList & | rBx,
|  | CFluxList & | rBy,
|  | CFluxList & | rBz,
|  | unsigned int | NoMeasurements = 1,
|  | bool | DefaultParms = true,
|  | eUnits | Units = kT,
|  | tFlux | ExpectedField = 0.,
|  | unsigned int | NoDigits = 0 )

High-level measurement: multiple measurements.

Parameters

  [out] | rBx | Measured Bx values.
  [out] | rBy | Measured By values.
  [out] | rBz | Measured Bz values.
  [in] | NoMeasurements | Number of measurements.
  [in] | DefaultParms | Use default or currently selected parameters.
  [in] | Units | Measurement units.
  [in] | ExpectedField | Select range for this expected field.
  [in] | NoDigits | Number of digits to return.

Returns
  True if successful.

Definition at line 1831 of file THM1176.cpp.

## ◆ Measure() [2/2]

template<class InstrType, class RsrcMgrType>

bool CTHM1176Instrument::Measure | ( | tFlux & | rBx,
|  | tFlux & | rBy,
|  | tFlux & | rBz,
|  | bool | DefaultParms = true,
|  | eUnits | Units = kT,
|  | tFlux | ExpectedField = 0.,
|  | unsigned int | NoDigits = 0 )

High-level measurement: single measurement.

Parameters

  [out] | rBx | Measured Bx value.
  [out] | rBy | Measured By value.
  [out] | rBz | Measured Bz value.
  [in] | DefaultParms | Use default or currently selected parameters.
  [in] | Units | Measurement units.
  [in] | ExpectedField | Select range for this expected field.
  [in] | NoDigits | Number of digits to return.

Returns
  True if successful.

Definition at line 1773 of file THM1176.cpp.

## ◆ MeasurementsGet() [1/2]

template<class InstrType, class RsrcMgrType>

bool CTHM1176Instrument::MeasurementsGet | ( | sArbitraryMeasurements | ArbSelect,
|  | CFluxList & | rBx,
|  | CFluxList & | rBy,
|  | CFluxList & | rBz,
|  | eUnits & | rUnits,
|  | U16 & | rTemp,
|  | CTimestampList & | rTimestampList,
|  | sMeasurementConditions * | pMeasurementConditions = NULL )

Retrieve measurements: long form.

Parameters

  [in] | ArbSelect | Select which data to return, and how much.
  [out] | rBx | Measured Bx values; empty if not selected.
  [out] | rBy | Measured By values; empty if not selected.
  [out] | rBz | Measured Bz values; empty if not selected.
  [out] | rUnits | Units in which data is returned.
  [out] | rTemp | Returned temperature; zero if not selected.
  [out] | rTimestampList | Timestamp for each measurement; empty if not selected.
  [out] | pMeasurementConditions | Averaging, trigger and calibration parameters.

Returns
  True if successful.

Note: If pMeasurementConditions is NULL (the default), the measurement parameters are not returned.

Definition at line 1527 of file THM1176.cpp.

## ◆ MeasurementsGet() [2/2]

template<class InstrType, class RsrcMgrType>

bool CTHM1176Instrument::MeasurementsGet | ( | U32 | NoMeasurements,
|  | CFluxList & | rBx,
|  | CFluxList & | rBy,
|  | CFluxList & | rBz,
|  | eUnits & | rUnits,
|  | U16 & | rTemp,
|  | CTimestampList & | rTimestampList,
|  | sMeasurementConditions * | pMeasurementConditions = NULL )

Retrieve measurements: short form.

Parameters

  [in] | NoMeasurements | Number of measurements.
  [out] | rBx | Measured Bx values.
  [out] | rBy | Measured By values.
  [out] | rBz | Measured Bz values.
  [out] | rUnits | Units in which data is returned.
  [out] | rTemp | Returned temperature.
  [out] | rTimestampList | Timestamp for each measurement.
  [out] | pMeasurementConditions | Averaging, trigger and calibration parameters.

Returns
  True if successful.

Note: If pMeasurementConditions is NULL (the default), the measurement parameters are not returned.

Definition at line 1507 of file THM1176.cpp.

## ◆ ParmAveragingGet() [1/2]

template<class InstrType, class RsrcMgrType>

bool CTHM1176Instrument::ParmAveragingGet | ( | sAveraging< sBoundedParm > & | rAvg | ) |

Fetch current averaging parameter, incl. min/max/default.

Parameters

  [out] | rAvg | Averaging parameters, incl. min/max/default.

Returns
  True if successful.

Definition at line 980 of file THM1176.cpp.

## ◆ ParmAveragingGet() [2/2]

template<class InstrType, class RsrcMgrType>

bool CTHM1176Instrument::ParmAveragingGet | ( | sAveraging< uParm > & | rAvg | ) |

Fetch the currently selected averaging parameter.

Parameters

  [out] | rAvg | Current averaging parameters.

Returns
  True if successful.

Definition at line 958 of file THM1176.cpp.

## ◆ ParmAveragingSet()

template<class InstrType, class RsrcMgrType>

bool CTHM1176Instrument::ParmAveragingSet | ( | const sAveraging< uParm > & | rAvg | ) |

Set the averaging parameter.

Parameters

  [in] | rAvg | Desired averaging setting.

Returns
  True if successful.

Definition at line 946 of file THM1176.cpp.

## ◆ ParmRangeGet() [1/2]

template<class InstrType, class RsrcMgrType>

bool CTHM1176Instrument::ParmRangeGet | ( | sRange< sBoundedParm > & | rRange | ) |

Fetch currently selected measurement range, incl. min/max/default.

Parameters

  [out] | rRange | Measurement range, incl. min/max/default.

Returns
  True if successful.

Definition at line 1301 of file THM1176.cpp.

## ◆ ParmRangeGet() [2/2]

template<class InstrType, class RsrcMgrType>

bool CTHM1176Instrument::ParmRangeGet | ( | sRange< uParm > & | rRange | ) |

Fetch currently selected measurement range.

Parameters

  [out] | rRange | Measurement range.

Returns
  True if successful.

Definition at line 1263 of file THM1176.cpp.

## ◆ ParmRangeSet()

template<class InstrType, class RsrcMgrType>

bool CTHM1176Instrument::ParmRangeSet | ( | const sRange< uParm > & | rRange | ) |

Set measurement range.

Parameters

  [in] | rRange | Desired measurement range.

Returns
  True if successful.

Definition at line 1237 of file THM1176.cpp.

## ◆ ParmSleepGet()

template<class InstrType, class RsrcMgrType>

bool CTHM1176Instrument::ParmSleepGet | ( | bool & | rSleep | ) |

Fetch parameter whether to sleep after each acquisition.

Parameters

  [out] | rSleep | Whether or not to sleep.

Returns
  True if successful.

Definition at line 1020 of file THM1176.cpp.

## ◆ ParmSleepSet()

template<class InstrType, class RsrcMgrType>

bool CTHM1176Instrument::ParmSleepSet | ( | bool | Sleep | ) |

Set parameter whether to sleep after each acquisition.

Parameters

  [in] | Sleep | Whether or not to sleep.

Returns
  True if successful.

Definition at line 1010 of file THM1176.cpp.

## ◆ ParmTriggerInputGet() [1/2]

template<class InstrType, class RsrcMgrType>

bool CTHM1176Instrument::ParmTriggerInputGet | ( | sInputTrigger< sBoundedParm > & | rInputTrig | ) |

Fetch current trigger input parameters, incl. min/max/default.

Parameters

  [out] | rInputTrig | Trigger input parameters, incl. min/max/default.

Returns
  True if successful.

Definition at line 1113 of file THM1176.cpp.

## ◆ ParmTriggerInputGet() [2/2]

template<class InstrType, class RsrcMgrType>

bool CTHM1176Instrument::ParmTriggerInputGet | ( | sInputTrigger< uParm > & | rInputTrig | ) |

Fetch current trigger input parameters.

Parameters

  [out] | rInputTrig | Trigger input parameters.

Returns
  True if successful.

Definition at line 1068 of file THM1176.cpp.

## ◆ ParmTriggerInputSet()

template<class InstrType, class RsrcMgrType>

bool CTHM1176Instrument::ParmTriggerInputSet | ( | const sInputTrigger< uParm > & | rInputTrig | ) |

Set trigger input parameters.

Parameters

  [in] | rInputTrig | Trigger input parameters.

Returns
  True if successful.

Definition at line 1030 of file THM1176.cpp.

## ◆ ParmUnitsGet()

template<class InstrType, class RsrcMgrType>

bool CTHM1176Instrument::ParmUnitsGet | ( | eUnits & | rUnits | ) |

Fetch currently selected measurement units.

Parameters

  [out] | rUnits | Measurement units.

Returns
  True if successful.

Definition at line 1186 of file THM1176.cpp.

## ◆ ParmUnitsSet()

template<class InstrType, class RsrcMgrType>

bool CTHM1176Instrument::ParmUnitsSet | ( | eUnits | Units | ) |

Set measurement units.

Parameters

  [in] | Units | Measurement units.

Returns
  True if successful.

Definition at line 1164 of file THM1176.cpp.

## ◆ ParmUseCalibrationGet()

template<class InstrType, class RsrcMgrType>

bool CTHM1176Instrument::ParmUseCalibrationGet | ( | bool & | rUseCal | ) |

Fetch parameter whether to return calibrated results.

Parameters

  [out] | rUseCal | Whether to return calibrated results.

Returns
  True if successful.

Definition at line 1227 of file THM1176.cpp.

## ◆ ParmUseCalibrationSet()

template<class InstrType, class RsrcMgrType>

bool CTHM1176Instrument::ParmUseCalibrationSet | ( | bool | UseCal | ) |

Set whether to return calibrated results.

Parameters

  [in] | UseCal | Whether to return calibrated results.

Returns
  True if successful.

Definition at line 1210 of file THM1176.cpp.

## ◆ ReadFile()

template<class InstrType, class RsrcMgrType>

bool CTHM1176Instrument::ReadFile | ( | std::string | Path,
|  | std::string & | rContent )

Read a file from the instrument's file system.

Parameters

  [in] | Path | Path of file to be read.
  [out] | rContent | Contents of file.

Returns
  True if successful.

Definition at line 1419 of file THM1176.cpp.

## ◆ ReadFileDirectory()

template<class InstrType, class RsrcMgrType>

bool CTHM1176Instrument::ReadFileDirectory | ( | U32 & | rUsedBytes,
|  | U32 & | rAvailableBytes,
|  | tFileList & | rFileList )

Read the instrument's file directory information.

Parameters

  [out] | rUsedBytes | Number of bytes occupied by files.
  [out] | rAvailableBytes | Number of bytes still available.
  [out] | rFileList | List of files.

Returns
  True if successful.

Definition at line 1354 of file THM1176.cpp.

## ◆ ReadInformationDates()

template<class InstrType, class RsrcMgrType>

bool CTHM1176Instrument::ReadInformationDates | ( | std::string & | rSManufacturingDate,
|  | std::time_t & | rManufacturingDate,
|  | std::string & | rSCalibrationDate,
|  | std::time_t & | rCalibrationDate )

Fetch the intrument's date information.

Parameters

  [out] | rSManufacturingDate | Manufacturing date as string.
  [out] | rManufacturingDate | Manufacturing date as time structure.
  [out] | rSCalibrationDate | Calibration date as string.
  [out] | rCalibrationDate | Calibration date as time structure.

Returns
  True if successful.

Definition at line 2261 of file THM1176.cpp.

## ◆ Reset()

template<class InstrType, class RsrcMgrType>

bool CTHM1176Instrument::Reset | ( |  | ) |

Reset the instrument to power-on configuration.

Returns
  True if successful.

Definition at line 2198 of file THM1176.cpp.

## ◆ RestoreZeroOffset()

template<class InstrType, class RsrcMgrType>

bool CTHM1176Instrument::RestoreZeroOffset | ( |  | ) |

Restore the factory values for the Zero Offset.

Returns
  True if successful.

Definition at line 2167 of file THM1176.cpp.

## ◆ SendBusTrigger()

template<class InstrType, class RsrcMgrType>

bool CTHM1176Instrument::SendBusTrigger | ( |  | ) |

Send a USB bus trigger.

Returns
  True if successful.

Definition at line 1488 of file THM1176.cpp.

## ◆ SetFormat()

template<class InstrType, class RsrcMgrType>

bool CTHM1176Instrument::SetFormat | ( | eCommunicationFormat | Format | ) |

Select whether data is returned as text or binary.

Parameters

  [in] | Format | Select text or binary.

Returns
  True if successful.

Definition at line 1699 of file THM1176.cpp.

## ◆ StatusGet() [1/2]

template<class InstrType, class RsrcMgrType>

bool CTHM1176Instrument::StatusGet | ( | RegisterList | Regs,
|  | StatusValues & | rStatus )

Fetch current values of a list of status registers.

Parameters

  [in] | Regs | Registers to fetch.
  [out] | rStatus | Register values; zero if error.

Returns
  True if successful.

Definition at line 1929 of file THM1176.cpp.

## ◆ StatusGet() [2/2]

template<class InstrType, class RsrcMgrType>

bool CTHM1176Instrument::StatusGet | ( | sStatusRegister | Reg,
|  | U16 & | rStatus )

Fetch current value of a single status register.

Parameters

  [in] | Reg | Register to fetch.
  [out] | rStatus | Register value; zero if error.

Returns
  True if successful.

Definition at line 1899 of file THM1176.cpp.

## ◆ StatusPreset()

template<class InstrType, class RsrcMgrType>

bool CTHM1176Instrument::StatusPreset | ( |  | ) |

Reset OPERation and QUEStionable enable registers.

Returns
  True if successful.

Definition at line 1890 of file THM1176.cpp.

## ◆ StatusSetEnableRegister()

template<class InstrType, class RsrcMgrType>

bool CTHM1176Instrument::StatusSetEnableRegister | ( | eStatusRegisterSet | Set,
|  | U16 | DisableMask,
|  | U16 | EnableMask )

Disable and enable bits in the given enable register.

Parameters

  [in] | Set | Register set whose enable register is to be modified.
  [in] | DisableMask | Bits to be disabled.
  [in] | EnableMask | Bits to be enabled.

Returns
  True if successful.

Note: The DisableMask is applied before the EnableMask, so the EnableMask takes precedence.

Definition at line 1974 of file THM1176.cpp.

## ◆ SwitchToDFUMode()

template<class InstrType, class RsrcMgrType>

bool CTHM1176Instrument::SwitchToDFUMode | ( |  | ) |

Enter the Device Firmware Upgrade mode.

Returns
  True if successful.

Note: This function is intended for use by the manufacturer only. It can cause your instrument to become nonoperational.

Definition at line 2251 of file THM1176.cpp.

## ◆ WriteAndRead()

template<class InstrType, class RsrcMgrType>

bool CTHM1176Instrument::WriteAndRead | ( | const std::string & | rWriteStr,
|  | CSCPIBuffer & | rReadBuffer )

Write an arbitrary command and read the result.

Parameters

  [in] | rWriteStr | Command to write.
  [out] | rReadBuffer | Returned result.

Returns
  True if successful.

Definition at line 324 of file THM1176.cpp.

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

- THM1176InstrumentDriver/include/THM1176.h
- THM1176InstrumentDriver/src/THM1176.cpp